1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17<!doctype html> 18<html class="no-js supports-no-cookies" lang="en"> 19 20 <head> 21 22
22<script type="text/javascript" async src="https://na.shgcdn3.com/pixel-collector.js"></script>
22 23<!--LOOMI SDK--> 24<!--DO NOT EDIT--> 25<link rel="preconnect" href="https://live.visually-io.com" crossorigin data-em-disable> 26<link rel="dns-prefetch" href="https://live.visually-io.com" data-em-disable>
27<script type="text/javascript" data-em-disable data-vsly> 28 (()=> { 29 const env = 2; 30 var store = "timbuk2-us.myshopify.com"; 31 var alias = store.replace(".myshopify.com", "").replaceAll("-", "_").toUpperCase(); 32 var jitsuKey = "js.25729458"; 33 var themeId = 149940240426; 34 var role = "main"; 35 window.loomi_ctx = {...(window.loomi_ctx || {}),storeAlias:alias,jitsuKey,env,themeId,role}; 36 37 38 39 40 var product = {}; 41 var variants = []; 42 43 variants.push({id:43806284480554,policy:"deny",price:34500,iq:1466}); 44 45 variants.push({id:43806284513322,policy:"deny",price:34500,iq:301}); 46 47 variants.push({id:43806284546090,policy:"deny",price:34500,iq:363}); 48 49 variants.push({id:43806284578858,policy:"deny",price:34500,iq:252}); 50 51 variants.push({id:43806284611626,policy:"deny",price:34500,iq:122}); 52 53 variants.push({id:43806284644394,policy:"deny",price:34500,iq:246}); 54 55 product.variants = variants; 56 product.oos = !true; 57 product.price = 34500 ; 58 window.loomi_ctx.current_product=product; 59 window.loomi_ctx.productId=7735073144874; 60 window.loomi_ctx.variantId = 43806284480554; 61 62 63 window.loomi_ctx.blockingConcent = false; 64 loomi_ctx.ttl=1793507290; 65 66 })() 67</script>
vendor: 1 bytes, line 67
67
68<script type="text/javascript" data-em-disable> 69 !function(){var e,t,n;!function(e){e.JSCondition="jsCondition",e.JSFunction="jsFunction",e.JSEvent="jsEvent",e.Selector="selector",e.ElementEvent="elementEvent",e.PageLoad="pageLoad",e.Timeout="timeout",e.Inactivity="inactivity",e.ExitIntent="exitIntent",e.Conjunction="conjunction"}(e||(e={})),function(e){e[e.PAUSED=4]="PAUSED"}(t||(t={})),function(e){e[e.LOCAL=0]="LOCAL",e[e.STAGE=1]="STAGE",e[e.PROD=2]="PROD",e[e.TEST=3]="TEST"}(n||(n={}));const r="lmi_preview";var o;!function(e){e.USE_CASE="USE_CASE",e.ADD_TO_CART="ADD_TO_CART"}(o||(o={}));const i=function(e){void 0===e&&(e=()=>window);try{return Promise.resolve(v(()=>void 0!==_(()=>e().removeEventListener),100,100)).then(function(){return Promise.resolve()})}catch(e){return Promise.reject(e)}},s=function(e,t){void 0===e&&(e=()=>window),void 0===t&&(t=!1);try{function n(){return Promise.resolve()}const r=t&&a()?Promise.resolve(v(()=>c,1e3,10)).then(function(){}):Promise.resolve(v(()=>void 0!==_(()=>e().addEventListener),10,1e3)).then(function(){});return Promise.resolve(r&&r.then?r.then(n):n())}catch(o){return Promise.reject(o)}};let c=!1;function a(){return!0===_(()=>window.vslyDeferResources)}function u(e,t){void 0===t&&(t=20);let n=0;return function(){clearTimeout(n),n=setTimeout(()=>e(...[].slice.call(arguments)),t)}}window.addEventListener("load",()=>{setTimeout(()=>{c=!0},2e3)});const l="vsly-hide-theme-preview",d="vslyCtags",m=()=>{_(()=>{const e=window.loomi_ctx.ctags||[];0===e.length?window.loomi_ctx.ctags=JSON.parse(localStorage.getItem(d)||"[]"):localStorage.setItem(d,JSON.stringify(e)),_(()=>{const e=JSON.parse(localStorage.getItem("vslyCustomCtags")||"[]");e&&e.length>0&&(window.loomi_ctx.ctags=[...window.loomi_ctx.ctags||[],...e])})})},f=()=>new Date(1e3*Math.floor(Date.now()/1e3));function h(e,t){void 0===t&&(t={async:!1,defer:!1});const n=_(()=>window.visually.flags["bunny-cdn"]),r=A();return p(`vsly-lib-${e}`,`https://${n?"assets.visually.io":r}/vsly/lib/${e}.js`,t)}function p(e,t,n){return void 0===n&&(n={async:!1,defer:!1}),new Promise((r,o)=>{let i=document.getElementById(e);i?r(document.getElementById(e)):(i=document.createElement("script"),i.id=e,i.src=t,i.async=n.async||!1,i.defer=n.defer||!1,i.setAttribute("data-em-disable",""),i.onload=()=>r(i),i.onerror=()=>o(new Error(`Failed to load ${t}`)),document.head.appendChild(i))})}function v(e,t,n,r){return void 0===t&&(t=500),void 0===n&&(n=4),new Promise((o,i)=>{e()?o(0):0!==n?setTimeout(()=>{r&&r()&&i(`condition rejected ${_(()=>e.toString())}`),v(e,t,n-1).then(o).catch(i)},t):i(`condition rejected ${_(()=>e.toString())}`)})}function w(e,t){void 0===t&&(t=500);const n=_(()=>window.visually_io_editor)?Date.now()+1e4:Infinity;function r(o){try{const i=e();i?o(i):Date.now()>=n?o(void 0):setTimeout(()=>r(o),t)}catch(e){console.error("vsly-when",e),Date.now()>=n?o(void 0):setTimeout(()=>r(o),t)}}return new Promise(e=>{r(e)})}function y(e){return!Array.isArray(e)||0===e.length}function g(e){return btoa(unescape(encodeURIComponent(JSON.stringify(e))))}function _(e,t){void 0===t&&(t=void 0);try{return e()}catch{return t}}const S=e=>e&&decodeURIComponent(document.cookie.replace(new RegExp("(?:(?:^|.*;)\\s*"+encodeURIComponent(e).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"))||null;function E(){const e=window.loomi_ctx?.clientId;return e?(window.localStorage.setItem("vsly__st",String(e)),String(e)):window.localStorage.getItem("vsly__st")}function P(e,t,n){void 0===t&&(t=5),void 0===n&&(n=500),t>=0&&!_(e)&&setTimeout(()=>{_(e)||P(e,t-1)},n)}const A=function(e){return void 0===e&&(e=window.loomi_ctx.env),e===n.STAGE?"sdk.loomi-stg.xyz":"live.visually-io.com"};function I(e){return e.replace(/[^a-z_A-Z0-9]/gi,"_")}const b=()=>!!_(()=>x()()),x=()=>_(()=>window.Shopify.customerPrivacy.analyticsProcessingAllowed)||_(()=>window.Shopify.customerPrivacy.userCanBeTracked)||_(()=>window.visually.analyticsProcessingAllowed);function C(){const e=function(){try{return Promise.resolve(v(()=>!!_(()=>window.loomi.jitsu),a()?1e3:500,120)).then(function(){return _(()=>window.loomi.jitsu)})}catch(e){return Promise.reject(e)}}();return{register(t,n,r,o){e.then(e=>_(()=>e.register(t,n,r,o)))},track:function(t,n,r){return Promise.resolve(e).then(function(e){return Promise.resolve(_(()=>e.track(t,n,r))).then(function(){})})},trackExt:function(t,n){return Promise.resolve(e).then(function(e){return Promise.resolve(_(()=>e.trackExt(t,n))).then(function(){})})}}}let k=!1,T=!1;function N(e,t,n){return{id:T?"lmi-000":"lmi-"+ ++j,isApplied:!1,kind:e,selector:t,value:n}}function O(e,t){let n,r=!1;return null!==e.previousElementSibling?n=e.previousElementSibling:(n=e.parentElement,r=!0),n?(e.outerHTML=t,r?n.firstElementChild:n.nextElementSibling):e}let j=Math.round(1e4*Math.random()),L=[],$=new Map;const R="lmid",D="lmwv";function U(){return!!_(()=>window.vsly_fbs)}function M(){return window.location.search.includes("lmi_debug")||U()}function q(){M()&&console.debug("loomi-editor",...[].slice.call(arguments))}function F(){M()&&console.error("loomi-editor",...[].slice.call(arguments))}let B=!0,J={};class V{constructor(e,t){this._value=void 0,this._addedAt=void 0,this._value=e,this._addedAt=t||(new Date).getTime()}value(){return this._value}addedAt(){return this._addedAt}}class H{constructor(e,t){this.backend=void 0,this.ttlMillis=void 0,this.backend=e,this.ttlMillis=t}isValid(e){return!!e&&(new Date).getTime()-e.addedAt()<=this.ttlMillis}get(e){const t=this.backend.get(e),n=this.isValid(t);if(t&&n)return t.value();n||this.backend.remove(e)}set(e,t,n){const r=new V(t,n);this.backend.set(e,r)}}class G{constructor(e){this.namespace=void 0,this.namespace=`vsly_cache_${e}`,window[this.namespace]={}}get(e){return _(()=>window[this.namespace][e])}remove(e){_(()=>delete window[this.namespace][e])}set(e,t){window[this.namespace][e]=t}}class z{constructor(e){this.namespace=void 0,this.namespace=`vsly_cache_${e}`}get(e){return _(()=>{const t=sessionStorage.getItem(`${this.namespace}_${e}`);if(!t)return;const n=JSON.parse(t);return new V(n._value,n._addedAt)})}remove(e){sessionStorage.removeItem(`${this.namespace}_${e}`)}set(e,t){sessionStorage.setItem(`${this.namespace}_${e}`,JSON.stringify(t))}}class K extends H{constructor(e,t){super(new G(e),t)}}const W=function(e,t){void 0===t&&(t=8397271938200529);let n=3735928559^t,r=1103547991^t;for(let t,o=0;o<e.length;
69o++)t=e.charCodeAt(o),n=Math.imul(n^t,2654435761),r=Math.imul(r^t,1597334677);return n=Math.imul(n^n>>>16,2246822507)^Math.imul(r^r>>>13,3266489909),r=Math.imul(r^r>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),`${4294967296*(2097151&r)+(n>>>0)}`},Q="targeting-changed",Y="vslyThemeTest",Z="0891c521a9aa47c6a9fd965198b7ed44",X="_203";function ee(e,t,n,r,o){void 0===n&&(n=10),void 0===r&&(r=!1),void 0===o&&(o="none");const{_USE_CASE:i,_USE_CASE_VARIANT:s,_USE_CASE_AUDIENCES:c,_USE_CASE_VERSION:a,_USE_CASE_GA_VARIANT:u,_USE_CASE_GA:l}=e;if(U()||ie())return;if(!function(e){try{const t=location.pathname,n=new URL(e);if(location.search.includes("vsly-redirected-from"))return!1;if(!0===_(()=>window.visually.flags["sdk-kill-advanced-redirect-checks"]))return!0;{let e=!1;const r=decodeURIComponent(location.search);return n.searchParams.forEach((t,n)=>{const o=decodeURIComponent(`${n}=${t}`);r.includes(o)||(e=!0)}),!!((_(()=>Array.from(n.searchParams.values()).length)||0)>0&&e)||t!==n.pathname}}catch(e){return!1}}(t))return;if(!function(e,t,n){const r=`vsly-redirect-${W(`${n._USE_CASE}-${n._USE_CASE_VARIANT}-${n._USE_CASE_VERSION}-${e}`)}`;return"session"===t?"true"!==sessionStorage.getItem(r)&&(sessionStorage.setItem(r,"true"),!0):"user"!==t||"true"!==localStorage.getItem(r)&&(localStorage.setItem(r,"true"),!0)}(t,o,e))return;h();const d=`${i}-${s}`,m={type:"USE_CASE",ts:f().valueOf(),payload:{sid:_(()=>window.loomi_ctx.session.id),user:{anonymous_id:_(()=>window.loomi_ctx.userId)},use_case:i,use_case_variant:s,...a?{version:a}:{},...c?{audiences:c}:{}},options:{gaName:_(()=>I(l)),gaVariant:_(()=>I(u))}};function h(){document.body&&(document.body.style.opacity=0)}_(()=>{ce(i)&&(m.payload.clickId="redirect",m.options.isRedirect=!0)}),window.vsly_redirecting=!0,setTimeout(function(){try{h();const e=JSON.stringify(m),n=g(m),o=!d.includes(re);let i=t;try{new URLSearchParams(location.search).forEach((e,t)=>{(r||oe(t))&&(i=te(i,t,e))})}catch(t){q("e87",{redirectUrl:i,key:d,event:e,ex:t})}return i=te(i,"vsly-redirected-from",d),o&&(i=te(i,"vsly-redirected-event",n)),location.replace&&location.replace(i),Promise.resolve()}catch(e){return Promise.reject(e)}},n)}function te(e,t,n){try{const r=new URL(e);return r.searchParams.append(t,n),r.href}catch(t){return`${e}${e.includes("?")?"&":"?"}key=${n}`}}function ne(e){return{_USE_CASE:e.experienceId,_USE_CASE_VARIANT:e.variantId,_USE_CASE_VERSION:e.version,_USE_CASE_AUDIENCES:_(()=>window.loomi_ctx.audiences.join("|"),""),_USE_CASE_GA:e.gaExperienceName,_USE_CASE_GA_VARIANT:e.gaVariantName}}const re="theme_test_redirect_back_to_main",oe=e=>e.toLowerCase().startsWith("utm");function ie(){return _(()=>window.Shopify.designMode,!1)}function se(){return _(()=>window.Shopify.country)||_(()=>window.visually.country)}const ce=e=>window.loomi.conf.experiments.find(t=>t.name===e).isRedirect,ae=(e,t)=>{_(()=>!0===window.visually.flags["sdk-disable-dynamic-height-strategy"],!1)||e&&function(e,t,n){let r=e,o=0;for(;r.parentElement&&o<10;)n(r.parentElement),r=r.parentElement,o+=1}(e,0,e=>{const t=e.style.height;var n;(n=t)&&""!==n&&(e.style.removeProperty("height"),e.style.minHeight=t)})};function ue(e,t,n,r){if(!document.body.contains(r)){const r=document.querySelector(n);return r?(t(),e(),{element:r,isDetached:!0}):{isDetached:!1}}return{isDetached:!1}}function le(e){if(!_(()=>window.visually.flags["visibility-redo"]))return document.querySelector(e);const t=document.querySelectorAll(e);for(let e=0;e<t.length;e++){const n=t.item(e);if(de(n))return n}return _(()=>t[0])}function de(e){try{if(!_(()=>window.visually.flags["visibility-redo"]))return!0;if(!e)return!1;const t=e.getBoundingClientRect(),n=getComputedStyle(e);return!_(()=>"none"==n.display||"0"==n.opacity||"hidden"==n.visibility||t.width<=5&&t.height<=5||"none"==e.style.display||"0"==e.style.opacity||"hidden"==e.style.visibility)}catch(e){return!0}}function me(e){return _(()=>window.visually.flags[e],!1)}function fe(){return _(()=>!0===window.vslyDeferWidgets||me("sdk-defer-widgets"),!1)}const he="visually",pe="widgets";let ve;function we(e,t){const n=e+t,r=`vslyw-${n}`;if(!document.getElementById(r)){const e=document.createElement("script");e.id=r,e.type="text/javascript";
69const t=_(()=>window.visually.flags["bunny-cdn"]),o=A();e.src=`https://${t?"assets.visually.io":o}/widgets/${n}.js`,document.head.appendChild(e)}}window.IntersectionObserver&&(ve=new IntersectionObserver((e,t)=>{e.forEach(e=>{if(e.isIntersecting){const n=e.target;(function(e){const t=e.getAttribute("lmw"),n=e.getAttribute(D);if(t&&n){const r=t+n;return v(()=>_(()=>!!window[he][pe][r])&&_(()=>!!window.preact),50,500).then(()=>{_(()=>window[he][pe][r](`#${e.id}`))}),!0}return!1})(n)&&t.unobserve(n)}})},{root:null,rootMargin:window.vslyDeferWidgetsMargin||"100px",threshold:.1}));const ye="vsly-orig-sel";function ge(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}const _e=function(e){try{return Promise.resolve(ge(function(){return Promise.resolve(v(()=>!!_(()=>document.querySelector(e)),250,100)).then(function(){return Promise.resolve(document.querySelector(e))})},function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}};function Se(e,t,n){const r=t.extra;return n&&n>=3?void 0!==r&&!!_(()=>e.childNodes[r]):!!r&&!!_(()=>e.childNodes[r])}function Ee(e,t,n){void 0===n&&(n=10),me("kill-theme-testing")||Pe(t)||(Ae(e,t),ee(e,Ie(t).href,n,!0,"session"))}const Pe=e=>{if(xe())return!0;_(function(){try{return Promise.resolve(v(()=>!!document&&!!document.head,10,2e3)).then(function(){const e=document.head||document.getElementsByTagName("head")[0];if(!e.querySelector(`#${l}`)){const t=document.createElement("style");t.id=l,t.appendChild(document.createTextNode("#preview-bar-iframe,#PBarNextFrameWrapper,#PBarNextFrame { display: none !important;}")),e.appendChild(t)}})}catch(e){return Promise.reject(e)}});const t=window.loomi_ctx.themeId||_(()=>window.Shopify.theme.id),n=window.loomi_ctx.role||_(()=>window.Shopify.theme.role),r=!Ne({id:t,role:n}),o=_(()=>!window.loomi_ctx.testedThemes.includes(t));return!(!r||!o)||Te({id:t,role:n},e)},Ae=(e,t)=>{const n=e._USE_CASE!==re;Le(t)&&n&&[sessionStorage,localStorage].forEach(e=>Oe(e))},Ie=e=>{let t=Re();return _(()=>!!window.loomi_api.vslyResolveThemeTestUrl)&&(t=_(()=>window.loomi_api.vslyResolveThemeTestUrl(t),t)),t.searchParams.append("preview_theme_id",`${e||""}`),t},be=()=>{const e="vsly-tts";if($e(e)||De(e))return;ke();const t=Ie("");t.searchParams.append(e,"1"),sessionStorage.setItem(e,`${f().valueOf()}`),document.body.style.opacity=0,location.replace(t.href)},xe=()=>
69{const e="vsly_disableThemeTest",t=$e("disableThemeTest")||!!sessionStorage.getItem(e);return t&&sessionStorage.setItem(e,"1"),ie()||t},Ce=()=>0===(window.loomi_ctx.embeddedTests||[]).filter(e=>e.experiment.isThemeTest).length,ke=()=>[sessionStorage,localStorage].forEach(e=>e.removeItem(Y)),Te=(e,t)=>e.id===t||Ne(e)&&!t,Ne=e=>"main"===e.role,Oe=e=>e.setItem(Y,"1"),je=e=>e.getItem(Y),Le=e=>!!e,$e=e=>_(()=>Re().searchParams.has(e)),Re=()=>_(()=>new URL(window.location.href)),De=e=>{const t=sessionStorage.getItem(e);if(t){const e=f().valueOf()-Number(t);return Number.isFinite(e)&&e<864e5}return t},Ue="data-rid",Me="data-alchemy-element-root";let qe,Fe=0;function Be(e){return e.hasAttribute(Ue)||e.hasAttribute(Me)}const Je=function(e,t){try{return Promise.resolve(v(()=>!!document&&!!document.body&&!!document.querySelector,50,200)).then(function(){!function(){if("undefined"==typeof document)return;Ve||(Ve=new MutationObserver(He)),He();const e="spa"===_(()=>window.vslyIntegrationType,"static")?document:document.body;Ve.observe(e,{childList:!0,subtree:!0,characterData:!0,attributes:!1})}(),e&&(k=e),t&&(T=t)})}catch(e){return Promise.reject(e)}};let Ve;function He(){L.filter(e=>!e.isApplied).forEach(e=>{try{const t=_(()=>document.body.querySelector(e.selector));if(!t)return void function(e,t,n,r,o){void 0===r&&(r=100),void 0===o&&(o=10);const i=!!t,s=_(()=>J[e])||0;!i&&B&&s<o&&(B=!1,J[e]=(_(()=>J[e])||0)+1,setTimeout(()=>{try{n()}catch(t){F("failed to run setTimeout on refreshAllElementsSets",e,t)}B=!0},r+50*s))}(e.selector,t,He,100,10);if($.has(e.id))return;if(function(e,t){if(e&&(void 0===qe&&(qe=!!document.querySelector(`[${Me}],[${Ue}]`)),qe)&&function(e){return["replace","appendBefore","appendAfter","compound","widget","moveElem"].includes(e.kind)}(t))for(let t=e;t;t=t.parentElement)if(Be(t))return!0;return!1}(t,e)&&!function(){if(U())return!0;const e=window.vslyHydrationSize||1,t=!!window.elementIdToRuntimeInitialized&&Object.values(window.elementIdToRuntimeInitialized).length>=e;t&&0===Fe&&(Fe=Date.now());const n=Date.now()-Fe,r=window.vslyHydrationGrace||500;return t&&n>r}())return;const n=Ge(e,t);n&&($.set(e.id,n),e.isApplied=!0)}catch(t){!function(){M()&&console.warn("loomi-editor",...[].slice.call(arguments))}("failed to resolve command from mutation request with exception.",t,e)}}),Ke()}function Ge(e,t){if("replace"===e.kind)return function(e,t,n,r,o){let i=o||e,s=!1;const c=n.outerHTML;return{id:e,isApplied:()=>s,kind:"replace",do:()=>{s||(k&&n.setAttribute(R,i),n.outerHTML!==r&&(n=O(n,r),ae(n),k&&n.setAttribute(R,i),s=!0))},undo:()=>{s&&n.outerHTML!==c&&(n=O(n,c),s=!1)},redoIfNeeded:()=>!1,setDebugId:e=>i=e}}(e.id,0,t,e.value,e.id);if("appendBefore"===e.kind||"appendAfter"===e.kind)return function(e,t,n,r,o){let i=o||e,s=!1,c=document.querySelector(t),a=document.createElement("div");const u=()=>{s||("appendBefore"===r&&(c=document.querySelector(t),_(()=>c.parentNode.insertBefore(a,c)),ae(c),a=O(a,n),k&&a.setAttribute(R,i),s=!0),"appendAfter"===r&&(s||(c=document.querySelector(t),c.nextSibling?(_(()=>c.parentNode.insertBefore(a,c.nextSibling)),ae(c)):(_(()=>c.parentNode.appendChild(a)),ae(c)),a=O(a,n),k&&a.setAttribute(R,i),s=!0)),s=!0)},l=()=>{s&&(a.remove(),s=!1)};return{id:e,isApplied:()=>s,kind:r,do:u,undo:l,redoIfNeeded:()=>{const e=ue(u,l,t,c);return e.element&&(c=e.element),e.isDetached},setDebugId:e=>i=e}}(e.id,e.selector,e.value,e.kind,e.id);if("appendCss"===e.kind)return function(e,t,n,r){let o=r||e,i=!1,s=document.querySelector(t);const c=document.createElement("style"),a=()=>{i||(c.innerHTML=n,k&&c.setAttribute(R,o),document.head.appendChild(c),i=!0)},u=()=>{i&&(c.remove(),i=!1)};return{id:e,kind:"appendCss",isApplied:()=>i,do:a,undo:u,redoIfNeeded:()=>{const e=ue(a,u,t,s);return e.element&&(s=e.element),e.isDetached},setDebugId:e=>o=e}}(e.id,e.selector,e.value,e.id);if("appendJs"===e.kind)return function(e,t,n,r,o){let i=r||e,s=!1,c=document.querySelector(t),a=null;const u=()=>{s||(a||(a=document.createElement("script")),a.setAttribute("type","application/javascript"),a.innerHTML=function(e,t){return e&&t?`(async () => {\n const _USE_CASE = "${t.experienceId}";
69\n const _USE_CASE_VARIANT = "${t.variantId}";\n const _USE_CASE_VERSION = ${_(()=>t.version||0,0)};\n const _USE_CASE_AUDIENCES = "${_(()=>window.loomi_ctx.audiences.join("|"),"")}";\n const _USE_CASE_GA = "${_(()=>t.gaExperienceName.replace(/"/g,'\\"'),t.gaExperienceName)}";\n const _USE_CASE_GA_VARIANT = "${_(()=>t.gaVariantName.replace(/"/g,'\\"'),t.gaVariantName)}";\n const _USE_CASE_CTX = {_USE_CASE,_USE_CASE_VARIANT,_USE_CASE_VERSION,_USE_CASE_AUDIENCES,_USE_CASE_GA,_USE_CASE_GA_VARIANT};\n const __currentScriptElement = document.currentScript;\n ${e}\n if (typeof vslyCleanup !== 'undefined') { \n if (__currentScriptElement) {\n __currentScriptElement.__vslyCleanup = vslyCleanup;\n }\n }\n })()`:!t&&e?`\n(async () => {\n const __currentScriptElement = document.currentScript;\n ${e}\n if (typeof vslyCleanup !== 'undefined') { \n if (__currentScriptElement) {\n __currentScriptElement.__vslyCleanup = vslyCleanup;\n }\n }\n})();\n`:e}(n,o),k&&(a.id=i),document.body.appendChild(a),s=!0)},l=()=>{if(!s)return;const e=(()=>{try{const e=a.__vslyCleanup;if(e)return e(),!0}catch(e){k&&console.error("vslyCleanup error:",e)}return!1})();a&&a.remove(),e&&(a=null),s=!1};return{id:e,kind:"appendJs",isApplied:()=>s,do:u,undo:l,redoIfNeeded:()=>{const e=ue(u,l,t,c);return e.element&&(c=e.element),e.isDetached},setDebugId:e=>i=e}}(e.id,e.selector,e.value,e.id,e.options);if("appendFont"===e.kind){const t=JSON.parse(e.value);if(t&&t.family&&t.weights)return function(e,t,n){n=n||e;let r=!1;const o=document.createElement("link"),i=(c=t.weights,(s=t.family).toLowerCase().includes("jetbrains")&&(s="JetBrains Mono"),`https://fonts.googleapis.com/css2?family=${encodeURIComponent(s)}:wght@${_(()=>c.join(";"))}&display=block`);var s,c;return o.setAttribute("href",i),o.setAttribute("rel","stylesheet"),{id:e,isApplied:()=>r,kind:"appendFont",do:()=>{r||(k&&o.setAttribute(R,n),document.head.appendChild(o),r=!0)},undo:()=>{r&&(o.remove(),r=!1)},redoIfNeeded:()=>!1}}(e.id,t,e.id)}else{if("compound"===e.kind){const n=e.value.map(n=>(n.options=e.options,Ge(n,t))).filter(e=>e);return function(e,t,n){let r=!1;return{id:e,isApplied:()=>r,kind:"compound",do:()=>{r||(t.filter(e=>!e.isApplied()).forEach(e=>{e.setDebugId&&e.setDebugId(n),e.do()}),r=!0)},undo:()=>{r&&(t.filter(e=>e.isApplied()).reverse().forEach(e=>e.undo()),r=!1)},redoIfNeeded:()=>t.map(e=>e.redoIfNeeded()).filter(e=>e).length>0}}(e.id,n,e.id)}if("widget"===e.kind){const t=_(()=>e.block.value),n=_(()=>t.env.sectionId.substring(1),e.id);return function(e,t,n,r,o,i,s){void 0===s&&(s="");const c=i||t;let a=!1;const u=`vslyp-${t}`;let l=null,d=null,m=[];const f=()=>{a||(we(r,s),"replace"===e?w():y(),fe()&&ve||h(),a=!0)},h=()=>{const e=r+s;v(()=>_(()=>!!window[he][pe][e])&&_(()=>!!window.preact),50,500).then(()=>{ae(l),_(()=>window[he][pe][e](`#${t}`))})},p=()=>{if(!a)return;d&&d.remove();const t=document.getElementById(u);if(t&&t.remove(),"replace"===e&&l&&l.children&&l.children.length>0){let e=0;for(const t of l.children)t.style.display=m[e],e+=1}a=!1},w=()=>
69{if(l=le(n),l){if(m=[],l.children&&l.children.length>0)for(const e of l.children){const t=e;t&&!t.getAttribute("preact")&&(m.push(t.style.display),t.style.display="none")}g(),l.appendChild(d),fe()&&ve&&ve.observe(d)}else F("vsly",`failed to find element with selector: ${n} when trying to replace with widget`)},y=()=>{l=le(n),l?(g(),l.insertAdjacentElement("appendBefore"===e?"beforebegin":"afterend",d),fe()&&ve&&ve.observe(d)):F("vsly",`failed to find element with selector: ${n} when trying to append widget`)},g=()=>{if(d=document.getElementById(t),!d){d=document.createElement("section"),d.style.all="unset",d.style.width="100%",d.setAttribute("preact","1"),k&&d.setAttribute(R,c),d.setAttribute("lmw",r),d.setAttribute(D,s),d.id=t;const e=document.createElement("script");e.id=u,e.setAttribute("type","text/props"),e.innerHTML=JSON.stringify(o),_(()=>document.body.appendChild(e))}};return{id:t,isApplied:()=>a,kind:"widget",do:f,undo:p,redoIfNeeded:()=>{const e=ue(f,p,n,l);return e.element&&(l=e.element),e.isDetached}}}(t.htmlKind,n,e.selector,t.widgetId,t.env,n,t.version)}if("moveElem"===e.kind){const t=_(()=>e.block.value);return function(e,t,n,r){let o=!1,i={display:""},s=null,c=null;const a=()=>{o||v(()=>(s=document.querySelector(t),c=document.querySelector(n),!!s&&!!c),50,500).then(()=>{s=document.querySelector(t),c=document.querySelector(n),u()})},u=()=>{c&&s&&(i={display:c.style.display,parentNode:s.parentElement,nextSib:s.nextElementSibling,prevSib:s.previousElementSibling},"appendBefore"===r?c.insertAdjacentElement("beforebegin",s):"appendAfter"===r?c.insertAdjacentElement("afterend",s):"replace"===r&&(c.style.display="none!important",c.insertAdjacentElement("afterend",s)),s.setAttribute(ye,t),o=!0)};return{id:e,isApplied:()=>o,kind:"moveElem",do:a,undo:()=>{o&&c&&s&&(i&&i.prevSib?i.prevSib.insertAdjacentElement("afterend",s):i&&i.nextSib?i.nextSib.insertAdjacentElement("beforebegin",s):i&&i.parentNode&&i.parentNode.appendChild(s),"replace"===r&&(c.style.display=i.display),s.removeAttribute(ye),o=!1)},redoIfNeeded:()=>!(_(()=>s.hasAttribute(ye))&&document.body.contains(s)||(o=!1,a(),0))}}(e.id,e.selector,t.destSelector,_(()=>t.htmlKind))}if("automation"===e.kind)return function(e){let t=!1;return{id:`automation-${(new Date).getDate()}`,kind:"automation",isApplied:()=>t,do:()=>{if(!t){t=!0;try{e.sort((e,t)=>e.order-t.order).map(e=>{switch(e.kind){case"click":return()=>function(e){try{return Promise.resolve(ge(function(){return q("fake-click","about to click on:",e.selector),Promise.resolve(_e(e.selector)).then(function(e){return e&&e.click(),Promise.resolve()})},function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}}(e);case"type":return()=>function(e){try{return Promise.resolve(ge(function(){return q("fake-click","about to type on:",e.selector,"with text: ",e.data),Promise.resolve(_e(e.selector)).then(function(t){const n=_(()=>Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set);_(()=>n.call(t,e.data||""));const r=new Event("input",{bubbles:!0});return t.dispatchEvent(r),Promise.resolve()})},function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}}(e);case"scroll":return()=>function(e){try{return Promise.resolve(ge(function(){return q("fake-click","about to scroll to:",e.selector),Promise.resolve(_e(e.selector)).then(function(e){return e.scrollIntoView(!0),Promise.resolve()})},function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}}(e);case"wait":return()=>function(e){try{try{return q("fake-click",`about to wait for: ${e.data}ms`),Promise.resolve(new Promise(t=>{setTimeout(()=>t(),_(()=>e.data)||1e3)}))}catch(e){return Promise.reject(e)}}catch(e){return Promise.reject(e)}}(e);default:return()=>Promise.resolve()}}).reduce((e,t)=>e.then(e=>t()),Promise.resolve()).then()}catch(e){F("failed to run automation with exception:",e)}}},undo:()=>{},redoIfNeeded:()=>!1}}(_(()=>e.block.value).steps);if("visualEdit"===e.kind){const t=_(()=>e.block.value);return function(e,t){let n=!1,r={};const o=function(e,t,n){void 0===n&&(n=!0);const o=t.subChanges.map(n=>{switch(n.kind){case"text":return((e,t,n)=>{if(!e)return()=>{};const r=t.extra;if(Se(e,t,n)){const n=e.childNodes[r].textContent;return e.childNodes[r].textContent=t.value,()=>e.childNodes[r].textContent=n}{const n=e.textContent;return e.textContent=t.value,()=>e.textContent=n}})(e,n,t.version);case"style":return((e,t)=>{if(!e)return()=>{};const n=_(()=>e.style[t.key],null);return e.style.setProperty(t.key,t.value,"important"),()=>e.style.setProperty(t.key,n)})(e,n);case"image":return((e,t)=>{if(!e||!e.removeAttribute||!e.getAttribute)return()=>{};const n=e.getAttribute("srcset")||"";e.removeAttribute("srcset");const r=_(()=>e.src,void 0);e.src=t.value;const o=e.parentElement,i=o&&"PICTURE"===o.nodeName,s=[];
69return i&&o.querySelectorAll("source").forEach(e=>{s.push(e.getAttribute("srcset")||""),e.removeAttribute("srcset")}),()=>{e.setAttribute("srcset",n),e.src=r,i&&o.querySelectorAll("source").forEach((e,t)=>{e.setAttribute("srcset",s[t])})}})(e,n);case"video":return((e,t)=>{if(!e||!e.setAttribute)return()=>{};const n=e.innerHTML;e.innerHTML="";const r=e.getAttribute("src")||"";return e.setAttribute("src",t.value),()=>{e.innerHTML=n,e.setAttribute("src",r)}})(e,n);case"attr":return((e,t)=>{if(!e||!e.setAttribute||!e.getAttribute)return()=>{};const n=e.getAttribute(t.key);return e.setAttribute(t.key,t.value),()=>n?e.setAttribute(t.key,n):e.removeAttribute(t.key)})(e,n)}});n&&(r[t.selector]={ve:t,elem:e,reverts:o})};return{id:e,kind:"visualEdit",isApplied:()=>n,do:()=>{n||(n=!0,t.forEach(e=>{v(()=>!!document.querySelector(e.selector),250,300).then(()=>{const t=document.querySelector(e.selector);o(t,e)})}))},undo:()=>{n&&(n=!1,Object.values(r).forEach(e=>e.reverts.forEach(e=>e())),r={})},redoIfNeeded:()=>{if(!n)return!1;let e=!1;return Object.values(r).forEach(t=>{e=document.body.contains(t.elem)?function(e,t){return e.ve.subChanges.forEac
69h((n,r)=>{n.value!==((e,t,n)=>{switch(t.kind){case"text":return((e,t,n)=>{const r=t.extra;return Se(e,t,n)?e.childNodes[r].textContent:e.textContent})(e,t,n);case"attr":return((e,t)=>e.getAttribute(t.key))(e,t);case"style":return((e,t)=>_(()=>e.style[t.key],null))(e,t);case"image":case"video":return(e=>e.src)(e)}})(e.elem,n,e.ve.version)&&(_(()=>e.reverts[r]()),o(e.elem,{selector:e.ve.selector,subChanges:[n]},!1),t=!0)}),t}(t,e):function(e){e.reverts.forEach(e=>e());const t=document.querySelector(e.ve.selector);return t&&o(t,e.ve),!0}(t)}),e}}}(e.id,t.changes)}if("pageRedirect"===e.kind){const t=_(()=>e.block.value);if(t)return n=t,r=e.options,{id:e.id,kind:"pageRedirect",isApplied:()=>!1,do:()=>{ee(ne(r),n.destUrl,n.redirectAfter,!0===n.retainQueryParams,n.stickinessMode)},undo:()=>{},redoIfNeeded:()=>!1,setDebugId:e=>""}}else if("themeTest"===e.kind){const t=_(()=>e.block.value);if(t)return function(e,t,n){const r=()=>!1;return{id:e,kind:"themeTest",isApplied:r,do:()=>Ee(ne(n),t.targetThemeId),undo:r,redoIfNeeded:r,setDebugId:r}}(e.id,t,e.options)}}var n,r}let ze=!1;function Ke(){ze||(ze=!0,requestAnimationFrame(We))}function We(){$.forEach(e=>{try{e.isApplied()?e.redoIfNeeded():e.do()}catch(t){F("failed to apply mutation command with exception:",t,e)}}),ze=!1}function Qe(e){try{const n=$.get(e),r=n&&n.undo();$.delete(e);const o=L.findIndex(t=>t.id==e);return(t=_(()=>L[o].selector))&&_(()=>J[t])&&delete J[t],L.splice(o,1),Ke(),r}catch(e){return}var t}function Ye(e){return"div"===e.selector&&(e.selector="body div"),L.push(e),He(),{revert:()=>Qe(e.id),mutationId:e.id}}function Ze(){const e=_(()=>window.loomi_ctx.cart);if(e)return e;const t=localStorage.getItem("loomi-cart");if(t)try{return JSON.parse(t)}catch(e){}}var Xe;!function(e){e.CART_CHANGE="CART_CHANGE",e.LOYALTY_CHANGE="LOYALTY_CHANGE"}(Xe||(Xe={}));const et=u((e,t)=>{const n=function(e,t){const n=new Event(Q);return n.key=e,n.value=t,n}(e,t);document.dispatchEvent(n),console.debug("Targeting has changed:",n)},80),tt=()=>window.loomi_ctx.session.id;function nt(e){return _(()=>e.items.map(e=>_(()=>e.selling_plan_allocation.selling_plan.name.toLowerCase())).filter(e=>!!e),[])}function rt(){return JSON.parse(localStorage.getItem("loomi-cart-history")||"[]")}function ot(){const e=_(()=>window.loomi_ctx.sessionProducts);if(e)return e;const t=localStorage.getItem("loomi_session_products"),n=t?JSON.parse(t):[];return _(()=>n.filter(e=>""!=e.handle).reverse().slice(0,20))}function it(e){return JSON.parse(localStorage.getItem(e)||"[]")}function st(e,t,n,r){e=e||[],t=t||[];const o=_(()=>t.filter(t=>!e.find(n(t))))||[],i=[...e,...o].slice(0,25);return i.length>0&&localStorage.setItem(r,JSON.stringify(i)),i}function ct(){return JSON.parse(localStorage.getItem("loomi_purchased_products")||"[]")}const at="vsly_params_history",ut="vsly_visited_pages",lt=function(e){try{const t=e.matches?ht.MOBILE:ht.DESKTOP,n=function(){if(dt!=t){q("device-listener",`device changed to ${t} from ${dt}`),window.loomi_ctx.deviceOverride=t===ht.MOBILE?"m":"d",dt=t;const e=_(()=>window.visually.reload),n=function(){if(e)return Promise.resolve(e()).then(function(){});F("device-listener","can't find reload function")}();if(n&&n.then)return n.then(function(){})}}();return Promise.resolve(n&&n.then?n.then(function(){}):void 0)}catch(e){return Promise.reject(e)}};let dt;function mt(){a()?function(){try{return Promise.resolve(v(()=>c,1e3,10)).then(function(){return ft(),Promise.resolve()})}catch(e){return Promise.reject(e)}}().catch(console.error):ft()}function ft(){let e=_(()=>window.vslyDesktopBreakpoint)||960;e<=0&&(e=960);const t=window.matchMedia(`(max-width: ${e}px)`);t.removeEventListener("change",lt),t.addEventListener("change",lt)}var ht;!function(e){e.MOBILE="MOBILE",e.DESKTOP="DESKTOP"}(ht||(ht={}));const pt=()=>edgetag("getUserId");function vt(){const e="vsly_edgetag";return P(()=>(pt()&&localStorage.setItem(e,pt()),!0)),_(pt)||localStorage.getItem(e)}const wt="lmi_type",yt="lmi_from",gt="lmi_class",_t="lmi_utm_data",St={utm_source:"source",utm_medium:"medium",utm_campaign:"campaign",utm_term:"term",utm_content:"content"},Et=function(e,t){void 0===t&&(t=3);let n=e;for(let e=0;e<t;e++)try{const e=decodeURIComponent(n);if(e===n)break;n=e}catch{break}return n},Pt=function(e){void 0===e&&(e=window.location.search);const t={utm:{},lmi_params:{}};return _(()=>
69new URLSearchParams(e)).forEach((e,n)=>{if(e){const r=St[n],o=Et(e);r?t.utm[r]=o:function(e){return _(()=>[gt,yt,wt].includes(e))}(n)&&(t.lmi_params[n]=o)}}),t};function At(){const e=function(e){let t=[];const n=localStorage.getItem(_t);return null!=n&&(t=[...JSON.parse(n)].slice(0,20)),e&&(e.ts=f(),t=[e,...t]),t}(function(e){if(function(e){return!e||"{}"===JSON.stringify(e)}(e))return null;const t={};return e.campaign&&(t.campaign=e.campaign),e.medium&&(t.medium=e.medium),e.source&&(t.source=e.source),e.term&&(t.term=e.term),e.content&&(t.content=e.content),t}(_(()=>Pt().utm)));return localStorage.setItem(_t,JSON.stringify(e)),e}function It(){const e=_(()=>At(),[]);if(!Array.isArray(e)||0===e.length)return"";const t=e.filter(e=>e.campaign);return 0===t.length?"":_(()=>t.reduce((e,t)=>t.ts>e.ts?t:e,t[0]).campaign,"")||""}const bt=function(e){return Promise.resolve(xt()).then(function(t){return new Promise((n,r)=>{const o=t.transaction([kt],"readonly").objectStore(kt).get(e);o.onerror=e=>{r("IDB e:r"+e.target.error)},o.onsuccess=e=>{n(e.target.result)}})})},xt=function(){try{const e=function(){if(!Tt)return Promise.resolve(new Promise((e,t)=>{const n=indexedDB.open(Ct,1);n.onerror=e=>{t("IDB e:o"+e.target.error)},n.onsuccess=t=>{Tt=t.target.result,e(Tt)},n.onupgradeneeded=e=>{e.target.result.createObjectStore(kt,{keyPath:"id"}).createIndex("id","id",{unique:!0})}})).then(function(){})}();return Promise.resolve(e&&e.then?e.then(function(){return Tt}):Tt)}catch(e){return Promise.reject(e)}},Ct="VISUALLY_IO",kt=Ct;let Tt=null;function Nt(){const e={},t=window.loomi_ctx||{};t.productId&&(e.productId=t.productId);const n=_(()=>{const e=new URL(location.href).searchParams,t="variant";return e.has(t)&&function(e){const t=Number(e),n=isNaN(t)?Number(`${e}`.replace(/[^\d.]+/g,""))||void 0:t;if(void 0!==n&&0!==n)return`${n}`}(e.get(t))})||t.variantId;return n&&(e.variantId=n),e}function Ot(){return _(()=>Ze().items.map(e=>({variantId:e.variant_id||0,quantity:e.quantity||0,productId:e.product_id||0,price:e.price||0})))||[]}const jt=function(e){return void 0===e&&(e=Ze()),_(()=>(("spa"==window.vslyIntegrationType?_(()=>e.attributes.map(e=>e.key)):_(()=>Object.keys(e.attributes)))||[]).filter(e=>!e.startsWith("vsly")&&e.length<20).slice(0,50))||[]};function Lt(){const e=new URL(window.location.href);return e.protocol+"//"+e.hostname+e.pathname}const $t=function(e,t){try{let n;const r=this.cart;if(!r)return Promise.resolve(0);const o=function(){try{var o=r.currency===e?(n=1,r.total_price/100):function(){if(t)return Promise.resolve(v(()=>!!window.loomi_ctx.Currency,100,10)).then(function(){const t=(window.loomi_ctx.Currency.convert(r.total_price,r.currency,e)||0)/100;return n=1,t})}()}catch(e){return}return o&&o.then?o.then(void 0,function(){}):o}();return Promise.resolve(o&&o.then?o.then(function(e){return n?e:0}):n?o:0)}catch(e){return Promise.reject(e)}};function Rt(){const e=_(()=>this.cart.items);if(e&&e.length>0){const t=tt(),n=localStorage.getItem("vsly-last-atc-sid");if(!n)return!1;if(n!==t)return!0;const r=e.map(e=>`${e.variant_id}`);return!!_(()=>rt().find(e=>!!e.sid&&r.includes(`${e.variant_id}`)&&`${e.sid}`!=t))}return!1}function Dt(e){return jt(this.cart).includes(e)}function Ut(e,t){function n(e){return e.toLowerCase()}const r={"==":t=>n(t)==n(e),"!=":t=>n(t)!=n(e),contains:t=>n(t).includes(n(e)),matches:t=>new RegExp(e).test(t)};return!!this.CartSubs().find(e=>r[t](e))}function Mt(){return nt(this.cart)}function qt(e){const t=this.cart;return!!_(()=>t.items.find(t=>t.handle===e))}function Ft(e,t){return"contains"!==t?qt.call(this,e):this.cart?.items?.some(t=>t.handle?.includes(e))??!1}function Bt(e){const t=this.cart;return!!_(()=>t.items.find(t=>!!t.tags&&t.tags.includes(e)))}function Jt(e,t){return"contains"!==t?Bt.call(this,e):this.cart?.items?.some(t=>t.tags?.some(t=>t.includes(e)))??!1}function Vt(e){const t=this.cart;if(t.items.length<=0)return!1;const n=_(()=>t.items.filter(t=>!!t.tags&&t.tags.includes(e)));return _(()=>n.length===t.items.length,!1)}function Ht(e,t){const n=this.cart?.items;return!!n?.length&&n.every(n=>(n.tags||[]).some(n=>"contains"===t?n.includes(e):n===e))}function Gt(e){const t=this.cart;return!!_(()=>t.items.find(t=>!!t.collections&&t.collections.includes(e)))}function zt(){return!0===_(()=>window.loomi_ctx.loyalty.isMember,!1)}function Kt(){return _(()=>
69window.loomi_ctx.loyalty.pointsBalance,0)}function Wt(){return _(()=>window.loomi_ctx.loyalty.earnedPoints,0)}const Qt="__eventn_id";function Yt(){const{id:e,firstSeen:t}=function(e){const t=function(e){try{const t=S(e),{firstSeen:n,id:r}=en(t);if(t)return{id:r,firstSeen:n||nn()}}catch(e){}}(e),n=function(e){const t=window.localStorage.getItem(e),{id:n,firstSeen:r}=en(t);if(t)return{id:n,firstSeen:r||nn()}}(e);if(!t&&!n){const{newId:t,newEpoch:n}=function(){const e=Math.random().toString(36).substring(2,12),t=nn();return{newId:e,newEpoch:t,value:tn(e,t)}}();return Zt(t,n,e),{id:t,firstSeen:n}}if(!n&&t)return Zt(t.id,t.firstSeen,e),t;if(!t&&n)return Zt(n.id,n.firstSeen,e),n;const r=Math.min(t.firstSeen,n.firstSeen);let o=t.firstSeen<=n.firstSeen?t.id:n.id;return Xt(t,n)&&(o=t.id<=n.id?t.id:n.id),n.id==t.id&&n.firstSeen==t.firstSeen||Zt(o,r,e),{id:o,firstSeen:r}}(Qt);return{id:e,firstSession:rn(t),firstSeen:t}}function Zt(e,t,n){void 0===n&&(n=Qt);const r=tn(e,t);_(()=>localStorage.setItem(n,r)),((e,t,n,r)=>{_(()=>window.loomi_ctx.cc)&&!b()||(document.cookie=encodeURIComponent(e)+"="+t+"; path=/; expires=Fri, 31 Dec 9999 23:59:59 GMT"+(n?"; domain="+n:"")+(r?"; secure":""))})(n,r,document.location.hostname.replace("www.","").replace("checkout.",""),"http:"!==document.location.protocol)}const Xt=(e,t)=>e.firstSeen===t.firstSeen&&e.id!==t.id;function en(e){return{firstSeen:_(()=>parseInt(e.split(".")[1]),null),id:_(()=>e.split(".")[0])}}function tn(e,t){return`${e}.${t}`}function nn(){return Math.trunc((new Date).getTime()/1e3)}const rn=e=>(new Date).getTime()/1e3-e<=7200,on="vsly_vid",sn="lmi_debug";function cn(e){return _(()=>new URL(window.location.href).searchParams.get(e)||void 0)}const an=["Roboto","Open Sans","Fredoka","Fredoka","Smooch Sans","Rubik","Lato","Poppins","Oswald","League Spartan","Noto Sans","Raleway","Merriweather","Playfair Display","Inter","JetBrains Mono","Jetbrains Mono"];function un(e){try{(function(e){const t=e.flatMap(e=>_(()=>e.code)).filter(e=>!!e).filter(e=>"widget"===e.kind).map(e=>ln(e.value.env)),n=new Map;return function(e,t){e.forEach(e=>{!function(e,t){const n=new Map;e.forEach(e=>{let[t,r]=e;const o=".font.";if(t.includes(o)){const e=t.split(o)[0]+o;n.has(e)||n.set(e,{families:new Set,weights:new Set});const i=n.get(e);if(t.endsWith(".fontFamily"))i.families.add(r);else if(t.endsWith(".fontWeight")){const e=parseInt(r,10)||500;i.weights.add(e)}}}),function(e,t){e.forEach(e=>{if(e.families.size>0){const n=e.weights.size>0?e.weights:new Set([500]);e.families.forEach(e=>{dn(t,e,n)})}})}(n,t)}(Object.entries(e),t),function(e,t){const n=function(e){const t=".text.isRichText",n=new Set;return e.forEach(e=>{let[r,o]=e;if(r.endsWith(t)&&!0===o){const e=`${r.split(t)[0]}.text.value`;n.add(e)}}),n}(e);0!==n.size&&e.filter(e=>{let[t]=e;return n.has(t)}).forEach(e=>{let[n,r]=e;return function(e,t){var n;if(e)try{!function(e,t){e.querySelectorAll("[style]").forEach(e=>{const n=e.style;if(n.fontFamily){const e=n.fontFamily,r=parseInt(n.fontWeight,10)||500;dn(t,e,new Set([r]))}})}((n=decodeURIComponent(e),(new DOMParser).parseFromString(n,"text/html")),t)}catch(e){console.error("Failed to parse rich text HTML",e)}}(r,t)})}(Object.entries(e),t)})}(t,n),function(e){return Array.from(e.entries()).map(e=>{let[t,n]=e;return{family:t,weights:Array.from(n).sort()}})}(n)})(e).forEach(e=>{let{family:t,weights:n}=e;return function(e,t){return Ye(N("appendFont","div",JSON.stringify({family:e,weights:t})))}(t,n)})}catch(e){F("failed to install custom fonts",e)}}function ln(e){const t={};for(const n in e)if("object"!=typeof e[n]||Array.isArray(e[n]))t[n]=e[n];else{const r=ln(e[n]);for(const e in r)t[`${n}.${e}`]=r[e]}return t}function dn(e,t,n){if(!t)return;const r=t.replaceAll("'","").replaceAll('"',"");if(!function(e){return an.includes(e)}(r))return;e.has(r)||e.set(r,new Set);const o=e.get(r);
69o.add(400),n.forEach(e=>{o.add(e)})}const mn=function(e,t,n,r){void 0===n&&(n=!0),void 0===r&&(r=void 0);try{const o=_(()=>window.loomi_api.addToCart),i=function(){if(o)return Promise.resolve(window.loomi_api.addToCart(e,t,n,r)).then(function(){})}();return Promise.resolve(i&&i.then?i.then(function(){}):void 0)}catch(e){return Promise.reject(e)}},fn=function(e){try{let n;function t(t){return n?t:e.map(e=>{const t=String(e.id),n=pn.get(gn(e.id))||r[t];return n?{...e,variants:Array.isArray(e.variants)?e.variants.map(e=>{const t=_n(e,n);return t?{...e,fixed_price_currency:t.price.currencyCode,price:parseFloat(t.price.amount),compare_at_price:t.compareAtPrice?parseFloat(t.compareAtPrice.amount):e.compare_at_price}:e}):e.variants}:e})}if(!e||0===e.length)return Promise.resolve(e);let r={};const{productIdsToFetch:o}=Sn(e),i=function(){if(o.length>0)return function(t,n){try{var o=Promise.resolve(hn(e)).then(function(e){r=e,Object.entries(r).forEach(e=>{let[t,n]=e;return pn.set(gn(t),n)})})}catch(e){return n(e)}return o&&o.then?o.then(void 0,n):o}(0,function(t){return console.error("vsly",t),n=1,e})}();return Promise.resolve(i&&i.then?i.then(t):t(i))}catch(s){return Promise.reject(s)}},hn=function(e){try{return Promise.resolve(fetch(`https://${wn()}/api/2025-10/graphql.json`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({query:vn(e)})})).then(function(e){if(!e.ok)throw new Error(`Shopify API error: ${e.status}`);return Promise.resolve(e.json()).then(function(e){if(e.errors)throw new Error(`GraphQL errors: ${JSON.stringify(e.errors)}`);const t={};for(const n in e.data){const r=e.data[n];if(!r)continue;const o=yn(r.id);t[o]={variants:{}}
69,r.variants.edges.forEach(e=>{const n=yn(e.node.id);t[o].variants[n]={price:e.node.price,compareAtPrice:e.node.compareAtPrice}})}return t})})}catch(e){return Promise.reject(e)}},pn=new class extends H{constructor(e,t){super(new z(e),t)}}("p",18e5);function vn(e){const{productIdsToFetch:t,maxVariantsPerProduct:n}=Sn(e),r=se();return`\n query GetProductPrices ${r?`@inContext(country: ${r})`:""} {\n ${t.map(e=>`\n product_${e}: product(id: "gid://shopify/Product/${e}") {\n id\n variants(first: ${n}) {\n edges {\n node {\n id\n price {\n amount\n currencyCode\n }\n compareAtPrice {\n amount\n currencyCode\n }\n }\n }\n }\n }\n `).join("\n")}\n }\n `}const wn=()=>window.loomi_ctx.storeAlias.toLowerCase().replaceAll("_","-")+".myshopify.com";function yn(e){const t=e.match(/\/(\d+)$/);return t?t[1]:e}const gn=e=>String(e)+se(),_n=(e,t)=>{let n=String(e.variant_id);const r=Object.keys(t.variants);return 1==r.length&&(n=r[0]),t.variants[n]},Sn=e=>{let t=1,n=!0;return{productIdsToFetch:e.map(e=>{if(!Array.isArray(e.variants))return{id:String(e.id),needsFetch:!1};const r=new Set(e.variants.map(e=>e.price)).size>1;r&&(n=!1),e.variants.length>t&&(t=e.variants.length);const o=((e,t,n)=>{if(!e)return!0;if(!n)return!1;const r=e.variants||{};return t.some(e=>void 0===r[e])})(pn.get(gn(e.id)),e.variants.map(e=>String(e.variant_id)),r);return{id:String(e.id),needsFetch:o}}).filter(e=>e.needsFetch).map(e=>e.id),maxVariantsPerProduct:n?1:t}},En=new K("recs_cache",300001),Pn=function(e,t){try{const n=Promise.resolve([]);return Promise.resolve(function(r,o){try{var i=function(){if(!e)return n;let r=_(()=>e.recommendationOptions);if(!r)return n;var o;!function(e){const{productId:t,variantId:n}=Nt();(t||n)&&(e.productId={productId:t,variantId:n})}(r),r.cartItems=(o=Ot(),_(()=>o.filter(e=>!!e.productId).map(e=>({productId:`${e.productId}`,variantId:`${e.variantId}`,quantity:e.quantity||1})))),r.currency=_(()=>Ze().currency||"USD","USD"),r.cart_total=_(()=>Ze().total_price,0),_(()=>+Date.now()-window.loomi_ctx.last_vid_atc.ts<5e3)&&(r.last_vid_atc=window.loomi_ctx.last_vid_atc),r.respSize=_(()=>window.visually.recsPerVariant[t.variantId]),["RECENTLY_VIEWED","VIEWED_WITH_RECENTLY_VIEWED"].find(e=>An(r,e))&&(r.recentlyViewed=ot().filter(e=>!!e.productId).map(e=>({productId:`${e.productId}`,variantId:`${e.variantId||""}`,...e.ts?{ts:e.ts}:{}})));const i=ct();return i.length>0&&(r.pastPurchases=i),(An(r,"CART_ITEMS")||function(e){return _(()=>!!e.layeredRuling.find(e=>"latest_added"==e.ruleCond.itemSelection))}(r))&&(r.cartHistory=kn()),r.userId=_(()=>window.loomi_ctx.userId,""),t&&(r.widgetContext=t),_(()=>!!window.loomi_ctx.storeAlias)&&(r.storeAlias=window.loomi_ctx.storeAlias),r.locale=_(()=>window.Shopify.locale)||_(()=>window.visually.locale),E()&&(r.clientId=E()),r.country=se(),Promise.resolve(function(e,t){const n=_(()=>window.loomi_api.updateRecsOpts),r=_(()=>n.get(function(e){return e.widgetId+e.experienceId+e.variantId+e.sectionId}(e))(t),t);return _(()=>n.get(window.loomi_ctx.storeAlias)(r),r)}(t,r)).then(function(e){return r=e,Promise.resolve(Cn(r))})}()}catch(e){return o(e)}return i&&i.then?i.then(void 0,o):i}(0,function(e){return F("loomi-widget,recProducts failed:",e),n}))}catch(e){return Promise.reject(e)}};function An(e,t){return e.type===t||_(()=>e.strategyPerSlot.find(e=>e.strategy===t))||_(()=>!!Object.values(e.conditions).find(e=>e.qbProps.envKey===t))||_(()=>!!e.layeredRuling.find(e=>e.strategy===t||!!_(()=>e.strategyPerSlot.slots.find(e=>e.strategy===t))))}function In(e){const t=function(){const e=window.innerWidth;return e<=360?200:e<=480?360:e<=640?480:e<=768?640:e<=960?768:1024}();e.products.forEach(e=>{const n=new URL(e.image.src);n.searchParams.set("width",`${Math.min(t,e.image.width||1280)}`),e.image.src=n.href})}function bn(){return`https://${A(window.loomi_ctx.env)}/api/recommendations/web/public/v2/recommend`}const xn=new Map,Cn=function(e){try{function t(){return _(()=>o.products)}const n=g(e),r=W(n);let o=En.get(r);const i=function(){if(!o){let e=!0;return me("kill-locale-currency")&&(e=!1),Promise.resolve(((e,t,n)=>{if(xn.has(e))return xn.get(e);const r=window.vslyNativeFetch||window.fetch,o=function(){try{return Promise.resolve(function(e,o){try{var i=function(){function e(){return Promise.resolve(o.json()).then(function(e){const t=function(){if(e.fetchPrices&&n)return Promise.resolve(fn(e.products)).then(function(t){e.products=t})}();return t&&t.then?t.then(function(){return e}):e})}let o;const i=t.length>1e4&&!me("disable-recs-post")?Promise.resolve(r(bn(),{method:"POST",headers:{"Content-Type":"text/plain"},body:t})).then(function(e){o=e}):Promise.resolve(r(`${bn()}?q=${t}`)).then(function(e){o=e});return i&&i.then?i.then(e):e()}()}catch(e){return o(!0,e)}return i&&i.then?i.then(o.bind(null,!1),o.bind(null,!0)):o(!1,i)}(0,function(t,n){if(xn.delete(e),t)throw n;return n}))}catch(e){return Promise.reject(e)}}();return xn.set(e,o),o})(r,n,e)).then(function(e){o=e,_(()=>
69[In,window.loomi_api.onRecsResp].forEach(e=>e&&e(o))),En.set(r,o)})}}();return Promise.resolve(i&&i.then?i.then(t):t())}catch(s){return Promise.reject(s)}},kn=()=>rt().map(e=>{const t={...e};return delete t.sid,t});function Tn(e){return`vsly_pi_${e}`}function Nn(e){return`vsly_hbt_${e}`}function On(e){return`vsly_hbc_${e}`}function jn(e){return Array(e).fill(0).map(()=>Math.floor(10*Math.random())).join("")}function Ln(){try{const e=_(()=>window.vslyAntiFlickerReveal,void 0);e&&e()}catch(e){}}const $n=function(e,t){try{if(y(e)||y(t))return Promise.resolve({products:[]});const n=function(e,t){const n=window.loomi_ctx.storeAlias||"",r=new URLSearchParams({byHandle:g({handles:e}),al:n,slimResp:"1"});return t&&t.length>0&&r.set("metafields",g({fields:t})),`${bn()}?${r.toString()}`}(e,t);return Promise.resolve(fetch(n)).then(function(e){if(!e.ok)throw new Error(`vsly 400 ${e.statusText}`);return e.json()})}catch(e){return Promise.reject(e)}},Rn=function(e){try{try{const t=g(e),n=window.loomi_ctx.storeAlias,r=W(`${n}_${t}_${se()}`),o=Un.get(r);if(o)return Promise.resolve(o);if(Mn.has(r))return Promise.resolve(Mn.get(r));const i=function(){try{return Promise.resolve(function(e,o){try{var i=function(e,o){try{var i=function(){const e=new URL(bn());e.searchParams.set("al",n),e.searchParams.set("productQuery",t);const o=window.vslyNativeFetch||window.fetch;return Promise.resolve(o(e.toString(),{method:"GET",headers:{Accept:"application/json"}})).then(function(e){return e.ok?Promise.resolve(e.json()).then(function(e){return Promise.resolve(function(e){try{if(!e||!e.results||"object"!=typeof e.results)return Promise.resolve({results:{}});const t=e.results,n=function(e){return Object.keys(e).map(t=>{const n=e[t];return n&&n.id?{key:t,product:n}:null}).filter(e=>!!e)}(t);if(0===n.length)return Promise.resolve({...e,results:t});let r=n.map(e=>e.product);return r=function(e){const t={products:e};return In(t),t.products}(r),Promise.resolve(Dn(r)).then(function(o){return r=o,r=function(e){const t=window.loomi_api;if(!t||!t.onRecsResp)return e;try{const n={products:e};return t.onRecsResp(n),n.products}catch(t){return F("onRecsResp hook failed",t),e}}(r),function(e,t,n){t.forEach((t,r)=>{const o=n[r];o&&o.id&&(e[t.key]=o)})}(t,n,r),{...e,results:t}})}catch(e){return Promise.reject(e)}}(e)).then(function(e){return Un.set(r,e),e})}):{results:{}}})}()}catch(e){return o(e)}return i&&i.then?i.then(void 0,o):i}(0,function(e){return F("queryProducts failed:",e),{results:{}}})}catch(e){return o(!0,e)}return i&&i.then?i.then(o.bind(null,!1),o.bind(null,!0)):o(!1,i)}(0,function(e,t){if(Mn.delete(r),e)throw t;return t}))}catch(e){return Promise.reject(e)}}();return Mn.set(r,i),Promise.resolve(i)}catch(e){return F("queryProducts setup failed:",e),Promise.resolve({results:{}})}}catch(e){return Promise.reject(e)}},Dn=function(e){try{return me("kill-locale-currency")||_(()=>!Array.isArray(e[0].variants))?Promise.resolve(e):Promise.resolve(fn(e))}catch(e){return Promise.reject(e)}},Un=new K("ai_recs_cache",300001),Mn=new Map,qn=function(e,t,n){try{const o=Yt(),i=function(e,t,n){const r=function(){const e=Ot(),t={path:window.location.pathname,host:window.location.hostname};_(()=>e.length)>0&&(t.cartItems=e);const n=_(()=>Ze().token);n&&(t.cartToken=n);const r=At();r&&(t.trafficSources=r),t.productsSeenInSession=ot(),t.isCustomer=!!E(),t.query=window.location.search||"",t.hash=window.location.hash||"";const o=jt();return o&&(t.cartAttributes=o),t}();r.storeAlias=e;const o=E();o&&(r.clientId=o),r.anonymousId=t.id,r.firstSeen=t.firstSeen,r.firstSession=t.firstSession,r.gaId=_(()=>document.cookie.split(";").map(e=>e.split("=")).find(e=>{let[t,n]=e;return"_ga"==t.trim()})[1],"");const i=window.loomi_ctx;r.customerTags=_(()=>i.ctags.slice(0,20)),r.landingPage=_(()=>i.session.landing_page),r.hasSubs=!!_(()=>nt(Ze()).length>0);const s=vt();s&&(r.edgetag=s);const c=function(){try{const e=_(()=>new URL(window.location.href));if(_(()=>e.searchParams.get("forceOverride"))){const t=_(()=>e.searchParams.get("targeting"));if(t)return JSON.parse(decodeURIComponent(escape(atob(t))))}}catch(e){F("preview overrides",e)}return{}}(),a=it(at),u=function(){const e=it(ut);function t(e){return new Date(e.ts).valueOf()}function n(){const e=new URL(location.href);return["vslyvid","vslywgid","vslysid","lmi_preview","targeting","vsly_vid"].forEach(t=>e.searchParams.delete(t)),e.search||""}return bt(ut).then(r=>{const o={ts:new Date,name:Lt(),search:_(n,"")},i=!!o.search,s=(_(()=>r.visits)||e||[]).filter(e=>!i||!(e.name===o.name&&!e.search)).filter(e=>
69!(e.name===o.name&&(o.search===e.search||i&&!e.search))).sort((e,n)=>t(n)-t(e)).slice(0,500);var c;s.unshift(o),(c={id:ut,visits:s},Promise.resolve(xt()).then(function(e){return new Promise((t,n)=>{const r=e.transaction([kt],"readwrite").objectStore(kt).put(c);r.onerror=e=>{n("IDB e:w"+e.target.error)},r.onsuccess=()=>{t("")}})})).catch()}).catch(),st([{ts:f(),name:Lt()}],e,e=>t=>e.name===t.name,ut)}(),l=ct(),d={deviceKind:_(()=>window.loomi_ctx.deviceOverride,void 0),...n||{}},m=!!_(()=>navigator.userAgent.includes("Macintosh")&&"ontouchend"in document),h=_(()=>window.innerWidth,0),p=_(()=>window.vslyDesktopBreakpoint)||960,v=_(()=>S("cart_currency"))||_(()=>Ze().currency)||"",w=_(()=>i.current_product);if(w){r.oos=_(()=>w.oos),r.price=_(()=>w.price),r.iq=_(()=>w.variants.reduce((e,t)=>t.iq+e,0)),r.productId=_(()=>{const e=Nt().productId;return Number.isFinite(Number(e))?e.toString():""},"");const e=1*i.variantId;Number.isFinite(e)&&(r.vid=e)}const y=_(tt);"spa"==window.vslyIntegrationType&&(r.spa=!0);const g=_(()=>i.ttl);return{cartCurrency:v,...r,queryHistory:a,isIPadPro:m,windowInnerWidth:h,desktopBreakpoint:p,visitedPages:u,ttl:Number.isFinite(g)?g:0,purchasedLineItems:l,sid:y,...d||{},...c||{}}}(e,o,n);return Promise.resolve(function(e,t){try{const n=g(t),o=function(e){const{previewKey:t,debugAllocator:n,previewVariantId:o}=function(){[r,on].map(e=>{const t=cn(e);t&&sessionStorage.setItem(e,t)});const e=sessionStorage.getItem(r),t=sessionStorage.getItem(on);return{previewKey:e,debugAllocator:cn(sn),previewVariantId:t}}();let i=new URL(e);return t&&i.searchParams.append(r,t),n&&i.searchParams.append(sn,"true"),o&&i.searchParams.append(on,o),i}(Vn(e).cfgUrl);o.searchParams.append("q",n);const i=W(o.href),s=window.vslyNativeFetch||window.fetch,c=Bn.has(i)?Bn.get(i):s(o.href,{priority:"high"}).finally(()=>Bn.delete(i));return Bn.set(i,c),Promise.resolve(c).then(function(e){if(e.ok)return Promise.resolve(e.json());throw new Error(`failed to load config: ${e.statusText}`)})}catch(e){return Promise.reject(e)}}(t,i)).then(function(e){return _(()=>{window.loomi_ctx.audiences=e.audiences,_(()=>e.audiences&&localStorage.setItem("vsly_audiences",JSON.stringify(e.audiences))),window.loomi_ctx.testedThemes=e.testedThemes||[]}),function(e){const t=e.currentVariant;window.loomi_ctx={...window.loomi_ctx||{}};const n=_(()=>t.pid);n&&(window.loomi_ctx.productId=`${n}`);const r=_(()=>t.vid);r&&(window.loomi_ctx.variantId=`${r}`);const o=_(()=>t.price);o&&(window.loomi_ctx.variantPrice=o);const i=_(()=>t.meta);i&&(window.loomi_ctx.productMeta=`${i}`)}(e),st(e.queryHistory,i.queryHistory,e=>t=>t.v===e.v&&t.k===e.k,at),function(e){var t;(t=e.experiments)&&t.findIndex(e=>{const t=_(()=>e.clientTargetingFormula.toString(),"")||"";return t.includes("CartItemHasTag")||t.includes("CartItemHasCollection")||t.includes("AllCartItemsHasTag")})>-1||!0===_(()=>e.flags["sdk-enable-cart-enrichment"],!1)&&(e.flags["sdk-enable-cart-enrichment"]=!1)}(e),{configuration:e,tracking:o}})}catch(e){return Promise.reject(e)}},Fn="vslyb",Bn=new Map;function Jn(e){if("number"==typeof e.chance&&e.chance<100){const t={experienceId:e.name,variantId:e.variant,storeAlias:_(()=>window.loomi_ctx.storeAlias),anonymousId:_(()=>window.loomi_ctx.userId)};e.version&&(t.version=e.version);const r=g(t),o=_(()=>window.loomi_ctx.env,n.PROD),i=new URL(Vn(o).cfgUrl.replace("/allocate","/match"));i.searchParams.append("q",r),fetch(i)}}function Vn(e){let t="/api/allocator/web/public/v2/allocate";return Gn(e)&&(t="/allocate"),{cfgUrl:`${Hn(e)}${t}`}}function Hn(e){return Gn(e)?"http://localhost:8080":`https://${A()}`}function Gn(e){return[n.TEST,n.LOCAL].includes(e)}function zn(e){window.visually={..._(()=>window.visually)||{},flags:e},localStorage.setItem("loomi-flags",JSON.stringify(e))}function Kn(e,t,n){const r=function(r){_(()=>!!r.persisted)&&(window.loomi_ctx.cart=void 0,n(e,t,500).catch(e=>{F("failed reloading sdk",e)}))};_(()=>!window.loomi_ctx.pageshow)&&(q("pageshow initialized"),s().then(()=>{window.addEventListener("pageshow",r),window.loomi_ctx.pageshow=!0}))}function Wn(e){return`${e.name}-${e.variant}`}function Qn(e){return`${e.name}-${e.variant}-${e.version||0}`}function Yn(e){$.forEach(t=>{e&&!e(t)||(t.undo(),t.do())})}const Zn=(e,t)=>!!_(()=>e.audiences.includes(t)),Xn=e=>{const t={},n=Zn(e,"d"),r=Zn(e,"m");return n||r?(_(()=>e.experiments.filter(e=>
69!!e.code).forEach(e=>e.code.forEach(r=>{const o=_(()=>r.value.env.general.recsCount),i=_(()=>n?o.desktop.value:o.value);i>(t[e.variant]||0)&&"number"==typeof i&&(t[e.variant]=i)}))),t):t},er=function(e){void 0===e&&(e={});try{const t=Z+X;return we(Z,X),Promise.resolve(v(()=>_(()=>window.visually.widgets[t]),100,50)).then(function(){const n="#vsly-overlay",r="#vslyp-vsly-overlay";if(!document.querySelector(r)){const e=document.createElement("div");e.id=n.replace("#",""),e.textContent=".",e.style.opacity="0",e.style.display="none",document.body.appendChild(e);const t=document.createElement("script");t.id=r.replace("#",""),t.type="text/props",t.textContent="{}",document.body.appendChild(t)}return window.visually.widgets[t](n),Promise.resolve(v(()=>!!window.loomi_api._openProductOverlay,100,50)).then(function(){window.loomi_api._openProductOverlay((e=>{const t=_(()=>e.widgetContext)||_(()=>e.mpCtx)||_(()=>e.overlay.mpCtx);return t?{...e,overlay:{...e.overlay||{},mpCtx:t}}:e})(e))})})}catch(e){return Promise.reject(e)}};function tr(e,t,n,r){const[o,i]=t.split(",");return new Promise(t=>{bt(ut).then(n=>{for(const s of function(e,t,n){const r=(new Date).valueOf();return(_(()=>e.visits,[])||[]).filter(e=>{const o=new Date(e.ts).valueOf(),i=36e5,s=parseInt(t);switch(n.replaceAll('"',"")){case"hours":return o>r-s*i;case"weeks":return o>r-s*i*24*7;case"days":return o>r-s*i*24;default:return!1}})}(n,o,i))if(r||cr(e)){if(rr(s,e))return void t(!0)}else if(nr(s,e))return void t(!0);t(!1)})})}function nr(e,t){return!![or(e),sr(or(e))].find(e=>e.includes(t))}function rr(e,t){const n=e.search||"",r=or(e)+n;return!![r,sr(r)].find(e=>e.includes(ir(t)))}function or(e){return ir(function(e){const t=_(()=>new URL(e));if(!t)return e;const n=t.pathname.split("/");return/^[a-z]{2}-[a-z]{2}$/.test(n[1])&&(t.pathname=n.slice(2).join("/")),ir(t.href)}(e.name))}function ir(e){const t=_(()=>new URL(e));return t&&t.pathname.endsWith("/")?"/"===t.pathname?t.href.slice(0,-1):(t.pathname=t.pathname.slice(0,-1),t.href):e}function sr(e){return e.includes("/products/")&&e.includes("/collections/")?e.replace(/\/collections\/[^/]+/,""):e}function cr(e){return _(()=>!!new URL(e).search)}const ar=function(e){try{return Er(),yr(e.clientTargetingFormula)&&(mr[hr(e)]=e),Promise.resolve(Sr(e)).then(function(t){return t?(vr(e),!0):(q(`exp: ${e.gaName} not run client targeting: ${e.clientTargetingFormula} => false`),!1)})}catch(e){return Promise.reject(e)}},ur=function(e){try{const t=Object.entries(mr).map(t=>{let[n,r]=t;return yr(r.clientTargetingFormula)&&(mr[hr(r)]=r),{exp:r,shouldBeApplied:lr(r.clientTargetingFormula,e,r.name),hasBeenApplied:()=>!!fr[hr(r)]}});return Promise.resolve(gr(t)).then(function(e){!function(e){e.filter(e=>e.hasBeenApplied()&&!e.shouldBeApplied).flatMap(e=>{const t=_(()=>fr[hr(e.exp)]);return t&&delete fr[hr(e.exp)],t}).forEach(e=>{_(e.revert)})}(e),function(e){e.filter(e=>e.shouldBeApplied&&!e.hasBeenApplied()).forEach(e=>{var t,n,r;vr(e.exp),t=e.exp,n=wr,void 0===r&&(r=C()),n.has(t.variant)||(xr(r,t),n.add(t.variant),Jn(t))})}(e)})}catch(e){return Promise.reject(e)}},lr=function(e,t,n){void 0===n&&(n="");try{if(void 0===t&&(t=pr()),yr(e)){t.Total=$t,t.CartHasSubs=Ut,t.CartSubs=Mt,t.CartHasItem=qt,t.CartHasItemMatching=Ft,t.CartItemHasTagMatching=Jt,t.CartItemHasTag=Bt,t.AllCartItemsHasTag=Vt,t.AllCartItemsHasTagMatching=Ht,t.CartItemHasCollection=Gt,t.IsLoyaltyCustomer=zt,t.LoyaltyPointsBalance=Kt,t.LoyaltyPointsEarned=Wt,t.PageVisit=tr,t.CustomerTag=Pr,t.IsGuest=Ar,t.AbandonedCart=Rt,t.CartAttrName=Dt,t.UseCaseId=n;const r=()=>new Function(`\n const c = arguments[0];\n return ${function(e){const t=t=>_(()=>e.includes(t));for(const n of["PageVisit","Total"])t(`c.${n}`)&&!t(`await c.${n}`)&&(e=`( ${e.replaceAll(`c.${n}`,`await c.${n}`)} )`);return!t("(async ()")&&t("await")?`(async () => (${e}))()`:e}(e)}`)(t);return Promise.resolve(new Promise(e=>e(r())).catch(e=>(F("client side formula err",e),!1)))}return Promise.resolve(!0)}catch(e){return Promise.reject(e)}};let dr=!1;const mr={},fr={},hr=e=>`${e.name}-${e.variant}`;function pr(){return{cart:Ze(),Total:$t,CartHasSubs:Ut,CartSubs:Mt,CartHasItem:qt,CartHasItemMatching:Ft,CartItemHasTagMatching:Jt,CartItemHasTag:Bt,AllCartItemsHasTag:Vt,AllCartItemsHasTagMatching:Ht,CartItemHasCollection:Gt,IsLoyaltyCustomer:zt,LoyaltyPointsBalance:Kt,LoyaltyPointsEarned:Wt,PageVisit:tr,CustomerTag:Pr,IsGuest:Ar,AbandonedCart:Rt,CartAttrName:Dt}}function vr(e){const t={experienceId:e.name,variantId:e.variant,gaExperienceName:e.gaName,gaVariantName:e.gaVariant,reportGa:e.ga,publishedAt:e.publishedAt,version:e.version};var n;n=_(()=>e.code.map(e=>{try{return function(e,t){if("compound"===e.kind){const n=e.value,r=function(e,t,n,r,o){const i=[];return n&&""!==n&&i.push(N(e,t,n)),r&&""!==r&&i.push(N("appendCss",t,r)),o&&""!==o&&i.push(N("appendJs",t,o)),i}(n.htmlKind,e.selector,n.html,n.css,n.js),o=N(e.kind,e.selector,r);o.options=t;const i=Ye(o);return i.htmlId=r[0].id,r[1]&&(i.cssId=r[1].id),r[2]&&(i.jsId=r[2].id),i}if("widget"===e.kind){const n=N(e.kind,e.selector,"");n.options=t,n.block=e;const r=function(e,t){const n=_(()=>e.block.value);return{...t,sectionId:_(()=>n.env.sectionId),widgetId:_(()=>n.widgetId),widgetVersion:_(()=>n.version)}}(n,t);!function(e,t){const n=_(()=>e.block.value.env);
69n&&Object.entries(t).forEach(e=>{let[t,r]=e;return n[t]=r})}(n,r);const o=Ye(n);return o.htmlId=n.id,o}if(["pageRedirect","themeTest"].includes(e.kind)){const n=N(e.kind,e.selector,"");return n.options=t,n.block=e,Ye(n)}if(["moveElem","automation","visualEdit"].includes(e.kind)){const n=N(e.kind,e.selector,"");n.options=t,n.block=e;const r=Ye(n);return r.htmlId=n.id,r}const n=N(e.kind,e.selector,e.value);return n.options=t,Ye(n)}(e,t)}catch(e){}}).filter(e=>!!e),[]),fr[hr(e)]=n,function(e){if(!0!==window.visually?.flags?.["experience-applied-callback"])return;const t=window.vslyOnExperienceApplied;if("function"!=typeof t)return;const n={experienceId:e.name,variantId:e.variant,experienceName:e.gaName,variantName:e.gaVariant,version:e.version??0};try{Promise.resolve(t(n)).catch(e=>F("vslyOnExperienceApplied callback failed",e))}catch(e){F("vslyOnExperienceApplied callback failed",e)}}(e)}const wr=new Set;function yr(e){return!!e&&""!==e}const gr=function(e){try{return Promise.resolve(Promise.all(e.map(function(e){try{return Promise.resolve(e.shouldBeApplied).then(function(t){return{...e,shouldBeApplied:t}})}catch(e){return Promise.reject(e)}})))}catch(e){return Promise.reject(e)}},_r=e=>{const t=_(()=>e.key),n=_(()=>e.value),r=pr();t===Xe.CART_CHANGE?(ur({...r,cart:n}),_(()=>window.loomi_ctx.maintainCartAttributes(n))):t===Xe.LOYALTY_CHANGE&&ur(r)};function Sr(e){return lr(e.clientTargetingFormula,void 0,e.name)}function Er(){dr||s(()=>document).then(()=>{document.addEventListener(Q,_r),dr=!0})}function Pr(e,t){if(void 0===t&&(t=""),"contains"===t)return _(()=>window.loomi_ctx.ctags?.some(t=>t.includes(e)))||!1;const n=["!","not in"].some(e=>t.includes(e)),r=_(()=>window.loomi_ctx.ctags.includes(e))||!1;return n?!r:r}function Ar(){return Promise.resolve(_(()=>!window.loomi_ctx.clientId))}function Ir(e){const t=hr(e),n=fr[t];n&&(n.forEach(e=>_(e.revert)),delete fr[t]),delete mr[t]}const br=function(e,t,n){try{let r;return Promise.resolve(n()).then(function(n){n?(xr(t,e),(yr(e.clientTargetingFormula)||function(e){return!!me("trigger-delayed-allocation")&&_(()=>["jsFunction","jsCondition"].includes(e.trigger.type))}(e))&&Jn(e)):r=1})}catch(e){return Promise.reject(e)}};function xr(e,t){return _(()=>{e.register(t.name,t.variant,t.gaVariant,t.gaName);const n=t.ga;return e.track(o.USE_CASE,{use_case:t.name,use_case_variant:t.variant,...t.version?{version:t.version}:{}},{isAudience:t.isAudience,isRedirect:t.isRedirect,immediate:t.immediate,gaName:t.gaName,gaVariant:t.gaVariant,...n?{reportGa:n}:{}})})}const Cr=new Set,kr=new Set,Tr=new Set,Nr=new Set;let Or;function jr(e){void 0===Or&&(Or=new MutationObserver(Lr(e)),Or.observe(document.body,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}function Lr(e){return()=>{$r(Cr,Tr,(t,n)=>{br(n,e,()=>(t.add(Rr(n.trigger.selector,n)),ar(n)))}),$r(kr,Nr,(t,n,r)=>{const o=n.trigger;t.add(Rr(o.selector,n)),r.addEventListener(o.name,()=>br(n,e,()=>ar(n)),{once:void 0!==o.once&&o.once})})}}function $r(e,t,n){e.forEach(e=>{_(()=>{const r=e.trigger.selector;document.body.querySelectorAll(r).forEach(o=>{t.has(Rr(r,e))||n(t,e,o)})})})}function Rr(e,t){return`${e}-${t.name}`}function Dr(e){const t=JSON.stringify({ts:(new Date).getTime(),...e});let n,r,o=0;if(0===t.length)return o;for(n=0;n<t.length;n++)r=t.charCodeAt(n),o=(o<<5)-o+r,o|=0;return o}function Ur(e){const t=Dr(e);return Br(t),v(()=>new Function(e.code)(window),e.timeoutMillis,e.retries,()=>void 0===Jr(t))}function Mr(e){return JSON.parse(localStorage.getItem(e)||"[]")}let qr=[];const Fr=function(e,t,n){_(()=>t.experiments.forEach(t=>{n&&n.matches(t)?n.onSubscribeCall(t):Gr(t,e)}))},Br=(e,t)=>{qr.push({handler:e,experienceKey:t})},Jr=e=>qr.find(t=>t.handler===e),Vr=function(e){qr.filter(t=>t.experienceKey===e).forEach(e=>{try{"number"!=typeof e.handler&&e.handler()}catch(e){}}),qr=qr.filter(t=>t.experienceKey!==e)};function Hr(e,t){Gr(e,t)}function Gr(t,n){switch(_(()=>t.trigger.type)){case e.PageLoad:!function(e,t){br(e,t,()=>ar(e))}(t,n);break;case e.Timeout:!function(e,t){const n=setTimeout(()=>{br(e,t,()=>ar(e))},e.trigger.timeoutMillis);Br(()=>{n&&clearTimeout(n)})}
69(t,n);break;case e.Inactivity:!function(e,t){const n=e.trigger.timeoutMillis;let r;function o(){clearTimeout(r),r=setTimeout(()=>{br(e,t,function(){try{return Promise.resolve(Sr(e)).then(function(t){return t&&ar(e),t})}catch(e){return Promise.reject(e)}})},n)}o();const c=["mousemove","keypress","scroll","touchstart","touchmove"];Br(()=>{clearTimeout(r),i(()=>document).then(()=>c.forEach(e=>document.removeEventListener(e,o)))}),s(()=>document,!0).then(()=>{c.forEach(e=>document.addEventListener(e,o,{passive:!0}))})}(t,n);break;case e.Selector:!function(e,t){jr(e),Cr.add(t),Lr(e)()}(n,t);break;case e.ExitIntent:!function(e,t){const n=r=>{_(()=>!r.toElement&&!r.relatedTarget)&&br(e,t,()=>{const t=ar(e);return i(()=>document).then(()=>{document.removeEventListener("mouseout",n)}),t})};s(()=>document,!0).then(()=>{document.addEventListener("mouseout",n,{passive:!0})}),Br(()=>{i(()=>document).then(()=>{document.removeEventListener("mouseout",n)})})}(t,n);break;case e.JSCondition:!function(e,t){Ur(e.trigger).then(()=>{br(e,t,()=>ar(e))}).catch(()=>{})}(t,n);break;case e.JSFunction:!function(e,t){!function(n){try{const r=new Function(`return async function() { ${n.code} }`)()(),o=Dr(n);Br(o),r.then(()=>void 0!==Jr(o)&&void br(e,t,()=>ar(e)))}catch(e){}}(e.trigger)}(t,n);break;case e.JSEvent:!function(e,t){const n=e.trigger,r="vsly-js-events";function o(n){n&&br(e,t,()=>ar(e))}const c=e=>{let t;try{t=new Function(n.jsEvent.matchCode)(e),localStorage.setItem(r,JSON.stringify([...Mr(r),{event:{detail:e.detail},ts:(new Date).valueOf()/1e3}].splice(0,25)))}catch(e){F("handleJsEvent",e),t=!1}o(t)};o(function(e,t){return _(()=>!!Mr(e).find(e=>{const n=e.ts;return(new Date).valueOf()/1e3-n<2628e3&&new Function(t)(e.event)}))}(r,n.jsEvent.matchCode)),s(()=>window).then(()=>{window.addEventListener(n.jsEvent.name,c)}),Br(()=>{i().then(()=>{window.removeEventListener(n.jsEvent.name,c)})})}(t,n);break;case e.Conjunction:!function(t,n){if(function(t){return[e.ExitIntent,e.Selector,e.Timeout].includes(t.trigger.condition.type)}(t)){const e=t.trigger;Ur(e.jsCond).then(()=>{Gr({...t,trigger:e.condition},n)}).catch(()=>{})}}(t,n);break;case e.ElementEvent:!function(e,t){jr(t),kr.add(e),Lr(t)()}(t,n)}}const zr=["vsly-backdrop-container","__loomi_crosshair_container"];function Kr(e){let t=_(()=>e.target),n=!1;for(;t;){if(zr.includes(_(()=>t.id))){n=!0;break}t=_(()=>t.parentElement)}n&&(q("vsly","about to stop propagation of event",e),_(()=>e.stopImmediatePropagation()),_(()=>e.stopPropagation()))}function Wr(e,t){const n=_(()=>window.Shopify.currency.active,"USD"),r=_(()=>window.Shopify.locale,"en-US"),o=new Intl.NumberFormat(r,{style:"currency",currency:n,minimumFractionDigits:!0===_(()=>window.visually.flags["op-locale-currency-always-show-decimals"],!1)?2:0,maximumFractionDigits:2});if(t){if(Zr()){const t=_(()=>window.visually.priceRound)||Math.round;return o.format(t(e,n))}return o.format(e)}const i=_(()=>window.Shopify.currency.rate,"1");let s=Number.parseFloat(i);s=Number.isNaN(s)?1:s;let c=e*s;return 1!=s&&me("exchange-fee")&&(c*=1.02),c=Qr(s,c,n),o.format(c)}const Qr=(e,t,n)=>1!==e&&me("exchange-round")||Zr()?(_(()=>window.visually.priceRound)||Math.round)(t,n):t;function Yr(){const e=_(()=>!0===window.visually.flags["kill-locale-currency"]),t=_(()=>window.Shopify.currency,{}),n=!!_(()=>t.active),r=_(()=>t.rate),o=!!r&&!Number.isNaN(Number.parseFloat(r));return!e&&n&&o}const Zr=()=>!me("op-locale-currency-no-round");let Xr=window.location.href;const eo=()=>{requestAnimationFrame(()=>{Xr!==window.location.href&&(Xr=window.location.href,window.dispatchEvent(new CustomEvent("vslyUrlChanged",{detail:{prev:Xr,curr:window.location.href}})))})};var to;!function(e){e.NONE="none",e.YOTPO="yotpo"}(to||(to={}));const no={isMember:!1,provider:to.NONE};function ro(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}const oo="vsly-loyalty-ctx",io=(()=>{const e=["swell:customer:updated","swell:redemption","swell:initialized","swell:setup","vsly:loyalty-changed"];let t;const n=()=>{const e=_(()=>window.swellConfig.customer);return e?{id:e.local_customer_id,providerId:e.id,email:e.email,earnedPoints:e.points_earned,isMember:!0===e.is_member,pointsBalance:e.points_balance,adjustedPointsBalance:_(()=>e.adjusted_points_balance,0),provider:to.YOTPO}:no},r=e=>{_(()=>"vsly:loyalty-changed"===e.type)&&_(()=>window.swellAPI.refreshCustomerDetails()),t(n())};return{provide:n,onChange:function(n){try{t=n;const o=ro(function(){return Promise.resolve(v(()=>
69!!window.jQuery,50,200)).then(function(){e.forEach(e=>{window.jQuery(document).on(e,r)})})},function(){e.forEach(e=>{document.addEventListener(e,r)})});return Promise.resolve(o&&o.then?o.then(function(){}):void 0)}catch(e){return Promise.reject(e)}},connect:()=>v(()=>!!_(()=>window.swellConfig.customer.local_customer_id),400,20),disconnect:function(){try{const t=ro(function(){return Promise.resolve(v(()=>!!window.jQuery,50,200)).then(function(){e.forEach(e=>{window.jQuery(document).off(e,r)})})},function(){e.forEach(e=>{document.removeEventListener(e,r)})});return Promise.resolve(t&&t.then?t.then(function(){}):void 0)}catch(e){return Promise.reject(e)}}}})();function so(e){et(Xe.LOYALTY_CHANGE,e),sessionStorage.setItem(oo,JSON.stringify({ts:(new Date).getTime(),ctx:e})),window.loomi_ctx={...window.loomi_ctx||{},loyalty:e}}const co="vsly_session";function ao(e){return Et((e||"").replace("+"," "))}function uo(){const e=window.loomi_ctx.storeAlias,t={id:W(e+window.loomi_ctx.userId+f()+It()+fo()),utm_campaign:It(),last_interaction:new Date,landing_page:_(()=>location.href,""),start_at:new Date};return lo(t),t}function lo(e){const t=JSON.stringify(e);localStorage.setItem(co,t),window.loomi_ctx.session=e}function mo(){const e=function(){window.loomi_ctx=window.loomi_ctx||{};let e=window.loomi_ctx.session||_(()=>{const e=JSON.parse(localStorage.getItem(co));return e.last_interaction=new Date(e.last_interaction),e.start_at=new Date(e.start_at),e})||uo();return function(e){const t=new Date,n=e.last_interaction;return(t.valueOf()-n.valueOf())/6e4>30||ao(It())!==ao(e.utm_campaign)||e.last_interaction.getDate()!==t.getDate()}(e)&&(e=uo()),window.loomi_ctx.session=e,e}();e.last_interaction=new Date,lo(e)}const fo=()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15);function ho(e,t){try{var n=e()}catch(e){return t(!0,e)}return n&&n.then?n.then(t.bind(null,!1),t.bind(null,!0)):t(!1,n)}const po=function(e,t,r){void 0===r&&(r=1e3);try{return vo?(console.debug("vsly-sdk","cannot reload since another reload is in progress"),Promise.resolve()):(vo=!0,Promise.resolve(ho(function(){console.debug("vsly-sdk","about to reload sdk");const o=me("sdk-reconcile")?Promise.resolve(function(e,t,n){try{return Promise.resolve(n(t,e)).then(function(e){let{configuration:t}=e;const n=_(()=>window.loomi.conf.experiments)||[],r=new Map,o=t.experiments||[],i=new Map,s=new Set(Object.keys(fr)),c=C();n.forEach(e=>r.set(Wn(e),e)),o.forEach(e=>i.set(Wn(e),e)),(e=>{window.loomi={..._(()=>window.loomi)||{},conf:e},window.visually={..._(()=>window.visually)||{},flags:e.flags,recsPerVariant:Xn(e)},zn(e.flags)})(t),((e,t,n)=>{e.forEach((e,r)=>{t.has(r)||(n.has(r)&&Ir(e),Vr(r))})})(r,i,s),document.dispatchEvent(Object.assign(new Event("reset-widget"),{value:"reload"})),document.dispatchEvent(Object.assign(new Event("targeting-changed"),{value:"#reload",key:"CART_CHANGE"})),((e,t,n,r)=>{e.forEach((e,o)=>{const i=t.get(o);i?Qn(i)!==Qn(e)&&(r.has(o)&&Ir(i),Vr(o),un([e]),Hr(e,n)):(un([e]),Hr(e,n))})})(i,r,c,s)})}catch(e){return Promise.reject(e)}}(e,t,wo)).then(function(){}):Promise.resolve(function(){try{return dr&&i(()=>document).then(()=>{document.removeEventListener(Q,_r),dr=!1}),qr.forEach(e=>{try{"number"!=typeof e.handler&&e.handler()}catch(e){}}),qr=[],Array.from($.keys()).forEach(e=>{Qe(e)}),Ve&&Ve.disconnect(),Promise.resolve()}catch(e){return Promise.reject(e)}}()).then(function(){return Promise.resolve((o=r,void 0===o&&(o=40),new Promise(e=>setTimeout(e,o)))).then(function(){return Promise.resolve(function(e,t){try{return void 0===e&&(e=n.PROD),Promise.resolve(ho(function(){return function(r,o){try{var i=(function(){if(window.vsly_blocked)throw Ln(),new Error(Fn)}(),function(e,t){window.loomi_ctx=window.loomi_ctx||{},window.loomi_ctx.env=window.loomi_ctx.env||e,window.loomi_ctx.storeAlias=window.loomi_ctx.storeAlias||t}(e,t),Promise.resolve(function(e,t){try{return void 0===e&&(e=n.PROD),Promise.resolve(yo(t,e,void 0)).then(function(n){let{configuration:r,tracking:o}=n;return go(r,t,e,o)})}catch(e){return Promise.reject(e)}}(e,t)).then(function(n){let{jitsu:r,configuration:o}=n;if(!_(()=>o.flags["kill-switch"]))return Promise.resolve(Je()).then(function(){un(o.experiments),Fr(r,o),Kn(e,t,po),mt()})}))}catch(e){return o(e)}return i&&i.then?i.then(void 0,o):i}(0,function(e){_(()=>e.message)!==Fn&&F("failed initialising sdk",e)})},function(e,t){if(Ln(),e)throw t;return t}))}catch(e){return Promise.reject(e)}}(e,t)).then(function(){})});var o});if(o&&o.then)return o.then(function(){})},function(e,t){if(vo=!1,e)throw t;return t})))}catch(e){return Promise.reject(e)}};let vo=!1;const wo=function(e,t,n){try{return m(),Promise.resolve(qn(e,t,n))}catch(e){return Promise.reject(e)}},yo=function(e,t,n){try{return _(mo),m(),Promise.resolve(qn(e,t,n))}catch(e){return Promise.reject(e)}},go=function(e,t,n,r){try{return zn(e.flags),function(e,t,n,r,o,i){Er(),window.loomi_ctx={..._(()=>window.loomi_ctx)||{},env:t,storeAlias:e,apply:e=>{un([e]),ar(e)},shouldApply:lr};const s=_(()=>
69o.productId),c=window.loomi_ctx;s&&!c.productId&&(c.productId=s);const a=_(()=>o.variantId);a&&!c.variantId&&(c.variantId=a),window.loomi={..._(()=>window.loomi)||{},conf:n},window.visually={..._(()=>window.visually)||{},flags:n.flags,enabledIntegrations:n.integrations,recsPerVariant:Xn(n),sdk_api:{addToCart:mn,recommendProducts:Pn,getProductsMetafields:$n,fetchRecs:Cn},reAllocate:i,rerender:Yn,reload:function(){try{return Promise.resolve(r(t,e,1e3)).then(function(){})}catch(e){return Promise.reject(e)}}}}(t,n,e,po,Nt(),wo),function(e){try{if(e.noActiveThemeTests&&Ce()){if(Pe(0))return;be()}else(e=>!(e.experiments||[]).find(e=>e.isThemeTest)&&_(Ce)&&!![localStorage,sessionStorage].find(je))(e)&&be()}catch(e){}}(e),Promise.resolve(Eo()).then(function(){var o,c,a,l;(function(e,t,n){window.loomi_api||(window.loomi_api={}),window.loomi_api.when=w,window.loomi_api.awaitCondition=v,window.loomi_api.loadVisuallyLib=h,window.loomi_api.queryProducts=Rn,window.loomi_api.debounce=u,window.loomi_api.allocatorQuery=e=>function(e,t){try{function n(){return Promise.resolve(r)}const r={results:{}},o={...e};o.queries=function(e,t){return e.queries.filter(e=>{const n=_(()=>e.oneOf.productInfo);if(n){const r=Tn(n.handle),o=sessionStorage.getItem(r);if(!o)return!0;const i=JSON.parse(o);return!!function(e,t){return!((!e.includeCollections||t.collections)&&(!e.includeTags||t.tags)&&(!e.includeSales||t.sales)&&(!e.includeVariants||t.variants))}(n,i)||(i.cached=!0,t.results[e.name]=i,!1)}const r=_(()=>e.oneOf.handlesByTag);if(r){const n=Nn(r),o=sessionStorage.getItem(n);if(!o)return!0;const i=JSON.parse(o);return i.cached=!0,t.results[e.name]=i,!1}const o=_(()=>e.oneOf.handlesByCollection);if(o){const n=On(o),r=sessionStorage.getItem(n);if(!r)return!0;const i=JSON.parse(r);return i.cached=!0,t.results[e.name]=i,!1}return!0})}(e,r);const i=function(){if(o.queries.length>0){const{query:e,hashedQuery:n}=function(e,t){e.timestamp=`${jn(4)}${t}${jn(5)}`,e.alias=window.loomi_ctx.storeAlias||"",e.userId=window.loomi_ctx.userId||"";const n=g(e);return{query:n,hashedQuery:(n+window.loomi_ctx.userId+window.loomi_ctx.storeAlias+t).split("").reduce((e,t)=>(e=(e<<5)-e+t.charCodeAt(0))&e,0)}}(o,t),i=Vn(window.loomi_ctx.env).cfgUrl.replace("/allocate",`/query?q=${e}&h=${n}`);return Promise.resolve(fetch(i)).then(function(e){const t=function(){if(e.ok)return Promise.resolve(e.json()).then(function(e){e.results&&Object.entries(e.results).forEach(e=>{let[t,n]=e;!function(e,t,n){if(t)if("ProductInfo"===t.kind){const r=n.queries.find(t=>t.name===e);r&&(_(()=>r.oneOf.productInfo.includeTags,!1)&&!t.tags&&(t.tags=[]),_(()=>r.oneOf.productInfo.includeCollections,!1)&&!t.collections&&(t.collections=[]),_(()=>r.oneOf.productInfo.includeSales,!1)&&!t.sales&&(t.sales=""),_(()=>r.oneOf.productInfo.includeVariants,!1)&&!t.variants&&(t.variants=[]),sessionStorage.setItem(Tn(t.handle),JSON.stringify(t)))}else if("HandlesByCollection"===t.kind){const r=n.queries.find(t=>t.name===e);if(r){const e=_(()=>r.oneOf.handlesByCollection,"")||"";sessionStorage.setItem(On(e),JSON.stringify(t))}}else if("HandlesByTag"===t.kind){const r=n.queries.find(t=>t.name===e);if(r){const e=_(()=>r.oneOf.handlesByTag,"")||"";sessionStorage.setItem(Nn(e),JSON.stringify(t))}}}(t,n,o),r.results[t]=n})})}();if(t&&t.then)return t.then(function(){})})}}();return Promise.resolve(i&&i.then?i.then(n):n())}catch(s){return Promise.reject(s)}}(e,`${(new Date).getTime()+Math.round(1e6*Math.random())}`),window.loomi_api.openProductOverlay=er,_(()=>e.shopApi.forEach(e=>{let{js:t,windowKey:n}=e;try{window.loomi_api[n]=new Function(t)}catch(e){}})),window.loomi_api.formatLocaleMoney=function(){var e=[].slice.call(arguments);return n()?t(...e):(_(()=>window.loomi_api.formatMoney)||(()=>`${_(()=>e[0],"")}`))(...e)},window.loomi_api.redirectTest=ee})(e,Wr,Yr),a=e.first_seen,(c=e.uid)!==(l=r.id)&&c&&a>0?(window.loomi_ctx.userId=c,Zt(c,a)):window.loomi_ctx.userId=l,function(e,t){try{return _(()=>window.loomi_ctx.cc)&&v(b,1e3,120).then(()=>Zt(e,t||(new Date).getTime()/1e3)),Promise.resolve()}catch(e){return Promise.reject(e)}}(window.loomi_ctx.userId,a),(o=e.flags)["sdk-auto-clean"]&&!o["sdk-kill-auto-clean"]&&h("price_test_cleanup_v2",{async:!1,defer:!0}).then(),_(()=>!0===window.visually.flags["op-focus-trap-removal"])&&s(()=>document,!0).then(()=>{document.addEventListener("focusin",Kr,{capture:!0,passive:!0}),document.addEventListener("mousedown",Kr,{capture:!0,passive:!0}),document.addEventListener("touchstart",Kr,{capture:!0,passive:!0}),document.addEventListener("touchend",Kr,{capture:!0,passive:!0})}),function(e,t){if(me("kill-sdk-reload-url-detection")||!me("sdk-reload")&&!["/products/","/collections/"].find(e=>window.location.href.includes(e)))return;const n=function(){const r=(()=>{requestAnimationFrame(()=>{(me("sdk-reload-url-detection-href")?So!==window.location.href:new URL(So).pathname!==new URL(window.location.href).pathname)&&(So=window.location.href,n(),_o(e,t,10))})})||eo,o=["click","touchend","pdpresp"];return s(()=>document.body,!0).then(()=>
69{o.forEach(e=>document.body.addEventListener(e,r,!0))}),()=>{i(()=>document.body).then(()=>{o.forEach(e=>{document.body.removeEventListener(e,r,!0)})})}}()}(n,t),function(){try{return Promise.resolve(function(e,t){try{var n=function(){so(function(){const e=sessionStorage.getItem(oo);if(e){const t=_(()=>JSON.parse(e));if(t&&t.ts>(new Date).getTime()-3e5)return t.ctx}}()||no);const e=_(()=>!0===window.visually.flags["loyalty-targeting"]),t=function(){if(e)return Promise.resolve(function(e){try{return e.onChange(e=>{so(e)}),Promise.resolve(e.connect()).then(function(){const t=e.provide();return so(t),{ctx:t,disconnect:e.disconnect}})}catch(e){return Promise.reject(e)}}(io)).then(function(){const e=document.querySelectorAll('[href*="/account/logout"]');e&&Array.from(e).forEach(e=>{e.addEventListener("click",()=>(sessionStorage.removeItem(oo),!0))})})}();if(t&&t.then)return t.then(function(){})}()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}(0,function(e){console.debug("vsly-loyalty","unable to find loyalty provider",e)}))}catch(e){return Promise.reject(e)}}();const d=C();return{configuration:e,jitsu:d}})}catch(e){return Promise.reject(e)}},_o=u(po,10);let So=window.location.href;const Eo=function(){try{return Promise.resolve(function(){if(me("block-do-not-track"))return Promise.resolve(x()).then(function(e){if(!e)throw new Error(Fn)})}())}catch(e){return Promise.reject(e)}};function Po(e){return e.startsWith("https://")?e.substring(8):e}function Ao(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return""}}var Io;!function(e){e.SIGNUP="SIGNUP",e.ADD_TO_CART="ADD_TO_CART",e.CHANGE_QTY="CHANGE_QTY",e.REMOVE_FROM_CART="REMOVE_FROM_CART",e.PAGE_LOAD="PAGE_LOAD",e.CLICK="CLICK",e.LOGIN="LOGIN",e.LOGOUT="LOGOUT",e.TIME_SPENT="TIME_SPENT",e.USE_CASE="USE_CASE",e.LEAD_SUBMISSION_EMAIL="LEAD_SUBMISSION_EMAIL",e.LEAD_SUBMISSION_PHONE="LEAD_SUBMISSION_PHONE"}(Io||(Io={}));let bo=[];const xo=function(e,t){if(void 0===t&&(t=0),0===bo.length)return;const n=bo;bo=[];const r=ko(n),o=Co(n);e({bulk:o,shared:r},!0).catch(()=>{const r=n.concat(bo);r.length<100&&(bo=r,t<2&&setTimeout(()=>xo(e,t+1),500*Math.pow(2,t)))})};u(xo,100);const Co=e=>e.map(e=>{const t=JSON.parse(JSON.stringify(e));return delete t.user,delete t.event_id,delete t.user_agent,delete t.utc_time,delete t.local_tz_offset,delete t.doc_host,delete t.ids_ga,delete t.alias,delete t.userCanBeTracked,delete t.userDataCanBeSold,delete t.edgetag,delete t.api_key,delete t.src,t}),ko=e=>{const t=_(()=>String(e[0].user.anonymous_id),""),n=_(()=>String(e[0].user_agent),""),r=_(()=>String(e[0].event_id),""),o=_(()=>String(e[0].utc_time),""),i=_(()=>Number(e[0].local_tz_offset)||0),s=_(()=>String(e[0].doc_host),""),c=_(()=>String(e[0].ids_ga),""),a=_(()=>String(e[0].alias),""),u=_(()=>Boolean(e[0].userCanBeTracked),!0),l=_(()=>Boolean(e[0].userDataCanBeSold),!0),d=_(()=>String(e[0].edgetag),""),m=_(()=>String(e[0].api_key),""),f=_(()=>String(e[0].src),"");return Object.entries({anonymous_id:t,event_id:r,user_agent:n,utc_time:o,local_tz_offset:i,doc_host:s,ids_ga:c,alias:a,userCanBeTracked:u,userDataCanBeSold:l,edgetag:d,api_key:m,src:f}).reduce((e,t)=>{let[n,r]=t;if(r){if("undefined"===r)return e;e[n]=r}return e},{})},To=function(e){try{let r;function t(e){return r?e:Promise.resolve(!1)}const o=function(){if(_(()=>e.eventPayload.bulk.length>0,!1)){const t=_(()=>JSON.parse(JSON.stringify(e.eventPayload.bulk[0])),void 0);if(!t){const e=Promise.resolve(!1);return r=1,e}const o=_(()=>JSON.parse(JSON.stringify(t.ga)),void 0);return delete t.ga,Promise.resolve(function(e){try{return Promise.resolve(function(t,r){try{var o=function(){const t=window.loomi_ctx.jitsuKey,r=function(e){const t={trackingHost:"https://live.visually-io.com"};return e===n.TEST&&(t.trackingHost="http://localhost:8088"),e===n.STAGE&&(t.trackingHost="https://sdk.loomi-stg.xyz"),t}(window.loomi_ctx.env).trackingHost;return Promise.resolve(fetch(`${r}/api/s?token=${t}&bulk=1`,{headers:{"content-type":"text/plain"},body:JSON.stringify(e.eventPayload),method:"POST",mode:"cors",credentials:"omit",keepalive:!0})).then(function(e){return e.ok})}()}catch(e){return r(e)}return o&&o.then?o.then(void 0,r):o}(0,function(e){return console.error("vsly: Failed to send event",e),!1}))}catch(e){return Promise.reject(e)}}(e)).then(function(n){return Promise.resolve(function(e){try{try{const t=e.eventPayload,n=t.bulk[0],r=window.loomi_ctx.env,o=t.shared,i=g({experienceId:n.use_case,variantId:n.use_case_variant,storeAlias:o.alias,anonymousId:o.anonymous_id,version:n.version}),s=new URL(Vn(r).cfgUrl.replace("/allocate","/match"));s.searchParams.append("q",i),fetch(s.toString())}catch(e){console.error("vsly: Failed to persist allocation",e)}return Promise.resolve()}catch(e){return Promise.reject(e)}}(e)).then(function(){return o&&C().trackExt(t,o).then().catch(e=>{console.error("vsly: Failed track ext event",e,t,o)}),r=1,n})})}}();return Promise.resolve(o&&o.then?o.then(t):t(o))}catch(i){return Promise.reject(i)}},No="vsly_analytics_queue";function Oo(e,t,n){void 0===n&&(n=!1);try{const r=window.loomi_ctx,o=r.storeAlias,i=r.jitsuKey,s=Pt(),c={id:`${Date.now()}-${Math.random().toString(36).substring(2,9)}`,timestamp:Date.now(),eventPayload:{bulk:[{url:location.href,doc_path:location.pathname,doc_search:location.search,sid:r.session.id,sid_start:r.session.start_at,utm:s.utm,lmi_params:s.lmi_params,event_type:"USE_CASE",use_case:e._USE_CASE,use_case_variant:e._USE_CASE_VARIANT,version:e._USE_CASE_VERSION||1,ga:{isAudience:!1,gaName:e._USE_CASE_GA||e._USE_CASE,gaVariant:e._USE_CASE_GA_VARIANT||e._USE_CASE_VARIANT,reportGa:n}}],shared:{anonymous_id:t.id,user_agent:navigator.userAgent,utc_time:(new Date).toISOString(),local_tz_offset:(new Date).getTimezoneOffset(),doc_host:location.host,alias:o,api_key:i}},retries:0},a=jo();a.push(c),Lo(a)}catch(e){console.error("vsly: Failed to queue analytics event",e)}}function jo(){try{const e=localStorage.getItem(No);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return console.error("vsly: Failed to read analytics queue",e),[]}}function Lo(e){try{localStorage.setItem(No,JSON.stringify(e))}catch(e){console.error("vsly: Failed to save analytics queue",e)}}const $o=(e,t)=>{try{localStorage.setItem(e,JSON.stringify({variant:t.experiment.variant,version:t.experiment.version||0}))}catch(e){}},Ro=(e,t)=>{let n=null;try{const r=localStorage.getItem(e);if(r){let e;const o=JSON.parse(r);if(o&&"object"==typeof o&&"variant"in o){e=o;const r=t.find(t=>t.experiment.variant===e.variant);r&&(r.experiment.version||0)===(e.version||0)&&(n=r)}}}catch(e){}return n},Do=e=>`vsly_redirect_test_${e[0].experiment.name}`,Uo=(e,t)=>{if(e){const n=e.experiment;t.some(e=>{const t=e.experiment;return t.variant===n.variant&&t.version===n.version})||(e=!1)}if(!e){const n=100*Math.random();let r=0;for(const o of t)if(r+=o.targeting.chance,n<=r){e=o;break}}return e},Mo=function(e){void 0===e&&(e=!0);const t=window.loomi_ctx.consent;t.allowed=e,t.fin||(t.fin=qo())},qo=()=>(new Date).getTime(),Fo=()=>window.Shopify.customerPrivacy,Bo=["AT","BE","BG","HR","CY","CZ","DK","EE","FI","FR","DE","GR","HU","IE","IT","LV","LT","LU","MT","NL","PL","PT","RO","SK","SI","ES","SE","NO","IS","LI"],Jo=function(e){void 0===e&&(e=!0);const t=window.loomi_ctx.consent;t.allowed=e,t.fin||(t.fin=Vo())},Vo=()=>(new Date).getTime(),Ho=()=>window.Shopify.customerPrivacy,Go=()=>Promise.resolve(),zo=()=>(window.loomi_ctx=window.loomi_ctx||{},window.loomi_ctx.performanceMetrics=window.loomi_ctx.performanceMetrics||{},window.loomi_ctx.performanceMetrics);function Ko(){try{const e=zo().as;
69if(void 0===e)return;const t=performance.now();Object.assign(zo(),{ae:t,ad:t-e}),(e=>{try{if("function"!=typeof performance.getEntriesByType)return;const t=performance.getEntriesByType("resource").filter(t=>t.startTime>=e&&(e=>{try{return new URL(e.name).pathname.endsWith("/allocate")}catch{return!1}})(t)).pop();if(!t)return;Object.assign(zo(),{ars:t.startTime,afs:t.fetchStart,aqs:t.requestStart,aps:t.responseStart,ape:t.responseEnd,ard:t.duration,ardl:t.startTime-e,aprd:t.requestStart-t.startTime,arwd:t.responseStart-t.requestStart,ardd:t.responseEnd-t.responseStart})}catch{}})(e)}catch(e){}}function Wo(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function Qo(){return _(mo),Yt(),function(e){void 0===e&&(e=window.loomi_ctx.embeddedTests);try{if(!e)return;if(0===e.length)return;const t=e.filter(e=>e.experiment.isThemeTest);t.length>0&&function(e){const t=Do(e);let n=Ro(t,e);if(n=Uo(n,e),!n)return;if(!n.experiment)return;$o(t,n);const r=n.experiment,o=_(()=>r.code.find(e=>"themeTest"===e.kind).value.targetThemeId)||0,i=ne({experienceId:r.name,variantId:r.variant,version:r.version,gaExperienceName:r.gaName,gaVariantName:r.gaVariant});Oo(i,Yt(),_(()=>!!r.ga)||!1),Ee(i,o)}(t);const n=e.filter(e=>!e.experiment.isThemeTest);n.length>0&&function(e){const t=e.filter(e=>function(e){if(!e)return!0;try{const t=e.match(/UrlTarget\(([^)]+)\)/);if(!t)return!1;const n=function(e){try{const t=e.match(/^"([^"]*)",\s*"([^"]*)",\s*(true|false)$/);return t?{value:t[1],op:t[2],includeQueryParam:"true"===t[3]}:null}catch{return null}}(t[1]);return!!n&&function(e,t,n){const r=window.location.search||"",o=window.location.href||"",i=(s=function(e){const t=e.startsWith("/")?e:"/"+e,n=t.split("/");if(n.length<2)return t;const r=n[1];let o=!1;return r.length>0&&r.length<=7&&(2===r.length||r.length>2&&"-"===r[2])&&(o=!0),o?"/"+n.slice(2).join("/"):t}(window.location.pathname),["STORY_IL","MAYVEN_GLOBAL","JDSPORT_IL"].includes(window.loomi_ctx.storeAlias)?s.toLowerCase():s);var s;const{hostPath:c,rawQuery:a}=function(e){const t=Po(e),n=t.indexOf("?");return-1!==n?{hostPath:t.substring(0,n),rawQuery:t.substring(n+1)}:{hostPath:t,rawQuery:""}}(e),u=c.toLowerCase();let l=Po(o.split("?")[0]).toLowerCase(),d="",m=u;if(d=(new URL(o).host+i).toLowerCase(),n){const e=r?Ao(r.substring(1)):"";if(e&&(l+="?"+e,d+="?"+e),a){const e=Ao(a);e&&(m+="?"+e)}}return function(e,t,n,r){switch(r){case"contains":return e.includes(n)||t.includes(n);case"matches":try{const r=new RegExp(n);return r.test(e)||r.test(t)}catch{return!1}case"==":return e===n||t===n;case"!=":return e===t?e!==n:t!==n;default:return!1}}(l,d,m,t)}(n.value,n.op,n.includeQueryParam)}catch(e){return console.error("vsly: Failed to evaluate targeting formula",e),!1}}(e.targeting.formula));if(0===t.length)return;const n=Do(t);let r=Ro(n,t);if(r=Uo(r,t),!r)return;if(!r.experiment)return;$o(n,r);const o=r.experiment,i=ne({experienceId:o.name,variantId:o.variant,version:o.version,gaExperienceName:o.gaName,gaVariantName:o.gaVariant});Oo(i,Yt(),_(()=>!!o.ga)||!1);const s=_(()=>o.code.find(e=>"pageRedirect"===e.kind).value);s&&ee(i,s.destUrl,s.redirectAfter||1,s.retainQueryParams,s.stickinessMode)}(n)}catch(e){console.error("vsly ETT",e)}}(),window.vsly_redirecting}const Yo=()=>window.loomi_ctx.blockingConcent;(function(){try{let t;function e(e){if(t)return e;(function(){const e=jo();e.length>0&&Promise.allSettled(e.map(To)).then(t=>{Lo(e.filter((e,n)=>{const r=t[n];return("fulfilled"!==r.status||!r.value)&&(e.retries++,(e=>!(Date.now()-e.timestamp>18e5||e.retries>3))(e))}))}).catch(e=>{console.error("vsly: Failed to process analytics queue",e)})})(),(()=>{const e=()=>{const e=se();return!!e&&!Bo.includes(e)};return new Promise((t,n)=>{const r=window.loomi_ctx.consent||={};r.init=Vo(),(se()?Go():v(se,50,200)).then(()=>{e()&&(Jo(),t())}),(_(()=>Ho().analyticsProcessingAllowed)?Go():v(()=>_(()=>Ho().analyticsProcessingAllowed),50,200)).then(()=>{const r=Ho().analyticsProcessingAllowed()||e();Jo(r),r?t():n()}),r.ccListener||(document.addEventListener("visitorConsentCollected",r=>{const o=r.detail.analyticsAllowed||e();Jo(o),o?t():n()}),r.ccListener=!0)})})().catch(),function(){try{zo().as=performance.now()}catch(e){}}();const s=yo(o,i);return s.then(Ko),s.then(e=>{let{configuration:t,tracking:r}=e;return(e=>{p("vsly-a",`${(e=>e==n.STAGE?"https://sdk.loomi-stg.xyz/":"https://assets.visually.io/")(e)}v/visually-a.js?cb=${window.loomi_ctx.sdk_version}`,{defer:!0}).catch()}
69)(i),function(e){let{configuration:t,tracking:n}=e;try{return Promise.resolve(function(e,t){try{const{storeAlias:n,env:r}=window.loomi_ctx;return Promise.resolve(Wo(function(){return Promise.resolve(go(e,n,r,t)).then(function(e){let{jitsu:t,configuration:o}=e;if(!_(()=>o.flags["kill-switch"]))return Promise.resolve(Je()).then(function(){un(o.experiments),Fr(t,o),Kn(r,n,po),mt()})})},function(e){_(()=>e.message)!==Fn&&F("fail initialising sdk",e)}))}catch(e){return Promise.reject(e)}}(t,n)).then(function(){window.dispatchEvent(new Event("visually_loaded"))})}catch(e){return Promise.reject(e)}}({configuration:t,tracking:r})}).catch(r).finally(Ln)}const r=e=>console.error(e);if(window.fetch&&(window.vslyNativeFetch=window.fetch),window.vsly_init=!0,window.vslyIntegrationType="static",(()=>{if(_(()=>window.visually_io_editor))return!0;const e=_(()=>window.loomi_ctx.ttl);return!("number"!=typeof e||!Number.isFinite(e)||e<=0)&&e<Math.floor(Date.now()/1e3)})())return console.log("sdk blocked"),Promise.resolve();window.loomi_ctx.sdk_version="0.12.169";const{storeAlias:o,env:i}=window.loomi_ctx;if(!Yo()&&Qo())return Promise.resolve();const s=function(){if(Yo()){function e(e){return t?e:window.loomi_ctx.consent.allowed?void(Qo()&&(t=1)):(Ln(),void(t=1))}const n=Wo(function(){return Promise.resolve((console.log("consent api init"),new Promise((e,t)=>{const n=window.loomi_ctx.consent||={};n.init=qo(),(_(()=>Fo().analyticsProcessingAllowed)?Promise.resolve():v(()=>_(()=>Fo().analyticsProcessingAllowed),50,200)).then(()=>{const n=window.Shopify.customerPrivacy.analyticsProcessingAllowed();console.log("consent api",n),Mo(n),n?e():t()}),n.ccListener||(document.addEventListener("visitorConsentCollected",()=>{const n=window.Shopify.customerPrivacy.analyticsProcessingAllowed();console.log("visitorConsentCollected",n),Mo(n),n?e():t()}),n.ccListener=!0)}))).then(function(){})},function(){Ln(),t=1});return n&&n.then?n.then(e):e(n)}}();return Promise.resolve(s&&s.then?s.then(e):e(s))}catch(c){return Promise.reject(c)}})().then(()=>console.log("vsly sdk with embed init"))}(); 70 71</script>
vendor: 1 bytes, line 71
71
72<script data-vsly="preact2" type="text/javascript" data-em-disable> 73 // Preact 74!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):n(e.preact={})}(this,function(e){var b,n,t,_,o,r,l,x={},C=[],u=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function w(e,n){for(var t in n)e[t]=n[t];return e}function g(e){var n=e.parentNode;n&&n.removeChild(e)}function i(e,n,t){var _,o=arguments,l={};for(_ in n)"key"!==_&&"ref"!==_&&(l[_]=n[_]);if(3<arguments.length)for(t=[t],_=3;_<arguments.length;_++)t.push(o[_]);if(null!=t&&(l.children=t),"function"==typeof e&&null!=e.defaultProps)for(_ in e.defaultProps)void 0===l[_]&&(l[_]=e.defaultProps[_]);return k(e,l,n&&n.key,n&&n.ref,null)}function k(e,n,t,_,o){var l={type:e,props:n,key:t,ref:_,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:o};return null==o&&(l.__v=l),b.vnode&&b.vnode(l),l}function S(e){return e.children}function P(e,n){this.props=e,this.context=n}function N(e,n){if(null==n)return e.__?N(e.__,e.__.__k.indexOf(e)+1):null;for(var t;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e)return t.__e;return"function"==typeof e.type?N(e):null}function c(e){var n,t;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,n=0;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e){e.__e=e.__c.base=t.__e;break}return c(e)}}function s(e){(!e.__d&&(e.__d=!0)&&t.push(e)&&!p.__r++||o!==b.debounceRendering)&&((o=b.debounceRendering)||_)(p)}function p(){for(var e;p.__r=t.length;)e=t.sort(function(e,n){return e.__v.__b-n.__v.__b}),t=[],e.some(function(e){var n,t,_,o,l,r,u;e.__d&&(r=(l=(n=e).__v).__e,(u=n.__P)&&(t=[],o=D(u,l,(_=w({},l)).__v=_,n.__n,void 0!==u.ownerSVGElement,null,t,null==r?N(l):r),d(t,l),o!=r&&c(l)))})}function E(e,n,t,_,o,l,r,u,i,c){var s,p,f,a,d,h,y,v=_&&_.__k||C,m=v.length;for(i==x&&(i=null!=r?r[0]:m?N(_,0):null),t.__k=[],s=0;s<n.length;s++)if(null!=(a=t.__k[s]=null==(a=n[s])||"boolean"==typeof a?null:"string"==typeof a||"number"==typeof a?k(null,a,null,null,a):Array.isArray(a)?k(S,{children:a},null,null,null):null!=a.__e||null!=a.__c?k(a.type,a.props,a.key,null,a.__v):a)){if(a.__=t,a.__b=t.__b+1,null===(f=v[s])||f&&a.key==f.key&&a.type===f.type)v[s]=void 0;else for(p=0;p<m;p++){if((f=v[p])&&a.key==f.key&&a.type===f.type){v[p]=void 0;break}f=null}d=D(e,a,f=f||x,o,l,r,u,i,c),(p=a.ref)&&f.ref!=p&&(y=y||[],f.ref&&y.push(f.ref,null,a),y.push(p,a.__c||d,a)),null!=d?(null==h&&(h=d),i=U(e,a,f,v,r,d,i),"option"==t.type?e.value="":"function"==typeof t.type&&(t.__d=i)):i&&f.__e==i&&i.parentNode!=e&&(i=N(f))}if(t.__e=h,null!=r&&"function"!=typeof t.type)for(s=r.length;s--;)null!=r[s]&&g(r[s]);for(s=m;s--;)null!=v[s]&&W(v[s],v[s]);if(y)for(s=0;s<y.length;s++)T(y[s],y[++s],y[++s])}function U(e,n,t,_,o,l,r){var u,i,c;if(void 0!==n.__d)u=n.__d,n.__d=void 0;else if(o==t||l!=r||null==l.parentNode)e:if(null==r||r.parentNode!==e)e.appendChild(l),u=null;else{for(i=r,c=0;(i=i.nextSibling)&&c<_.length;c+=2)if(i==l)break e;e.insertBefore(l,r),u=r}return void 0!==u?u:l.nextSibling}function f(e,n,t){"-"===n[0]?e.setProperty(n,t):e[n]="number"==typeof t&&!1===u.test(n)?t+"px":null==t?"":t}function A(e,n,t,_,o){var l,r,u,i,c;if(o?"className"===n&&(n="class"):"class"===n&&(n="className"),"style"===n)if(l=e.style,"string"==typeof t)l.cssText=t;else{if("string"==typeof _&&(l.cssText="",_=null),_)for(i in _)t&&i in t||f(l,i,"");if(t)for(c in t)_&&t[c]===_[c]||f(l,c,t[c])}else"o"===n[0]&&"n"===n[1]?(r=n!==(n=n.replace(/Capture$/,"")),n=((u=n.toLowerCase())in e?u:n).slice(2),t?(_||e.addEventListener(n,a,r),(e.l||(e.l={}))[n]=t):e.removeEventListener(n,a,r)):"list"!==n&&"tagName"!==n&&"form"!==n&&"type"!==n&&"size"!==n&&!o&&n in e?e[n]=null==t?"":t:"function"!=typeof t&&"dangerouslySetInnerHTML"!==n&&(n!==(n=n.replace(/^xlink:?/,""))?null==t||!1===t?e.removeAttributeNS("http://www.w3.org/1999/xlink",n.toLowerCase()):e.setAttributeNS("http://www.w3.org/1999/xlink",n.toLowerCase(),t):null==t||!1===t&&!/^ar/.test(n)?e.removeAttribute(n):e.setAttribute(n,t))}function a(e){this.l[e.type](b.event?b.event(e):e)}function D(e,n,t,_,o,l,r,u,i){var c,s,p,f,a,d,h,y,v,m,g,k=n.type;if(void 0!==n.constructor)return null;(c=b.__b)&&c(n);try{e:if("function"==typeof k){if(y=n.props,v=(c=k.contextType)&&_[c.__c],m=c?v?v.props.value:c.__:_,t.__c?h=(s=n.__c=t.__c).__=s.__E:("prototype"in k&&k.prototype.render?n.__c=s=new k(y,m):(n.__c=s=new P(y,m),s.constructor=k,s.render=L),v&&v.sub(s),s.props=y,s.state||(s.state={}),s.context=m,s.__n=_,p=s.__d=!0,s.__h=[]),null==s.__s&&(s.__s=s.state),null!=k.getDerivedStateFromProps&&(s.__s==s.state&&(s.__s=w({},s.__s)),w(s.__s,k.getDerivedStateFromProps(y,s.__s))),f=s.props,a=s.state,p)null==k.getDerivedStateFromProps&&null!=s.componentWillMount&&s.componentWillMount(),null!=s.componentDidMount&&s.__h.push(s.componentDidMount);else{if(null==k.getDerivedStateFromProps&&y!==f&&null!=s.componentWillReceiveProps&&s.componentWillReceiveProps(y,m),!s.__e&&null!=s.shouldComponentUpdate&&!1===s.shouldComponentUpdate(y,s.__s,m)||n.__v===t.__v){s.props=y,s.state=s.__s,n.__v!==t.__v&&(s.__d=!1),(s.__v=n).__e=t.__e,n.__k=t.__k,s.__h.length&&r.push(s),function e(n,t,_){for(var o,l=0;l<n.__k.length;l++)(o=n.__k[l])&&(o.__=n,o.__e&&("function"==typeof o.type&&1<o.__k.length&&e(o,t,_),t=U(_,o,o,n.__k,null,o.__e,t),"function"==typeof n.type&&(n.__d=t)))}(n,u,e);break e}null!=s.componentWillUpdate&&s.componentWillUpdate(y,s.__s,m),null!=s.componentDidUpdate&&s.__h.push(function(){s.componentDidUpdate(f,a,d)})}s.context=m,s.props=y,s.state=s.__s,(c=b.__r)&&c(n),s.__d=!1,s.__v=n,s.__P=e,c=s.render(s.props,s.state,s.context),s.state=s.__s,null!=s.getChildContext&&(_=w(w({},_),s.getChildContext())),p||null==s.getSnapshotBeforeUpdate||(d=s.getSnapshotBeforeUpdate(f,a)),g=null!=c&&c.type==S&&null==c.key?c.props.children:c,E(e,Array.isArray(g)?g:[g],n,t,_,o,l,r,u,i),s.base=n.__e,s.__h.length&&r.push(s),h&&(s.__E=s.__=null),s.__e=!1}else null==l&&n.__v===t.__v?(n.__k=t.__k,n.__e=t.__e):n.__e=function(e,n,t,_,o,l,r,u){var i,c,s,p,f,a=t.props,d=n.props;if(o="svg"===n.type||o,null!=l)for(i=0;i<l.length;i++)if(null!=(c=l[i])&&((null===n.type?3===c.nodeType:c.localName===n.type)||e==c)){e=c,l[i]=null;break}
74if(null==e){if(null===n.type)return document.createTextNode(d);e=o?document.createElementNS("http://www.w3.org/2000/svg",n.type):document.createElement(n.type,d.is&&{is:d.is}),l=null,u=!1}if(null===n.type)a!==d&&e.data!=d&&(e.data=d);else{if(null!=l&&(l=C.slice.call(e.childNodes)),s=(a=t.props||x).dangerouslySetInnerHTML,p=d.dangerouslySetInnerHTML,!u){if(null!=l)for(a={},f=0;f<e.attributes.length;f++)a[e.attributes[f].name]=e.attributes[f].value;(p||s)&&(p&&s&&p.__html==s.__html||(e.innerHTML=p&&p.__html||""))}(function(e,n,t,_,o){var l;for(l in t)"children"===l||"key"===l||l in n||A(e,l,null,t[l],_);for(l in n)o&&"function"!=typeof n[l]||"children"===l||"key"===l||"value"===l||"checked"===l||t[l]===n[l]||A(e,l,n[l],t[l],_)})(e,d,a,o,u),p?n.__k=[]:(i=n.props.children,E(e,Array.isArray(i)?i:[i],n,t,_,"foreignObject"!==n.type&&o,l,r,x,u)),u||("value"in d&&void 0!==(i=d.value)&&i!==e.value&&A(e,"value",i,a.value,!1),"checked"in d&&void 0!==(i=d.checked)&&i!==e.checked&&A(e,"checked",i,a.checked,!1))}return e}(t.__e,n,t,_,o,l,r,i);(c=b.diffed)&&c(n)}catch(e){n.__v=null,b.__e(e,n,t)}return n.__e}function d(e,n){b.__c&&b.__c(n,e),e.some(function(n){try{e=n.__h,n.__h=[],e.some(function(e){e.call(n)})}catch(e){b.__e(e,n.__v)}})}function T(e,n,t){try{"function"==typeof e?e(n):e.current=n}catch(e){b.__e(e,t)}}function W(e,n,t){var _,o,l;if(b.unmount&&b.unmount(e),(_=e.ref)&&(_.current&&_.current!==e.__e||T(_,null,n)),t||"function"==typeof e.type||(t=null!=(o=e.__e)),e.__e=e.__d=void 0,null!=(_=e.__c)){if(_.componentWillUnmount)try{_.componentWillUnmount()}catch(e){b.__e(e,n)}
74_.base=_.__P=null}if(_=e.__k)for(l=0;l<_.length;l++)_[l]&&W(_[l],n,t);null!=o&&g(o)}function L(e,n,t){return this.constructor(e,t)}function h(e,n,t){var _,o,l;b.__&&b.__(e,n),o=(_=t===r)?null:t&&t.__k||n.__k,e=i(S,null,[e]),l=[],D(n,(!_&&t||n).__k=e,o||x,x,void 0!==n.ownerSVGElement,t&&!_?[t]:!o&&n.childNodes.length?C.slice.call(n.childNodes):null,l,t||x,_),d(l,e)}b={__e:function(e,n){for(var t,_;n=n.__;)if((t=n.__c)&&!t.__)try{if(t.constructor&&null!=t.constructor.getDerivedStateFromError&&(_=!0,t.setState(t.constructor.getDerivedStateFromError(e))),null!=t.componentDidCatch&&(_=!0,t.componentDidCatch(e)),_)return s(t.__E=t)}catch(n){e=n}throw e}},n=function(e){return null!=e&&void 0===e.constructor},P.prototype.setState=function(e,n){var t=this.__s!==this.state?this.__s:this.__s=w({},this.state);"function"==typeof e&&(e=e(t,this.props)),e&&w(t,e),null!=e&&this.__v&&(n&&this.__h.push(n),s(this))},P.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),s(this))},P.prototype.render=S,t=[],_="function"==typeof Promise?Promise.prototype.then.bind(Prom
74ise.resolve()):setTimeout,p.__r=0,r=x,l=0,e.render=h,e.hydrate=function(e,n){h(e,n,r)},e.createElement=i,e.h=i,e.Fragment=S,e.createRef=function(){return{current:null}},e.isValidElement=n,e.Component=P,e.cloneElement=function(e,n){var t,_;for(_ in n=w(w({},e.props),n),2<arguments.length&&(n.children=C.slice.call(arguments,2)),t={},n)"key"!==_&&"ref"!==_&&(t[_]=n[_]);return k(e.type,t,n.key||e.key,n.ref||e.ref,null)},e.createContext=function(e){var n={},o={__c:"__cC"+l++,__:e,Consumer:function(e,n){return e.children(n)},Provider:function(e){var t,_=this;return this.getChildContext||(t=[],this.getChildContext=function(){return n[o.__c]=_,n},this.shouldComponentUpdate=function(n){_.props.value!==n.value&&t.some(function(e){e.context=n.value,s(e)})},this.sub=function(e){t.push(e);var n=e.componentWillUnmount;e.componentWillUnmount=function(){t.splice(t.indexOf(e),1),n&&n.call(e)}}),e.children}};return(o.Consumer.contextType=o).Provider.__=o},e.toChildArray=function e(n){return null==n||"boolean"==typeof n?[]:Array.isArray(n)?C.concat.apply([],n.map(e)):[n]},e.__u=W,e.options=b}); 75// Preact Hooks 76!function(_,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("preact")):n(_.preactHooks={},_.preact)}(this,function(_,o){var e,u,t,i=0,r=[],c=o.options.__r,f=o.options.diffed,n=o.options.__c,s=o.options.unmount;function a(_,n){o.options.__h&&o.options.__h(u,_,i||n),i=0;var t=u.__H||(u.__H={__:[],__h:[]});return _>=t.__.length&&t.__.push({}),t.__[_]}function p(_){return i=1,h(b,_)}function h(_,n,t){var o=a(e++,2);return o.t=_,o.__c||(o.__c=u,o.__=[t?t(n):b(void 0,n),function(_){var n=o.t(o.__[0],_);o.__[0]!==n&&(o.__=[n,o.__[1]],o.__c.setState({}))}]),o.__}function m(_,n){var t=a(e++,4);!o.options.__s&&E(t.__H,n)&&(t.__=_,t.__H=n,u.__h.push(t))}function v(_,n){var t=a(e++,7);return E(t.__H,n)?(t.__H=n,t.__h=_,t.__=_()):t.__}function H(){r.some(function(n){if(n.__P)try{n.__H.__h.forEach(l),n.__H.__h.forEach(y),n.__H.__h=[]}catch(_){return n.__H.__h=[],o.options.__e(_,n.__v),!0}}),r=[]}o.options.__r=function(_){c&&c(_),e=0;var n=(u=_.__c).__H;n&&(n.__h.forEach(l),n.__h.forEach(y),n.__h=[])},o.options.diffed=function(_){f&&f(_);var n=_.__c;n&&n.__H&&n.__H.__h.length&&(1!==r.push(n)&&t===o.options.requestAnimationFrame||((t=o.options.requestAnimationFrame)||function(_){function n(){clearTimeout(o),d&&cancelAnimationFrame(t),setTimeout(_)}var t,o=setTimeout(n,100);d&&(t=requestAnimationFrame(n))})(H))},o.options.__c=function(_,t){t.some(function(n){try{n.__h.forEach(l),n.__h=n.__h.filter(function(_){return!_.__||y(_)})}catch(_){t.some(function(_){_.__h&&(_.__h=[])}),t=[],o.options.__e(_,n.__v)}}),n&&n(_,t)},o.options.unmount=function(_){s&&s(_);var n=_.__c;if(n&&n.__H)try{n.__H.__.forEach(l)}catch(_){o.options.__e(_,n.__v)}};var d="function"==typeof requestAnimationFrame;function l(_){"function"==typeof _.u&&_.u()}function y(_){_.u=_.__()}function E(t,_){return!t||_.some(function(_,n){return _!==t[n]})}function b(_,n){return"function"==typeof n?n(_):n}_.useState=p,_.useReducer=h,_.useEffect=function(_,n){var t=a(e++,3);!o.options.__s&&E(t.__H,n)&&(t.__=_,t.__H=n,u.__H.__h.push(t))},_.useLayoutEffect=m,_.useRef=function(_){return i=5,v(function(){return{current:_}},[])},_.useImperativeHandle=function(_,n,t){i=6,m(function(){"function"==typeof _?_(n()):_&&(_.current=n())},null==t?t:t.concat(_))},_.useMemo=v,_.useCallback=function(_,n){return i=8,v(function(){return _},n)},_.useContext=function(_){var n=u.context[_.__c],t=a(e++,9);return t.__c=_,n?(null==t.__&&(t.__=!0,n.sub(u)),n.props.value):_.__},_.useDebugValue=function(_,n){o.options.useDebugValue&&o.options.useDebugValue(n?n(_):_)},_.useErrorBoundary=function(_){var n=a(e++,10),t=p();return n.__=_,u.componentDidCatch||(u.componentDidCatch=function(_){n.__&&n.__(_),t[1](_)}),[t[0],function(){t[1](void 0)}]}}); 77// Preact Compat 78!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("preact/hooks"),require("preact")):t(e.compat={},e.preactHooks,e.preact)}(this,function(t,n,u){function r(e,t){for(var n in t)e[n]=t[n];return e}function i(e,t){for(var n in e)if("__source"!==n&&!(n in t))return!0;for(var o in t)if("__source"!==o&&e[o]!==t[o])return!0;return!1}var o,e,a,l=(o=u.Component,a=o,(e=c).prototype=Object.create(a.prototype),(e.prototype.constructor=e).__proto__=a,c.prototype.shouldComponentUpdate=function(e,t){return i(this.props,e)||i(this.state,t)},c);function c(e){var t;return(t=o.call(this,e)||this).isPureReactComponent=!0,t}function p(t,o){function n(e){var t=this.props.ref,n=t==e.ref;return!n&&t&&(t.call?t(null):t.current=null),o?!o(this.props,e)||!n:i(this.props,e)}function e(e){return this.shouldComponentUpdate=n,u.createElement(t,e)}return e.prototype.isReactComponent=!0,e.displayName="Memo("+(t.displayName||t.name)+")",e.t=!0,e}var f=u.options.__b;u.options.__b=function(e){e.type&&e.type.t&&e.ref&&(e.props.ref=e.ref,e.ref=null),f&&f(e)};var s="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function d(o){function e(e,t){var n=r({},e);return delete n.ref,o(n,(t=e.ref||t)&&("object"!=typeof t||"current"in t)?t:null)}return e.$$typeof=s,(e.render=e).prototype.isReactComponent=e.t=!0,e.displayName="ForwardRef("+(o.displayName||o.name)+")",e}function _(e,o){return e?u.toChildArray(e).reduce(function(e,t,n){return e.concat(o(t,n))},[]):null}var h={map:_,forEach:_,count:function(e){return e?u.toChildArray(e).length:0},only:function(e){if(1!==(e=u.toChildArray(e)).length)throw new Error("Children.only() expects only one child.");return e[0]},toArray:u.toChildArray},m=u.options.__e;function v(e){return e&&((e=r({},e)).__c=null,e.__k=e.__k&&e.__k.map(v)),e}function y(){this.__u=0,this.u=null,this.__b=null}function C(e){var t=e.__.__c;return t&&t.o&&t.o(e)}function b(t){var n,o,r;function e(e){if(n||(n=t()).then(function(e){o=e.default||e},function(e){r=e}),r)throw r;if(!o)throw n;return u.createElement(o,e)}return e.displayName="Lazy",e.t=!0,e}function k(){this.i=null,this.l=null}u.options.__e=function(e,t,n){if(e.then)for(var o,r=t;r=r.__;)if((o=r.__c)&&o.__c)return o.__c(e,t.__c);m(e,t,n)},(y.prototype=new u.Component).__c=function(e,t){var n=this;null==n.u&&(n.u=[]),n.u.push(t);function o(){i||(i=!0,r?r(u):u())}var r=C(n.__v),i=!1;t.__c=t.componentWillUnmount,t.componentWillUnmount=function(){o(),t.__c&&t.__c()};var u=function(){var e;if(!--n.__u)for(n.__v.__k[0]=n.state.o,n.setState({o:n.__b=null});e=n.u.pop();)e.forceUpdate()};n.__u++||n.setState({o:n.__b=n.__v.__k[0]}),e.then(o,o)},y.prototype.render=function(e,t){return this.__b&&(this.__v.__k&&
78(this.__v.__k[0]=v(this.__b)),this.__b=null),[u.createElement(u.Fragment,null,t.o?null:e.children),t.o&&e.fallback]};function g(e,t,n){if(++n[1]===n[0]&&e.l.delete(t),e.props.revealOrder&&("t"!==e.props.revealOrder[0]||!e.l.size))for(n=e.i;n;){for(;3<n.length;)n.pop()();if(n[1]<n[0])break;e.i=n=n[2]}}(k.prototype=new u.Component).o=function(n){var o=this,r=C(o.__v),i=o.l.get(n);return i[0]++,function(e){function t(){o.props.revealOrder?(i.push(e),g(o,n,i)):e()}r?r(t):t()}},k.prototype.render=function(e){this.i=null,this.l=new Map;var t=u.toChildArray(e.children);e.revealOrder&&"b"===e.revealOrder[0]&&t.reverse();for(var n=t.length;n--;)this.l.set(t[n],this.i=[1,0,this.i]);return e.children},k.prototype.componentDidUpdate=k.prototype.componentDidMount=function(){var n=this;n.l.forEach(function(e,t){g(n,t,e)})};var E,N=((E=S.prototype).getChildContext=function(){return this.props.context},E.render=function(e){return e.children},S);function S(){}function x(e){var t=this,n=e.container,o=u.createElement(N,{context:t.context},e.vnode);return t.s&&t.s!==n&&(t.h.parentNode&&t.s.removeChild(t.h),u.__u(t.v),t.p=!1),e.vnode?t.p?(n.__k=t.__k,u.render(o,n),t.__k=n.__k):(t.h=document.createTextNode(""),u.hydrate("",n),n.appendChild(t.h),t.p=!0,t.s=n,u.render(o,n,t.h),t.__k=t.h.__k):t.p&&(t.h.parentNode&&t.s.removeChild(t.h),u.__u(t.v)),t.v=o,t.componentWillUnmount=function(){t.h.parentNode&&t.s.removeChild(t.h),u.__u(t.v)},null}function w(e,t){return u.createElement(x,{vnode:e,container:t})}var A=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;u.Component.prototype.isReactComponent={};var R="undefined"!=typeof Symbol&&Symbol.for&&Symbol.for("react.element")||60103;function U(e,t,n){if(null==t.__k)for(;t.firstChild;)t.removeChild(t.firstChild);return u.render(e,t),"function"==typeof n&&n(),e?e.__c:null}function P(e,t,n){return u.hydrate(e,t),"function"==typeof n&&n(),e?e.__c:null}var F=u.options.event;function O(e,t){e["UNSAFE_"+t]&&!e[t]&&Object.defineProperty(e,t,{configurable:!1,get:function(){return this["UNSAFE_"+t]}
78,set:function(e){this["UNSAFE_"+t]=e}})}u.options.event=function(e){F&&(e=F(e));var t=!(e.persist=function(){}),n=!1,o=e.stopPropagation;e.stopPropagation=function(){o.call(e),t=!0};var r=e.preventDefault;return e.preventDefault=function(){r.call(e),n=!0},e.isPropagationStopped=function(){return t},e.isDefaultPrevented=function(){return n},e.nativeEvent=e};var L={configurable:!0,get:function(){return this.class}},M=u.options.vnode;function D(e){return u.createElement.bind(null,e)}function V(e){return!!e&&e.$$typeof===R}function W(e){return V(e)?u.cloneElement.apply(null,arguments):e}function $(e){return!!e.__k&&(u.render(null,e),!0)}function j(e){return e&&(e.base||1===e.nodeType&&e)||null}u.options.vnode=function(i){i.$$typeof=R;var e,t,n,o=i.type,r=i.props;if(o){if(r.class!=r.className&&(L.enumerable="className"in r,null!=r.className&&(r.class=r.className),Object.defineProperty(r,"className",L)),"function"!=typeof o){for(n in r.defaultValue&&void 0!==r.value&&(r.value||0===r.value||(r.value=r.defaultValue),delete r.defaultValue),Array.isArray(r.value)&&r.multiple&&"select"===o&&(u.toChildArray(r.children).forEach(function(e){-1!=r.value.indexOf(e.props.value)&&(e.props.selected=!0)}),delete r.value),r)if(e=A.test(n))break;if(e)for(n in t=i.props={},r)t[A.test(n)?n.replace(/[A-Z0-9]/,"-$&").toLowerCase():n]=r[n]}!function(){var e=i.type,t=i.props;if(t&&"string"==typeof e){var n,o={};for(var r in t)/^on(Ani|Tra|Tou)/.test(r)&&(t[r.toLowerCase()]=t[r],delete t[r]),o[r.toLowerCase()]=r;o.ondoubleclick&&(t.ondblclick=t[o.ondoubleclick],delete t[o.ondoubleclick]),o.onbeforeinput&&(t.onbeforeinput=t[o.onbeforeinput],delete t[o.onbeforeinput]),o.onchange&&("textarea"===e||"input"===e.toLowerCase()&&!/^fil|che|ra/i.test(t.type))&&(t[n=o.oninput||"oninput"]||(t[n]=t[o.onchange],delete t[o.onchange]))}}(),"function"==typeof o&&!o.m&&o.prototype&&(O(o.prototype,"componentWillMount"),O(o.prototype,"componentWillReceiveProps"),O(o.prototype,"componentWillUpdate"),o.m=!0)}M&&M(i)};function z(e,t){return e(t)}var H=u.Fragment,T={useState:n.useState,useReducer:n.useReducer,useEffect:n.useEffect,useLayoutEffect:n.useLayoutEffect,useRef:n.useRef,useImperativeHandle:n.useImperativeHandle,useMemo:n.useMemo,useCallback:n.useCallback,useContext:n.useContext,useDebugValue:n.useDebugValue,version:"16.8.0",Children:h,render:U,hydrate:P,unmountComponentAtNode:$,createPortal:w,createElement:u.createElement,createContext:u.createContext,createFactory:D,cloneElement:W,createRef:u.createRef,Fragment:u.Fragment,isValidElement:V,findDOMNode:j,Component:u.Component,PureComponent:l,memo:p,forwardRef:d,unstable_batchedUpdates:z,StrictMode:H,Suspense:y,SuspenseList:k,lazy:b};Object.keys(n).forEach(function(e){t[e]=n[e]}),t.createElement=u.createElement,t.createContext=u.createContext,t.createRef=u.createRef,t.Fragment=u.Fragment,t.Component=u.Component,t.version="16.8.0",t.Children=h,t.render=U,t.hydrate=P,t.unmountComponentAtNode=$,t.createPortal=w,t.createFactory=D,t.cloneElement=W,t.isValidElement=V,t.findDOMNode=j,t.PureComponent=l,t.memo=p,t.forwardRef=d,t.unstable_batchedUpdates=z,t.StrictMode=H,t.Suspense=y,t.SuspenseList=k,t.lazy=b,t.default=T}); 79// Goober 80!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):t((e||self).goober={})}(this,function(e){let t={data:""},r=e=>"object"==typeof window?((e?e.querySelector("#_goober"):window._goober)||Object.assign((e||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:e||t,l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,n=/\/\*[^]*?\*\/| +/g,o=/\n+/g,a=(e,t)=>{let r="",l="",n="";for(let o in e){let s=e[o];"@"==o[0]?"i"==o[1]?r=o+" "+s+";":l+="f"==o[1]?a(s,o):o+"{"+a(s,"k"==o[1]?"":t)+"}":"object"==typeof s?l+=a(s,t?t.replace(/([^,])+/g,e=>o.replace(/(^:.*)|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):o):null!=s&&(o=/^--/.test(o)?o:o.replace(/[A-Z]/g,"-$&").toLowerCase(),n+=a.p?a.p(o,s):o+":"+s+";")}return r+(t&&n?t+"{"+n+"}":n)+l},s={},i=e=>{if("object"==typeof e){let t="";for(let r in e)t+=r+i(e[r]);return t}return e},c=(e,t,r,c,f)=>{let p=i(e),u=s[p]||(s[p]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return"go"+r})(p));if(!s[u]){let t=p!==e?e:(e=>{let t,r,a=[{}];for(;t=l.exec(e.replace(n,""));)t[4]?a.shift():t[3]?(r=t[3].replace(o," ").trim(),a.unshift(a[0][r]=a[0][r]||{})):a[0][t[1]]=t[2].replace(o," ").trim();return a[0]})(e);
80s[u]=a(f?{["@keyframes "+u]:t}:t,r?"":"."+u)}return((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e)})(s[u],t,c),u},f=(e,t,r)=>e.reduce((e,l,n)=>{let o=t[n];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?"."+t:e&&"object"==typeof e?e.props?"":a(e,""):!1===e?"":e}return e+l+(null==o?"":o)},"");function p(e){let t=this||{},l=e.call?e(t.p):e;return c(l.unshift?l.raw?f(l,[].slice.call(arguments,1),t.p):l.reduce((e,r)=>Object.assign(e,r&&r.call?r(t.p):r),{}):l,r(t.target),t.g,t.o,t.k)}let u,d,g,b=p.bind({g:1}),h=p.bind({k:1});e.css=p,e.extractCss=e=>{let t=r(e),l=t.data;return t.data="",l},e.glob=b,e.keyframes=h,e.setup=function(e,t,r,l){a.p=t,u=e,d=r,g=l},e.styled=function(e,t){let r=this||{};return function(){let l=arguments;function n(o,a){let s=Object.assign({},o),i=s.className||n.className;r.p=Object.assign({theme:d&&d()},s),r.o=/ *go\d+/.test(i),s.className=p.apply(r,l)+(i?" "+i:""),t&&(s.ref=a);let c=e;return e[0]&&(c=s.as||e,delete s.as),g&&c[0]&&g(s),u(c,s)}return t?t(n):n}}}); 81 82</script>
82 83<!--LOOMI SDK--> 84 85 86 <meta charset="utf-8"> 87 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 88 <meta name="viewport" content="width=device-width,initial-scale=1"> 89 <meta name="theme-color" content=""> 90 <link rel="canonical" href="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus"> 91 92 <link rel="alternate" href="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus" hreflang="en-us" /> 93<link rel="alternate" href="https://www.timbuk2.ca/products/1067-freestyle-carry-on-plus" hreflang="en-ca" /> 94<link rel="alternate" href="https://timbuk2bags.eu/products/1067-freestyle-carry-on-plus-europe" hreflang="en-de" /> 95<link rel="alternate" href="https://timbuk2bags.eu/products/1067-freestyle-carry-on-plus-europe" hreflang="en-fr" /> 96<link rel="alternate" href="https://timbuk2bags.eu/products/1067-freestyle-carry-on-plus-europe" hreflang="en-gb" /> 97<link rel="alternate" href="https://timbuk2bags.eu/products/1067-freestyle-carry-on-plus-europe" hreflang="en-es" /> 98<link rel="alternate" href="https://timbuk2bags.eu/products/1067-freestyle-carry-on-plus-europe" hreflang="en-it" /> 99<link rel="alternate" href="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus" hreflang="x-default" /> 100 101 102 <link rel="shortcut icon" href="//www.timbuk2.com/cdn/shop/files/Tmbuk2-Logo-Favicon-01_32x32.jpg?v=1715638943" type="image/png"> 103 104<title>FreeStyle Carry-On Plus 105 106 107 108 – Timbuk2 109 110</title><meta name="description" content="More room. Same seamless movement.">
110<script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" type="text/javascript" charset="UTF-8" data-domain-script="9be9f347-4755-44ea-8fc6-6f6b02d9c137"></script>
110 111
111<script type="text/javascript">function OptanonWrapper(){}</script>
111 112
112<script type="text/javascript"> 113 // OneTrust injects controls (the preference-center close button, the 114 // "Powered by OneTrust" link) with only an aria-label and a CSS-image 115 // glyph, so ADA scanners flag them as empty button/link. Add 116 // visually-hidden text when they appear; aria-label still wins the 117 // accessible name, so screen readers aren't double-announced. 118 document.addEventListener('DOMContentLoaded', function () { 119 function labelOneTrustEls() { 120 document.querySelectorAll('#close-pc-btn-handler, .ot-close-icon, a[href*="onetrust.com"][aria-label]').forEach(function (el) { 121 if (el.textContent.trim() === '') { 122 var span = document.createElement('span'); 123 span.className = 'visually-hidden'; 124 span.textContent = el.getAttribute('aria-label') || 'OneTrust'; 125 el.appendChild(span); 126 } 127 }); 128 } 129 130 labelOneTrustEls(); 131 new MutationObserver(labelOneTrustEls).observe(document.body, { childList: true, subtree: true }); 132 }); 133 </script>
133 134 135 136<meta property="og:site_name" content="Timbuk2"> 137<meta property="og:url" content="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus"> 138<meta property="og:title" content="FreeStyle Carry-On Plus"> 139<meta property="og:type" content="product"> 140<meta property="og:description" content="More room. Same seamless movement."><meta property="og:price:amount" content="345.00"> 141 <meta property="og:price:currency" content="USD"><meta property="og:image" content="http://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_1024x1024.jpg?v=1763323665"><meta property="og:image" content="http://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_1024x1024.png?v=1763323665"><meta property="og:image" content="http://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front_1024x1024.png?v=1763323665"> 142<meta property="og:image:secure_url" content="https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_1024x1024.jpg?v=1763323665"><meta property="og:image:secure_url" content="https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_1024x1024.png?v=1763323665"><meta property="og:image:secure_url" content="https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front_1024x1024.png?v=1763323665"> 143 144<meta name="twitter:site" content="@timbuk2"> 145<meta name="twitter:card" content="summary_large_image"> 146<meta name="twitter:title" content="FreeStyle Carry-On Plus"> 147<meta name="twitter:description" content="More room. Same seamless movement."> 148 149
149<script src="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.modernizr.min.js?v=162810826940090652541788907511" type="text/javascript"></script>
149 150 151
151<script> 152 document.documentElement.className = document.documentElement.className.replace('no-js', 'js') 153 154 window.freeShipping = '' 155 window.theme = { 156 strings: { 157 addToCart: "Add to cart", 158 soldOut: "Sold Out", 159 unavailable: "Unavailable", 160 shipping_method_message: "Translation missing: en.shopify.checkout.general.shipping_method_message", 161 shipping_method_message_url: "Translation missing: en.shopify.checkout.general.shipping_method_message_url", 162 shipping_method_message_url_label: "Translation missing: en.shopify.checkout.general.shipping_method_message_url_label" 163 }, 164 moneyFormat: "${{amount}}" 165 } 166 167 168 169 170 171 window.freeShipping = { 172 amount: '9900' 173 } 174 175 176</script>
176 177 178 179 180 181 182<style data-styles="custom-properties"> 183 :root {} 184</style> 185 186 187 188
189<script> 190 191 192 var klevu_page_meta = { 193 "pageType": "pdp", 194 "itemName": "FreeStyle Carry-On Plus", 195 "itemUrl": "https://www.timbuk2.com/products/1067-freestyle-carry-on-plus", 196 "itemId": "43806284480554", 197 "itemGroupId": "7735073144874", 198 "itemSalePrice": "345.00", 199 "itemCurrency": "USD" 200 }; 201 202 203</script>
203 204
205<script src="https://js.klevu.com/core/v2/klevu.js"></script>
vendor: 1 bytes, line 205
205
206<script src="https://js.klevu.com/recs/v2/klevu-recs.js"></script>
vendor: 1 bytes, line 206
206
207<script src="https://js.klevu.com/theme/default/v2/quick-search-theme.js"></script>
207 208 209
210<script> 211 // Add selected filter to URL 212 (function(klevu) { 213 klevu.modifyRequest("landing, catnav", function (data, scope) { 214 klevu.each(data.request.current.recordQueries, function (key, query) { 215 klevu.setObjectPath(query, "filters.filtersToReturn.options.limit", 100); 216 }) 217 }); 218 klevu.extend(true, klevu.search.modules, { 219 addFiltersToURL: { 220 base: { 221 setFilters: function(data, scope, queryId) { 222 var activeQueryId = klevu.getObjectPath(data, "context.activeQueryId"); 223 if (queryId && queryId.length) { 224 activeQueryId = queryId; 225 } 226 var filterQueryParam = activeQueryId + "Filters"; 227 var activeQueryFilters = klevu.getObjectPath(data, "template.query." + activeQueryId + ".filters"); 228 var filterValuesQueryParam = ""; 229 if (activeQueryFilters) { 230 klevu.each(activeQueryFilters, function(key, filter) { 231 var selectedFilterKeyString = ""; 232 var filterOptions = filter.options; 233 var selectedValues = ""; 234 if (filterOptions && filterOptions.length) { 235 klevu.each(filterOptions, function(key, option) { 236 if (option.selected === true) { 237 if (selectedValues.length) { 238 selectedValues += ","; 239 } 240 selectedValues += option.value; 241 } 242 }); 243 } else if (filter.type === "SLIDER") { 244 var startValue = filter.start; 245 var endValue = filter.end; 246 var minValue = filter.min; 247 var maxValue = filter.max; 248 if (typeof startValue !== "undefined" && startValue !== null && typeof endValue !== "undefined" && endValue !== null) { 249 if (Number(startValue) === Number(minValue) && Number(endValue) === Number(maxValue)) {} else { 250 selectedValues = startValue + "-" + endValue; 251 } 252 } 253 } 254 if (selectedValues.length) { 255 selectedFilterKeyString += filter.key + ":" + selectedValues; 256 } 257 if (selectedFilterKeyString.length) { 258 if (filterValuesQueryParam.length) { 259 filterValuesQueryParam += ";"; 260 } 261 filterValuesQueryParam += selectedFilterKeyString; 262 } 263 }); 264 } 265 filterValuesQueryParam = encodeURIComponent(filterValuesQueryParam); 266 var searchPath = window.location.search; 267 var updatedPath = klevu.dom.helpers.updateQueryStringParameter(searchPath, filterQueryParam, filterValuesQueryParam); 268 updatedPath = window.location.pathname + updatedPath; 269 270 // Clear filter param if empty 271 if (!filterValuesQueryParam.length) { 272 var updatedUrl = new URL(window.location.href); 273 var updatedSearch = new URLSearchParams(updatedUrl.search); 274 275 updatedSearch.delete(filterQueryParam); 276 277 var newSearch = updatedSearch.toString(); 278 updatedPath = window.location.pathname + (newSearch ? '?' + newSearch : ''); 279 } 280 281 if ('undefined' !== typeof window.history && 'undefined' !== typeof window.history.replaceState) { 282 window.history.replaceState({}, "", updatedPath); 283 } else { 284 console.log("This browser does not have the support of window.history or window.history.replaceState"); 285 } 286 }, 287 getAndUpdateFilters: function(data, scope, queryId) { 288 var hasAlreadyTriggered = klevu.getObjectPath(scope.kScope, "element.kScope.getAndUpdateFiltersTriggered"); 289 if (hasAlreadyTriggered === true) { 290 return; 291 } 292 var matchedQueryParamId = "", 293 matchedQueryParamValue = ""; 294 var recordQueries = klevu.getObjectPath(data, "request.current.recordQueries"); 295 if (recordQueries && recordQueries.length) {
296 klevu.each(recordQueries, function(key, query) { 297 if (query.id) { 298 var filtersFromURL = klevu.dom.helpers.getQueryStringValue(query.id + "Filters"); 299 if (filtersFromURL && filtersFromURL.length) { 300 matchedQueryParamId = query.id; 301 matchedQueryParamValue = filtersFromURL; 302 } 303 } 304 }) 305 } 306 klevu.setObjectPath(scope.kScope, "element.kScope.getAndUpdateFiltersTriggered", true); 307 var activeQueryId = klevu.getObjectPath(data, "context.activeQueryId"); 308 if (queryId && queryId.length) { 309 activeQueryId = queryId; 310 } else if (matchedQueryParamId.length && matchedQueryParamValue.length) { 311 activeQueryId = matchedQueryParamId; 312 var storage = klevu.getSetting(scope.kScope.settings, "settings.storage"); 313 if (storage.tabs) { 314 storage.tabs.setStorage("local"); 315 storage.tabs.mergeFromGlobal(); 316 storage.tabs.addElement("active", activeQueryId); 317 storage.tabs.mergeToGlobal(); 318 } 319 } 320 var filterQueryParam = activeQueryId + "Filters"; 321 var filtersFromURL = klevu.dom.helpers.getQueryStringValue(filterQueryParam); 322 if (filtersFromURL && filtersFromURL.length) { 323 var facets = filtersFromURL.split(";"); 324 if (facets) { 325 klevu.each(facets, function(key, facet) { 326 var splitFacet = facet.split(":"); 327 if (splitFacet.length) { 328 var facetKey = splitFacet[0]; 329 var facetValues = splitFacet[1].split(","); 330 var applyFilters = klevu.getObjectPath(data, "localOverrides.query." + activeQueryId + ".filters.applyFilters.filters"); 331 if (applyFilters && applyFilters.length) { 332 var isExistingKey = false; 333 klevu.each(applyFilters, function(key, applyFilter) { 334 if (applyFilter.key === facetKey) { 335 isExistingKey = true; 336 klevu.each(facetValues, function(key, facetValue) { 337 var isFilterOptionMatched = false; 338 klevu.each(applyFilter.values, function(key, value) { 339 if (facetValue === value) { 340 isFilterOptionMatched = true; 341 } 342 }); 343 if (!isFilterOptionMatched) { 344 applyFilter.values.push(facetValue); 345 } 346 }); 347 } 348 }); 349 if (!isExistingKey) { 350 applyFilters.push({ 351 key: facetKey, 352 values: facetValues 353 }); 354 } 355 } else { 356 klevu.setObjectPath(data, "localOverrides.query." + activeQueryId + ".filters.applyFilters.filters", [{ 357 key: facetKey, 358 values: facetValues 359 }]); 360 } 361 } 362 }); 363 } 364 } 365 } 366 }, 367 build: true 368 } 369 }); 370 })(klevu); 371 372 // startup settings 373 function startup(klevu) { 374 var options = { 375 url: { 376 search: "https:\/\/eucs9v2.ksearchnet.com\/cs\/v2\/search", 377 landing: '/search', 378 protocol: 'https:', 379 }, 380 // localSettings: true, 381 search: { 382 searchBoxSelector: '[data-search-input]' , 383 searchBoxTarget: document.querySelector('[data-search-menu-results]'), 384 minChars: 1, // set to 0 to show suggestions on focus 385 placeholder: 'Search products', 386 showQuickOnEnter: false, 387 fullPageLayoutEnabled: false, 388 // personalisation: false, 389 redirects: [], 390 apiKey: "klevu-15397307260428719", 391 }, 392 analytics: { 393 apiKey: "klevu-15397307260428719", 394 },
395 powerUp: { 396 // recsModule: true, 397 quick: false, 398 catnav: false, 399 landing: false 400 }, 401 recs: { 402 apiKey: "klevu-15397307260428719", 403 }, 404 theme: { 405 modules: { 406 resultInfiniteScroll: { 407 searchResultsPage: { 408 enable: true 409 }, 410 categoryPage: { 411 enable: true 412 } 413 } 414 } 415 }, 416 }; 417 418 return klevu(options); 419 } 420 421 document.addEventListener('search-menu-scripts-loaded', function() {}); 422 423 // once klevu is interactive, setup the settings 424 klevu.interactive(function() { 425 startup(klevu); 426 }); 427 428 klevu.ready(function() {}); 429</script>
429 430 431 432 433 434 435
436<script type="text/javascript"> 437 var klevu_pageCategory = "Search"; 438 sessionStorage.setItem("klevu_pageCategory", klevu_pageCategory); 439 440 // Override Collection 441 klevu.coreEvent.build({ 442 name: "setRemoteConfigCategoryOverride", 443 fire: function() { 444 if (klevu.getSetting(klevu, "settings.flags.setRemoteConfigCatnav.build", false)) { 445 return true; 446 } 447 448 return false; 449 }, 450 maxCount: 150, 451 delay: 100 452 }); 453 454 klevu.coreEvent.attach("setRemoteConfigCategoryOverride", { 455 name: "attachRemoteConfigCategoryOverride", 456 fire: function() { 457 klevu.search.catnav.getScope().template.setTemplate( 458 klevu.dom.helpers.getHTML("#klevuLandingTemplateResultsHeadingTitleCustom"), 459 "klevuLandingTemplateResultsHeadingTitle", 460 true 461 ) 462 463 // Collection load more pagination override 464 klevu.search.catnav.getScope().chains.template.events.add({ 465 name: "hideLoadMoreButtonForWindowScroll", 466 fire: function (data, scope) { 467 // Promo tiles 468 var event = new CustomEvent('collection.klevuData', { 469 detail: data.response 470 }) 471 document.dispatchEvent(event) 472 return true 473 } 474 }) 475 476 // Parse filters from url collection 477 klevu.search.catnav.getScope().chains.request.control.addAfter("initRequest", { 478 name: "selectFiltersFromURL", 479 fire: function (data, scope) { 480 klevu.search.modules.addFiltersToURL.base.getAndUpdateFilters(data, scope) 481 } 482 }) 483 484 // Add selected filter to url collection 485 klevu.search.catnav.getScope().chains.template.events.add({ 486 name: "attachURLUpdateOnFilterSelect", 487 fire: function (data, scope) { 488 klevu.search.modules.addFiltersToURL.base.setFilters(data, scope) 489 } 490 }) 491 492 window.onscroll = function(ev) { 493 const scrollTop = window.innerHeight + Math.ceil(window.pageYOffset) 494 495 if (scrollTop >= $('[data-klevu-infinite-scroll]').offset().top) { 496 var hasAlreadyTriggered = klevu.getObjectPath(klevu.search.catnav.getScope().data, "context.triggeredFromInfiniteScroll") 497 498 if (!hasAlreadyTriggered) $('[data-klevu-load-more]').trigger('click') 499 } 500 501 // Stop default infinite loading from happening at very end of page 502 if (scrollTop >= document.body.offsetHeight - 50) { 503 var hasAlreadyTriggered = klevu.getObjectPath(klevu.search.catnav.getScope().data, "context.triggeredFromInfiniteScroll") 504 505 if (!hasAlreadyTriggered) { 506 return true 507 } 508 } 509 }, { passive: window.supportsPassive } 510 511 klevu({ 512 powerUp: { 513 catnav: true 514 } 515 }) 516 } 517 }); 518 519 // Override Search 520 klevu.coreEvent.build({ 521 name: "setRemoteConfigLandingOverride", 522 fire: function () { 523 if (klevu.getSetting(klevu,"settings.flags.setRemoteConfigLanding.build", false)) { 524 return true 525 } 526 return false 527 }, 528 maxCount: 150, 529 delay: 100 530 }) 531 532 klevu.coreEvent.attach("setRemoteConfigLandingOverride", { 533 name: "attachRemoteConfigLandingOverride", 534 fire: function() { 535 // Filter by brand (vendor) 536 klevu.search.landing.getScope().chains.request.control.addAfter("initRequest", { 537 name: "modifyLandingQuery", 538 fire: function(data, scope) { 539 klevu.search.modules.addMyOverrideToQuery(data, scope) 540 } 541 }) 542 543 // Search results load more pagination override 544 klevu.search.landing.getScope().chains.template.events.add({ 545 name: "hideLoadMoreButtonForWindowScroll", 546 fire: function(data, scope) { 547 return true 548 } 549 }) 550 551 // Parse filters from url search 552 klevu.search.landing.getScope().chains.request.control.addAfter("initRequest", { 553 name: "selectFiltersFromURL", 554 fire: function (data, scope) { 555 klevu.search.modules.addFiltersToURL.base.getAndUpdateFilters(data, scope) 556 } 557 }) 558 559 // Add selected filter to url search 560 klevu.search.landing.getScope().chains.template.events.add({ 561 name: "attachURLUpdateOnFilterSelect", 562 fire: function (data, scope) { 563 klevu.search.modules.addFiltersToURL.base.setFilters(data, scope) 564 } 565 }) 566 567 window.onscroll = function(ev) { 568 const scrollTop = window.innerHeight + Math.ceil(window.pageYOffset) 569 570 if (scrollTop >= $('[data-klevu-infinite-scroll]').offset().top) { 571 var hasAlreadyTriggered = klevu.getObjectPath(klevu.search.landing.getScope().data, "context.triggeredFromInfiniteScroll") 572 573 if (!hasAlreadyTriggered) $('[data-klevu-load-more]').trigger('click') 574 } 575 576 // Stop default infinite loading from happening at very end of page 577 if (scrollTop >= document.body.offsetHeight - 50) { 578 var hasAlreadyTriggered = klevu.getObjectPath(klevu.search.landing.getScope().data, "context.triggeredFromInfiniteScroll") 579 580 if (!hasAlreadyTriggered) { 581 return true 582 } 583 } 584 }, { passive: window.supportsPassive } 585 586 klevu({
587 powerUp: { 588 landing: true, 589 } 590 }) 591 } 592 }); 593 594 // Override Quick Search 595 klevu.coreEvent.build({ 596 name: "setRemoteConfigQuickOverride", 597 fire: function () { 598 if (klevu.getSetting(klevu, "settings.flags.setRemoteConfigQuick.build", false)) { 599 return true; 600 } 601 return false; 602 }, 603 maxCount: 150, 604 delay: 100 605 }); 606 607 klevu.coreEvent.attach("setRemoteConfigQuickOverride", { 608 name: "attachRemoteConfigQuickOverride", 609 fire: function () { 610 // Filter by brand (vendor) 611 klevu.search.quick.getScope().chains.request.control.addAfter("initRequest", { 612 name: "modifyQuickQuery", 613 fire: function(data, scope) { 614 klevu.search.modules.addMyOverrideToQuery(data, scope) 615 } 616 }) 617 618 klevu({ 619 powerUp: { 620 quick: true 621 } 622 }) 623 } 624 }); 625 626 // Overridden by Search and Quick Search 627 (function (klevu) { 628 klevu.extend(true, klevu.search.modules, { 629 addMyOverrideToQuery: function(data, scope) { 630 klevu.each(data.request.current.recordQueries, function(key, query) { 631 klevu.setObjectPath( 632 data, 633 "localOverrides.query." + query.id + ".settings.customANDQuery", 634 "brand:\"timbuk2-timbuk2\" OR brand:\"timbuk2-sale\" OR brand:\"Timbuk2-Timbuk2\" OR brand:\"Timbuk2-Sale\"" 635 ) 636 }) 637 } 638 }) 639 })(klevu); 640</script>
640 641 642 643 644 645
645<script type="template/klevu" id="klevuQuickTemplateBase"> 646 <div class="klevu-fluid kuPreventDocumentClick"> 647 <div id="klevuSearchingArea" class="klevuQuickSearchingArea"> 648 <div ku-container data-container-id="ku_quick_main_container" data-container-role="main"> 649 <header ku-container data-container-id="ku_quick_main_header_container" data-container-role="header"> 650 <section ku-block data-block-id="ku_quick_main_header_sub_panel"></section> 651 <section ku-block data-block-id="ku_quick_main_header_banner"> 652 <%=helper.render('klevuQuickPromotionBanner',scope,data,"top") %> 653 </section> 654 </header> 655 <%=helper.render('klevuQuickAutoSuggestions',scope) %> 656 <% if(data.showQuickFacetedLayoutCharLimitMessage == true) { %> 657 <% var quickFacetedLayoutMessage = (data.quickFacetedLayoutMinCharsTextValue) ? data.quickFacetedLayoutMinCharsTextValue : ""; %> 658 <% if(quickFacetedLayoutMessage != "") { %> 659 <span class="kuFacetedLayoutMinCharText"><%= helper.translate(quickFacetedLayoutMessage) %></span> 660 <% } %> 661 <% } else { %> 662 <% if(data.query.productList) { %> 663 <%= helper.render('klevuQuickTemplateResultsHeadingTitle',scope,data,"productList") %> 664 <%= helper.render('klevuQuickTemplateTabResults',scope) %> 665 <%= helper.render('klevuQuickProducts',scope) %> 666 <%= helper.render('klevuQuickOtherContent',scope) %> 667 <% } else { %> 668 <div class="kuSearchPersonalizationsContainer"> 669 <%= helper.render('klevuSearchPersonalizations',scope) %> 670 </div> 671 <% } %> 672 <% } %> 673 <section ku-block data-block-id="ku_quick_main_header_site_navigation"> 674 <div class="klevuSuggestionsBlock"> 675 <%=helper.render('klevuQuickCategorySuggestions',scope) %> 676 <%=helper.render('klevuQuickPageSuggestions',scope) %> 677 </div> 678 </section> 679 <footer ku-container data-container-id="ku_quick_main_footer_container" data-container-role="footer"> 680 <section ku-block data-block-id="ku_quick_main_footer_sub_panel"></section> 681 <section ku-block data-block-id="ku_quick_main_footer_banner"> <%=helper.render('klevuQuickPromotionBanner',scope,data,"bottom") %> </section> 682 </footer> 683 </div> 684 </div> 685 </div> 686</script>
686 687
688<script type="template/klevu" id="klevuQuickProductBlock"> 689 <% 690 var updatedProductName = dataLocal.name; 691 if (klevu.search.modules.kmcInputs.base.getSkuOnPageEnableValue()) { 692 if (klevu.dom.helpers.cleanUpSku(dataLocal.sku)) { 693 updatedProductName += klevu.dom.helpers.cleanUpSku(dataLocal.sku); 694 } 695 } 696 %> 697 <li ku-product-block class="klevuProduct" data-id="<%=dataLocal.id%>"> 698 <% 699 function imgURL(src, size, center = false) { 700 if (!src || typeof src === 'undefined') return; 701 702 var count = (src.match(/\.jpg|\.png|\.gif|\.jpeg/g) || []).length; 703 var centerVal = ''; 704 705 if (center) centerVal = '_crop_center'; 706 if (src === null) return; 707 if (count > 1) return src; 708 709 src = src 710 .replace(/_(pico|icon|thumb|small|compact|medium|large|grande|original|1024x1024|2048x2048|master)+\./g, '.') 711 .replace(/\.jpg|\.png|\.gif|\.jpeg/g, match => { 712 return '_' + size + centerVal + match 713 }); 714 715 return src; 716 } 717 718 $.get(`${dataLocal.url}?view=meta.json`, function(data) { 719 data = JSON.parse(data); 720 let image = '//www.timbuk2.com/cdn/shop/t/1317/assets/product-no-image_250x.jpg?v=7427598040975432391788907511'; 721 var mainImage = null; 722 723 if (data.product.hasOwnProperty('media')) { 724 var mainIndex = data.product.media.findIndex(function(item) { 725 return item.alt && dataLocal.sku && item.alt.includes('N1|') && item.alt.includes(dataLocal.sku); // Must match sku and match N1 or 1 726 }); 727 728 if (mainIndex >= 0) { 729 mainImage = data.product.media[mainIndex].src; 730 } 731 } 732 733 // Bundle products (v1_bundles) have no variant SKUs and no `N1|<sku>` 734 // alt text on their gallery images, so the lookup above never matches 735 // and the tile renders the no-image placeholder (ECI-4384). Fall back 736 // to the variant image, then the product's first gallery image â the 737 // same precedence the Klevu results grid already uses. 738 if (!mainImage) { 739 mainImage = (data.current_variant.featured_image && data.current_variant.featured_image.src) || data.product.featured_image || null; 740 } 741 742 if (mainImage) { 743 image = imgURL(mainImage, '250x'); 744 } 745 746 $(`[data-id="${dataLocal.id}"] [data-image]`).attr('src', image); 747 }); 748 %> 749 <a title="<%= updatedProductName %>" target="_self" href="<%=dataLocal.url%>" data-id="<%=dataLocal.id%>" class="klevuQuickProductInnerBlock trackProductClick kuTrackRecentView"> 750 <div class="klevuProductItemTop"> 751 <div class="klevuQuickImgWrap"> 752 <div class="klevuQuickDiscountBadge"> 753 <strong><%=dataLocal.stickyLabelHead%></strong> 754 </div> 755 <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" data-image alt="<%=updatedProductName%>" /> 756 </div> 757 </div> 758 <div class="klevuProductItemBottom"> 759 <div class="klevuQuickProductDescBlock"> 760 <div title="<%= updatedProductName %>" class="klevuQuickProductName kuClippedOne"><%= updatedProductName %></div> 761 <div class="klevu-desc-l2 kuClippedOne"><%=dataLocal.shortDesc%></div> 762 <div class="klevuQuickProductDesc kuClippedOne"> 763 <div class="klevuSpectxt"><%=dataLocal.summaryAttribute%><span><%=dataLocal.stickyLabelText%></span></div> 764 </div> 765 <% if (dataLocal.inStock && dataLocal.inStock != "yes") { %> 766 <%=helper.render('quickProductStock', scope, data, dataLocal) %> 767 <% } else { %> 768 <% if (klevu.search.modules.kmcInputs.base.getShowPrices()) { %> 769 <div class="klevuQuickProductPrice kuClippedOne"> 770 <% 771 var kuTotalVariants = klevu.dom.helpers.cleanUpPriceValue(dataLocal.totalVariants); 772 var kuStartPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.startPrice,dataLocal.currency); 773 var kuSalePrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.salePrice,dataLocal.currency); 774 var kuPrice = klevu.dom.helpers.cleanUpPriceValue(dataLocal.price,dataLocal.currency); 775 %> 776 <% if(!Number.isNaN(kuTotalVariants) && kuTotalVariants > 1 && !Number.isNaN(kuStartPrice)) { %> 777 <div class="klevuQuickSalePrice kuStartPrice">
778 <span class="klevuQuickPriceGreyText"><%=helper.translate("From")%></span> 779 <span><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.startPrice)).replace(' ', '')%></span> 780 </div> 781 <% } else if (!Number.isNaN(kuSalePrice) && !Number.isNaN(kuPrice) && (kuPrice > kuSalePrice)){ %> 782 <span class="klevuQuickSalePrice klevuQuickSpecialPrice is-sale-price"><%=helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)).replace(' ', '')%></span> 783 <span class="klevuQuickOrigPrice"><%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)).replace(' ', '') %></span> 784 <% } else if (!Number.isNaN(kuSalePrice)) { %> 785 <span class="klevuQuickSalePrice"><%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.salePrice)).replace(' ', '') %></span> 786 <% } else if (!Number.isNaN(kuPrice)) { %> 787 <span class="klevuQuickSalePrice"><%= helper.processCurrency(dataLocal.currency,parseFloat(dataLocal.price)).replace(' ', '') %></span> 788 <% } %> 789 </div> 790 <%=helper.render('searchResultProductVATLabelQuick', scope, data, dataLocal) %> 791 <% } %> 792 <% } %> 793 <%=helper.render('klevuQuickProductRating',scope,data,dataLocal) %> 794 </div> 795 </div> 796 <div class="kuClearLeft"></div> 797 </a> 798 <%=helper.render('quickSearchProductAddToCart',scope,data,dataLocal) %> 799 </li> 800</script>
800 801 802 803 804 805 806 <link href="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.styles.css?v=78281988064027670611788907690" rel="stylesheet" type="text/css" media="all" /> 807 808 809 <link rel="preload" as="style" href="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.styles-product.css?v=27588932148753488771788907690" onload="this.onload=null;this.rel='stylesheet'"> 810 811 812 813 814 815 816
816<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
816<meta name="google-site-verification" content="T8l89TF6JTUMfUm2N5G-o6Ns9kjwZ3h5ZeRQfImjRs4"> 817<meta name="google-site-verification" content="T8l89TF6JTUMfUm2N5G-o6Ns9kjwZ3h5ZeRQfImjRs4"> 818<meta name="google-site-verification" content="pXrdzQBlIUQDvxcoGO6kgYS6Gt5S1PaA0Lm1GJRHkBY"> 819<meta name="facebook-domain-verification" content="z0sb9gvsil1870d72hoci2r4just71"> 820<meta name="facebook-domain-verification" content="d98jxjlcz9z0r74a9n36td2p3ohyrd"> 821<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/25729458/digital_wallets/dialog"> 822<meta id="in-context-paypal-metadata" data-shop-id="25729458" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 823<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="buy" href="/cart/43806284480554:1?ucp/version=2026-08-25&context/payment/0/handler=dev.shopify.shop_pay" payment="dev.shopify.shop_pay com.google.pay dev.shopify.card"><link rel="alternate" type="application/json+oembed" href="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus.oembed">
824<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=2048950314"></script>
824 825<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
826<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=2048950314&shop_id=25729458" crossorigin="anonymous"></script>
vendor: 1 bytes, line 826
826
827<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":25729458,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/25729458","merchantName":"Timbuk2","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Timbuk2","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 827
827
828<script id="shopify-features" type="application/json">{"accessToken":"750f86b1ebb28b5cb25841d166935743","betas":["rich-media-storefront-analytics"],"domain":"www.timbuk2.com","predictiveSearch":true,"shopId":25729458,"locale":"en"}</script>
vendor: 1 bytes, line 828
828
829<script>var Shopify = Shopify || {}; 830Shopify.shop = "timbuk2-us.myshopify.com"; 831Shopify.locale = "en"; 832Shopify.currency = {"active":"USD","rate":"1.0"}; 833Shopify.country = "US"; 834Shopify.theme = {"name":"T2 US Travel Your Way EG 9\/9\/26","id":149940240426,"schema_name":"Timbuk2 by Pivot","schema_version":"2026-08-06-1","theme_store_id":null,"role":"main"}; 835Shopify.theme.handle = "null"; 836Shopify.theme.style = {"id":null,"handle":null}; 837Shopify.cdnHost = "www.timbuk2.com/cdn"; 838Shopify.routes = Shopify.routes || {}; 839Shopify.routes.root = "/"; 840Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 841Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 842Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 843Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 843
843
844<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 844
844
845<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 845
845
846<script> 847 window.ShopifyPay = window.ShopifyPay || {}; 848 window.ShopifyPay.apiHost = "shop.app\/pay"; 849 window.ShopifyPay.redirectState = null; 850</script>
vendor: 1 bytes, line 850
850
851<script> 852 window.Shopify = window.Shopify || {}; 853 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 854 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 855 window.Shopify.SignInWithShop.eligible = true; 856</script>
vendor: 1 bytes, line 856
856
857<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 1 bytes, line 857
857
858<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 858
858
859<script type="module"> 860 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 861 862 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 863 864</script>
vendor: 1 bytes, line 864
864
865<script> 866 window.Shopify = window.Shopify || {}; 867 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 868 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"]}; 869</script>
vendor: 1 bytes, line 869
869
870<script>(function() { 871 var isLoaded = false; 872 function asyncLoad() { 873 if (isLoaded) return; 874 isLoaded = true; 875 var urls = ["https:\/\/config.gorgias.chat\/bundle-loader\/01GYCBTG6ZYETJM2QEF0Q8V3X6?source=shopify1click\u0026shop=timbuk2-us.myshopify.com","https:\/\/container.pepperjam.com\/956899796.js?shop=timbuk2-us.myshopify.com","https:\/\/cdn-widgetsrepository.yotpo.com\/v1\/loader\/f6I2gGsRTLxkuyPSEa7w6pjZ87abdrjs62VeHNkF?shop=timbuk2-us.myshopify.com","https:\/\/services.nofraud.com\/js\/device.js?shop=timbuk2-us.myshopify.com","https:\/\/media.9gtb.com\/loader.js?g_cvt_id=b2fbee33-267c-4a1f-8c8e-4e100c4db0c2\u0026shop=timbuk2-us.myshopify.com","https:\/\/ecommplugins-scripts.trustpilot.com\/v2.1\/js\/header.min.js?settings=eyJrZXkiOiI0RmlJc2tZZ1pENmhzT2N5In0=\u0026shop=timbuk2-us.myshopify.com","https:\/\/ecommplugins-scripts.trustpilot.com\/v2.1\/js\/success.min.js?settings=eyJrZXkiOiI0RmlJc2tZZ1pENmhzT2N5IiwidCI6WyJvcmRlcnMvZnVsZmlsbGVkIl0sInYiOiIifQ==\u0026shop=timbuk2-us.myshopify.com","https:\/\/ecommplugins-trustboxsettings.trustpilot.com\/timbuk2-us.myshopify.com.js?settings=1771375519963\u0026shop=timbuk2-us.myshopify.com"]; 876 for (var i = 0; i < urls.length; i++) { 877 var s = document.createElement('script'); 878 s.type = 'text/javascript'; 879 s.async = true; 880 s.src = urls[i]; 881 var x = document.getElementsByTagName('script')[0]; 882 x.parentNode.insertBefore(s, x); 883 } 884 }; 885 if(window.attachEvent) { 886 window.attachEvent('onload', asyncLoad); 887 } else { 888 window.addEventListener('load', asyncLoad, false); 889 } 890})();</script>
vendor: 1 bytes, line 890
890
891<script id="__st">var __st={"a":25729458,"offset":-25200,"reqid":"4dae4edf-2879-490e-ae1a-85c5ff05f4ca-1790918267","pageurl":"www.timbuk2.com\/products\/1067-freestyle-carry-on-plus","u":"50b0d81fe4ab","p":"product","rtyp":"product","rid":7735073144874};</script>
vendor: 1 bytes, line 891
891
892<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 892
892
893<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 893
893
894<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.timbuk2.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 894
894
895<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 = "//www.timbuk2.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>
895<script crossorigin="anonymous" defer="defer" src="//www.timbuk2.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 895
895
896<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 896
896
897<script> 898 window.Shopify = window.Shopify || {}; 899 window.Shopify.MCP = window.Shopify.MCP || {}; 900 window.Shopify.MCP.enabled = true; 901 window.Shopify.MCP.shop = "timbuk2-us.myshopify.com"; 902 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.timbuk2.com\/api\/mcp"; 903 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 904</script>
vendor: 1 bytes, line 904
904
905<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("\/\/www.timbuk2.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 906</script>
vendor: 1 bytes, line 906
906
907<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://www.timbuk2.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 908</script>
vendor: 1 bytes, line 908
908
909<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 910 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); 911</script>
vendor: 1 bytes, line 911
911
912<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})}})); 913</script>
913 914<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.timbuk2.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 915<style id="shopify-accelerated-checkout-cart"> 916 #shopify-buyer-consent { 917 margin-top: 1em; 918 display: inline-block; 919 width: 100%; 920} 921 922#shopify-buyer-consent.hidden { 923 display: none; 924} 925 926#shopify-subscription-policy-button { 927 background: none; 928 border: none; 929 padding: 0; 930 text-decoration: underline; 931 font-size: inherit; 932 cursor: pointer; 933} 934 935#shopify-subscription-policy-button::before { 936 box-shadow: none; 937} 938 939 </style> 940
941<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
941 942 943 944 945 946 947 948
948<script type="text/javascript"> 949 950 window.__shgMoneyFormat = window.__shgMoneyFormat || {"USD":{"currency":"USD","currency_symbol":"$","currency_symbol_location":"left","decimal_places":2,"decimal_separator":".","thousands_separator":","}}; 951 952 window.__shgCurrentCurrencyCode = window.__shgCurrentCurrencyCode || { 953 currency: "USD", 954 currency_symbol: "$", 955 decimal_separator: ".", 956 thousands_separator: ",", 957 decimal_places: 2, 958 currency_symbol_location: "left" 959 }; 960 </script>
960 961 962 963 964 965 966
967<script type="text/javascript"> 968 969 window.SHG_CUSTOMER = null; 970 971</script>
971 972 973 974 975 976 977 978 979<!-- Start klevu-snippets DO NOT EDIT --> 980<!-- End klevu-snippets DO NOT EDIT --> 981<!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 982 983 984 985 986 987 988 989 990 991 992 993 994
994<script async src="https://static.klaviyo.com/onsite/js/KKHe7M/klaviyo.js?company_id=KKHe7M"></script>
994 995
995<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
995 996 997 998
998<script id="viewed_product"> 999 if (item == null) { 1000 var _learnq = _learnq || []; 1001 1002 var MetafieldReviews = null 1003 var MetafieldYotpoRating = null 1004 var MetafieldYotpoCount = null 1005 var MetafieldLooxRating = null 1006 var MetafieldLooxCount = null 1007 var okendoProduct = null 1008 var okendoProductReviewCount = null 1009 var okendoProductReviewAverageValue = null 1010 try { 1011 // The following fields are used for Customer Hub recently viewed in order to add reviews. 1012 // This information is not part of __kla_viewed. Instead, it is part of __kla_viewed_reviewed_items 1013 MetafieldReviews = {"rating":{"scale_min":"1.0","scale_max":"5.0","value":"4.9"},"rating_count":75}; 1014 MetafieldYotpoRating = "4.9" 1015 MetafieldYotpoCount = "75" 1016 MetafieldLooxRating = null 1017 MetafieldLooxCount = null 1018 1019 okendoProduct = null 1020 // If the okendo metafield is not legacy, it will error, which then requires the new json formatted data 1021 if (okendoProduct && 'error' in okendoProduct) { 1022 okendoProduct = null 1023 } 1024 okendoProductReviewCount = okendoProduct ? okendoProduct.reviewCount : null 1025 okendoProductReviewAverageValue = okendoProduct ? okendoProduct.reviewAverageValue : null 1026 } catch (error) { 1027 console.error('Error in Klaviyo onsite reviews tracking:', error); 1028 } 1029 1030 var item = { 1031 Name: "FreeStyle Carry-On Plus", 1032 ProductID: 7735073144874, 1033 Categories: ["All Luggage","All Products","All Travel Bags","Best Sellers","Black Friday \u0026 Cyber Monday Deals","Black Friday \u0026 Cyber Monday Deals | Travel Luggage","Carry On Luggage","Exclusive Holiday Sale Extension","Facebook Product Update Feed","Google Sale Price Feed","Mother's Day Gift Shop","New Arrivals","Pepperjam Product Feed","Road Trip Travel Bags","Shop All","Thank You Denver","The FreeStyle Collection","Travel Roller Bags","Weekend Travel Bags","Work Commute Bags"], 1034 ImageURL: "https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_grande.jpg?v=1763323665", 1035 URL: "https://www.timbuk2.com/products/1067-freestyle-carry-on-plus", 1036 Brand: "Timbuk2-Timbuk2", 1037 Price: "$345.00", 1038 Value: "345.00", 1039 CompareAtPrice: "$0.00" 1040 }; 1041 _learnq.push(['track', 'Viewed Product', item]); 1042 _learnq.push(['trackViewedItem', { 1043 Title: item.Name, 1044 ItemId: item.ProductID, 1045 Categories: item.Categories, 1046 ImageUrl: item.ImageURL, 1047 Url: item.URL, 1048 Metadata: { 1049 Brand: item.Brand, 1050 Price: item.Price, 1051 Value: item.Value, 1052 CompareAtPrice: item.CompareAtPrice 1053 }, 1054 metafields:{ 1055 reviews: MetafieldReviews, 1056 yotpo:{ 1057 rating: MetafieldYotpoRating, 1058 count: MetafieldYotpoCount, 1059 }, 1060 loox:{ 1061 rating: MetafieldLooxRating, 1062 count: MetafieldLooxCount, 1063 }, 1064 okendo: { 1065 rating: okendoProductReviewAverageValue, 1066 count: okendoProductReviewCount, 1067 } 1068 } 1069 }]); 1070 } 1071 </script>
1071 1072 1073 1074 1075 1076 1077
1077<script> 1078 window.klaviyoReviewsProductDesignMode = false 1079 </script>
1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089<!-- END app block --><!-- BEGIN app block: shopify://apps/elevar-conversion-tracking/blocks/dataLayerEmbed/bc30ab68-b15c-4311-811f-8ef485877ad6 --> 1090 1091 1092
1093<script type="module" dynamic> 1094 const configUrl = "/a/elevar/static/configs/40d72ef7affdc4b053faf41a0b8f436cf6e433a3/config.js"; 1095 const config = (await import(configUrl)).default; 1096 const scriptUrl = config.script_src_app_theme_embed; 1097 1098 if (scriptUrl) { 1099 const { handler } = await import(scriptUrl); 1100 1101 await handler( 1102 config, 1103 { 1104 cartData: { 1105 marketId: "1969094698", 1106 localeCountryCode:"US", 1107 attributes:{}, 1108 cartTotal: "0.0", 1109 currencyCode:"USD", 1110 items: [] 1111} 1112, 1113 user: { 1114 cartTotal: "0.0", 1115 currencyCode:"USD", 1116 customer: {}, 1117} 1118, 1119 isOnCartPage:false, 1120 collectionView:null, 1121 searchResultsView:null, 1122 productView:{ 1123 attributes:{}, 1124 currencyCode:"USD",defaultVariant: {id:"1067-71-1310",name:"FreeStyle Carry-On Plus", 1125 brand:"Timbuk2-Timbuk2", 1126 category:"Roller", 1127 variant:"Black \/ OS", 1128 price: "345.0", 1129 productId: "7735073144874", 1130 variantId: "43806284480554", 1131 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284480554"},items: [{id:"1067-71-1310",name:"FreeStyle Carry-On Plus", 1132 brand:"Timbuk2-Timbuk2", 1133 category:"Roller", 1134 variant:"Black \/ OS", 1135 price: "345.0", 1136 productId: "7735073144874", 1137 variantId: "43806284480554", 1138 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284480554"},{id:"1067-71-1268",name:"FreeStyle Carry-On Plus", 1139 brand:"Timbuk2-Timbuk2", 1140 category:"Roller", 1141 variant:"Moss \/ OS", 1142 price: "345.0", 1143 productId: "7735073144874", 1144 variantId: "43806284513322", 1145 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284513322"},{id:"1067-71-1312",name:"FreeStyle Carry-On Plus", 1146 brand:"Timbuk2-Timbuk2", 1147 category:"Roller", 1148 variant:"Marigold \/ OS", 1149 price: "345.0", 1150 productId: "7735073144874", 1151 variantId: "43806284546090", 1152 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284546090"},{id:"1067-71-1315",name:"FreeStyle Carry-On Plus", 1153 brand:"Timbuk2-Timbuk2", 1154 category:"Roller", 1155 variant:"Chalk\/Black \/ OS", 1156 price: "345.0", 1157 productId: "7735073144874", 1158 variantId: "43806284578858", 1159 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284578858"},{id:"1067-71-292",name:"FreeStyle Carry-On Plus", 1160 brand:"Timbuk2-Timbuk2", 1161 category:"Roller", 1162 variant:"Chalk \/ OS", 1163 price: "345.0", 1164 productId: "7735073144874", 1165 variantId: "43806284611626", 1166 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284611626"},{id:"1067-71-1317",name:"FreeStyle Carry-On Plus", 1167 brand:"Timbuk2-Timbuk2", 1168 category:"Roller", 1169 variant:"Rose \/ OS", 1170 price: "345.0", 1171 productId: "7735073144874", 1172 variantId: "43806284644394", 1173 compareAtPrice: "0.0",image:"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829",url:"\/products\/1067-freestyle-carry-on-plus?variant=43806284644394"},] 1174 }, 1175 } 1176 ); 1177 } 1178</script>
1178 1179 1180 1181<!-- END app block --><!-- BEGIN app block: shopify://apps/p4bm6pbcc-opensend/blocks/opensend/01a05839-946f-7cb2-9267-f75055aa89fa -->
1182<script type='text/javascript'> 1183!function(s) { 1184 let o = s.createElement('script'), u = s.getElementsByTagName('script')[0]; 1185 o.src = 'https://cdn.aggle.net/oir/oir.min.js'; 1186 o.async = !0, o.setAttribute('oirtyp', '48b1feaa'), o.setAttribute('oirid', 'P4BM6PBCC'); 1187 u.parentNode.insertBefore(o, u); 1188}(document); 1189</script>
1189 1190
1191<script type='text/javascript'> 1192 { 1193 const cleanObj = (value) => { 1194 if (Array.isArray(value)) { 1195 const cleanedArray = value.map(cleanObj).filter((v) => v !== undefined); 1196 return cleanedArray.length ? cleanedArray : undefined; 1197 } 1198 if (value && typeof value === "object") { 1199 const cleanedObject = Object.entries(value).reduce((acc, [key, val]) => { 1200 const cleanedValue = cleanObj(val); 1201 if (cleanedValue !== undefined && cleanedValue !== null && cleanedValue !== "") { 1202 acc[key] = cleanedValue; 1203 } 1204 return acc; 1205 }, {}); 1206 return Object.keys(cleanedObject).length ? cleanedObject : undefined; 1207 } 1208 if (value === null || value === undefined || value === "") { 1209 return undefined; 1210 } 1211 return value; 1212 }; 1213 const getCustomer = () => ({ 1214 shopifyCustomerId: "", 1215 email: "", 1216 phone: "", 1217 first_name: null, 1218 last_name: null, 1219 lifetime_value: null, 1220 order_count: null, 1221 address: { 1222 street: null, 1223 city: null, 1224 state: null, 1225 stateCode: null, 1226 postalCode: "", 1227 country: "", 1228 province: "", 1229 countryCode: "", 1230 } 1231 }); 1232 1233 } 1234</script>
1234 1235 1236 1237<!-- END app block --><!-- BEGIN app block: shopify://apps/microsoft-clarity/blocks/clarity_js/31c3d126-8116-4b4a-8ba1-baeda7c4aeea -->
1238<script type="text/javascript"> 1239 (function (c, l, a, r, i, t, y) { 1240 c[a] = c[a] || function () { (c[a].q = c[a].q || []).push(arguments); }; 1241 t = l.createElement(r); t.async = 1; t.src = "https://www.clarity.ms/tag/" + i + "?ref=shopify"; 1242 y = l.getElementsByTagName(r)[0]; y.parentNode.insertBefore(t, y); 1243 1244 c.Shopify.loadFeatures([{ name: "consent-tracking-api", version: "0.1" }], error => { 1245 if (error) { 1246 console.error("Error loading Shopify features:", error); 1247 return; 1248 } 1249 1250 c[a]('consentv2', { 1251 ad_Storage: c.Shopify.customerPrivacy.marketingAllowed() ? "granted" : "denied", 1252 analytics_Storage: c.Shopify.customerPrivacy.analyticsProcessingAllowed() ? "granted" : "denied", 1253 source: 101, 1254 }); 1255 }); 1256 1257 l.addEventListener("visitorConsentCollected", function (e) { 1258 c[a]('consentv2', { 1259 ad_Storage: e.detail.marketingAllowed ? "granted" : "denied", 1260 analytics_Storage: e.detail.analyticsAllowed ? "granted" : "denied", 1261 source: 101, 1262 }); 1263 }); 1264 })(window, document, "clarity", "script", "tcurexqa4q"); 1265</script>
1265 1266 1267 1268 1269<!-- END app block --><!-- BEGIN app block: shopify://apps/yotpo-product-reviews/blocks/settings/eb7dfd7d-db44-4334-bc49-c893b51b36cf --> 1270 1271
1272<script type="text/javascript"> 1273 (function e(){var e=document.createElement("script"); 1274 e.type="text/javascript",e.async=true, 1275 e.src="//staticw2.yotpo.com//widget.js?lang=en"; 1276 var t=document.getElementsByTagName("script")[0]; 1277 t.parentNode.insertBefore(e,t)})(); 1278</script>
1278 1279 1280 1281 1282 1283<!-- END app block -->
1283<script src="https://cdn.shopify.com/extensions/01a0f69e-7a4a-7236-b53c-021239e0fabe/event-promotion-bar-227/assets/eventpromotionbar.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1283
1283
1284<script src="https://cdn.shopify.com/extensions/01a0ef11-ed59-7a1a-9dac-8835710c3c5e/applovin-shop-integration-98/assets/app-embed.js" type="text/javascript" defer="defer"></script>
1284 1285<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1286<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: 25729458,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "product"};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 1286
1286
1287<script> 1288 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1289</script>
vendor: 1 bytes, line 1289
1289
1290<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}
1290).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: 25729458,storefrontBaseUrl: "https://www.timbuk2.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.timbuk2.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2171338794","configuration":"{\"storeHandle\":\"timbuk2-us.myshopify.com\", \"publisherId\": \"P4BM6PBCC\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"57b5024d90dd27bc4525cbd1ef6966f6","type":"APP","apiClientId":417390624769,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
1290,{"id":"1877442602","configuration":"{ \"alias\": \"TIMBUK2_US\", \"apiKey\": \"ux4ung2maf2gh5lxklpkp.fc64n2iubntb63ae5o2db\" }","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"089c563d4539df58b1e71259ac47d388","type":"APP","apiClientId":6779637,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1446379562","configuration":"{\"eventKey\":\"cbfc0862-d529-4348-8eee-0a2b86d33af7\",\"name\":\"timbuk2-us - Axon Pixel\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4a5dfd2e28427774549854cee30cb444","type":"APP","apiClientId":256560922625,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1419280426","configuration":"{\"adAccountPixelId\":\"tvscientific-pix-o-381c91dd-a328-433d-9c12-501a49aee4fb\",\"isDevMode\":\"false\",\"pixelServiceOrigin\":\"https:\\\/\\\/tvspix.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"b1ea2e57bc032f283816725ee284e102","type":"APP","apiClientId":92361228289,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1200455722","configuration":"{\"projectId\":\"tcurexqa4q\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"d8a2bb2ccbb513dc8e8b6937f4b8033e","type":"APP","apiClientId":240074326017,"privacyPurposes":[],"capabilities":["advanced_dom_events"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1198915626","configuration":"{\"accountID\":\"KKHe7M\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"801865770","configuration":"{\"site_id\":\"b3682275-be26-4cbf-bb5b-d74681ba779d\",\"analytics_endpoint\":\"https:\\\/\\\/na.shgcdn3.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"695709fc3f146fa50a25299517a954f2","type":"APP","apiClientId":1158168,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"690847786","configuration":"{\"shopUrl\":\"timbuk2-us.myshopify.com\",\"apiUrl\":\"https:\\\/\\\/services.nofraud.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0cf396a0daab06a8120b15747f89a0e3","type":"APP","apiClientId":1380557,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"651984938","configuration":"{\"campaignID\":\"32241\",\"externalExecutionURL\":\"https:\/\/engine.saasler.com\/api\/v1\/webhook_executions\/1520acfa37db574e5af869fcd2b5978e\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4d2ae310e7f99f154f33560b5c81cfa9","type":"APP","apiClientId":3546795,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
1290,"dataSharingState":"unrestricted"},{"id":"40239146","configuration":"{\"tagID\":\"2613707180719\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"8749098","configuration":"{\"config_url\": \"https:\/\/shopify-gtm-suite.getelevar.com\/configs\/40d72ef7affdc4b053faf41a0b8f436cf6e433a3\/config.js\"}","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"7ae63d00911d5ee26809bf1e3232d852","type":"APP","apiClientId":2509311,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"23461930","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"AdBeacon Pixel"},{"id":"24870954","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["SALE_OF_DATA"],"name":"Elevar Custom Pixel"},{"id":"32833578","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Ascend"},{"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":"Timbuk2","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"timbuk2-us.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/www.timbuk2.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284480554","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"},"sku":"1067-71-1310","title":"Black \/ OS","untranslatedTitle":"Black \/ OS"},{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284513322","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"},"sku":"1067-71-1268","title":"Moss \/ OS","untranslatedTitle":"Moss \/ OS"},{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284546090","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"},"sku":"1067-71-1312","title":"Marigold \/ OS","untranslatedTitle":"Marigold \/ OS"},{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284578858","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"},"sku":"1067-71-1315","title":"Chalk\/Black \/ OS","untranslatedTitle":"Chalk\/Black \/ OS"},{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284611626","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"},"sku":"1067-71-292","title":"Chalk \/ OS","untranslatedTitle":"Chalk \/ OS"},{"price":{"amount":345.0,"currencyCode":"USD"},"product":{"title":"FreeStyle Carry-On Plus","vendor":"Timbuk2-Timbuk2","id":"7735073144874","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","type":"Roller"},"id":"43806284644394","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"},"sku":"1067-71-1317","title":"Rose \/ OS","untranslatedTitle":"Rose \/ OS"}],"products":[{"id":"7735073144874","handle":"1067-freestyle-carry-on-plus","isCollective":null,"title":"FreeStyle Carry-On Plus","type":"Roller","untranslatedTitle":"FreeStyle Carry-On Plus","url":"\/products\/1067-freestyle-carry-on-plus","vendor":"Timbuk2-Timbuk2","remoteShopId":null,"variants":[{"id":"43806284480554","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-1310","title":"Black \/ OS","untranslatedTitle":"Black \/ OS"},{"id":"43806284513322","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-1268","title":"Moss \/ OS","untranslatedTitle":"Moss \/ OS"},{"id":"43806284546090","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-1312","title":"Marigold \/ OS","untranslatedTitle":"Marigold \/ OS"},{"id":"43806284578858","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-1315","title":"Chalk\/Black \/ OS","untranslatedTitle":"Chalk\/Black \/ OS"},{"id":"43806284611626","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-292","title":"Chalk \/ OS","untranslatedTitle":"Chalk \/ OS"},{"id":"43806284644394","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"},"price":{"amount":345.0,"currencyCode":"USD"},"sku":"1067-71-1317","title":"Rose \/ OS","untranslatedTitle":"Rose \/ OS"}]}
1290,{"id":"1662422253610","handle":"1825-authority-laptop-backpack-deluxe","isCollective":null,"title":"Authority Laptop Backpack Deluxe","type":"Pack","untranslatedTitle":"Authority Laptop Backpack Deluxe","url":"\/products\/1825-authority-laptop-backpack-deluxe","vendor":"Timbuk2-Timbuk2","remoteShopId":null,"variants":[{"id":"39495774142506","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/products\/timbuk2-authority-laptop-backpack-deluxe-eco-black-deluxe-1825-3-1120-front_1_c2f35867-ec02-43b3-8ff2-5e6c0f57fc78.png?v=1664825257"},"price":{"amount":179.0,"currencyCode":"USD"},"sku":"1825-3-1120","title":"OS \/ Eco Black Deluxe","untranslatedTitle":"OS \/ Eco Black Deluxe"}]},{"id":"7735073341482","handle":"1079-mode-backpack","isCollective":null,"title":"Mode Backpack","type":"Pack","untranslatedTitle":"Mode Backpack","url":"\/products\/1079-mode-backpack","vendor":"Timbuk2-Timbuk2","remoteShopId":null,"variants":[{"id":"43806285365290","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/mode-backpack-coral-OS_1079-3-163_002-front.jpg?v=1770320327"},"price":{"amount":159.0,"currencyCode":"USD"},"sku":"1079-3-163","title":"Coral \/ OS","untranslatedTitle":"Coral \/ OS"}]},{"id":"1499662024746","handle":"544-copilot-luggage-roller-corporate","isCollective":null,"title":"Copilot Luggage Roller","type":"Roller","untranslatedTitle":"Copilot Luggage Roller","url":"\/products\/
1290544-copilot-luggage-roller-corporate","vendor":"Timbuk2-Corporate","remoteShopId":null,"variants":[{"id":"13031552548906","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/products\/timbuk2-copilot-luggage-roller-black-544-7-2000-front_1_1410919d-0a75-4009-b892-7b5f4f5b6057.png?v=1662681806"},"price":{"amount":279.0,"currencyCode":"USD"},"sku":"544-4-2000","title":"M \/ Black","untranslatedTitle":"M \/ Black"}]},{"id":"1431154425898","handle":"544-copilot-luggage-roller","isCollective":null,"title":"Copilot Luggage Roller","type":"Roller","untranslatedTitle":"Copilot Luggage Roller","url":"\/products\/544-copilot-luggage-roller","vendor":"Timbuk2-Timbuk2","remoteShopId":null,"variants":[{"id":"12733983064106","image":{"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/copilot-concrete-small.png?v=1763586089"},"price":{"amount":259.0,"currencyCode":"USD"},"sku":"544-2-2000","title":"S \/ Black","untranslatedTitle":"S \/ Black"}]}],"purchasingCompany":null},},"https://www.timbuk2.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"149940240426","themePublished":"true","eventMetadataId":"7d45711f-f678-4527-8d80-bd9becc0db43","pageType":"product","resourceId":"7735073144874","shopId":"25729458","storefrontBaseUrl":"https:\/\/www.timbuk2.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":345.0,\"currencyCode\":\"USD\"},\"product\":{\"title\":\"FreeStyle Carry-On Plus\",\"vendor\":\"Timbuk2-Timbuk2\",\"id\":\"7735073144874\",\"untranslatedTitle\":\"FreeStyle Carry-On Plus\",\"url\":\"\/products\/1067-freestyle-carry-on-plus\",\"type\":\"Roller\"},\"id\":\"43806284480554\",\"image\":{\"src\":\"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830\"},\"sku\":\"1067-71-1310\",\"title\":\"Black \/ OS\",\"untranslatedTitle\":\"Black \/ OS\"}}]]"});})();</script>
1290<script> 1291 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1292 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1293 window.ShopifyAnalytics.meta.currency = 'USD'; 1294 var meta = {"product":{"id":7735073144874,"gid":"gid:\/\/shopify\/Product\/7735073144874","vendor":"Timbuk2-Timbuk2","type":"Roller","handle":"1067-freestyle-carry-on-plus","variants":[{"id":43806284480554,"price":34500,"name":"FreeStyle Carry-On Plus - Black \/ OS","public_title":"Black \/ OS","sku":"1067-71-1310"},{"id":43806284513322,"price":34500,"name":"FreeStyle Carry-On Plus - Moss \/ OS","public_title":"Moss \/ OS","sku":"1067-71-1268"},{"id":43806284546090,"price":34500,"name":"FreeStyle Carry-On Plus - Marigold \/ OS","public_title":"Marigold \/ OS","sku":"1067-71-1312"},{"id":43806284578858,"price":34500,"name":"FreeStyle Carry-On Plus - Chalk\/Black \/ OS","public_title":"Chalk\/Black \/ OS","sku":"1067-71-1315"},{"id":43806284611626,"price":34500,"name":"FreeStyle Carry-On Plus - Chalk \/ OS","public_title":"Chalk \/ OS","sku":"1067-71-292"},{"id":43806284644394,"price":34500,"name":"FreeStyle Carry-On Plus - Rose \/ OS","public_title":"Rose \/ OS","sku":"1067-71-1317"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":7735073144874,"requestId":"4dae4edf-2879-490e-ae1a-85c5ff05f4ca-1790918267"}}; 1295 for (var attr in meta) { 1296 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1297 } 1298</script>
vendor: 1 bytes, line 1298
1298
1299<script class="analytics"> 1300 (function () { 1301 var customDocumentWrite = function(content) { 1302 var jquery = null; 1303 1304 if (window.jQuery) { 1305 jquery = window.jQuery; 1306 } else if (window.Checkout && window.Checkout.$) { 1307 jquery = window.Checkout.$; 1308 } 1309 1310 if (jquery) { 1311 jquery('body').append(content); 1312 } 1313 }; 1314 1315 var hasLoggedConversion = function(token) { 1316 if (token) { 1317 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1318 } 1319 return false; 1320 } 1321 1322 var setCookieIfConversion = function(token) { 1323 if (token) { 1324 var twoMonthsFromNow = new Date(Date.now()); 1325 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1326 1327 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1328 } 1329 } 1330 1331 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1332 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1333 if (trekkie.integrations) { 1334 return; 1335 } 1336 trekkie.methods = [ 1337 'identify', 1338 'page', 1339 'ready', 1340 'track', 1341 'trackForm', 1342 'trackLink' 1343 ]; 1344 trekkie.factory = function(method) { 1345 return function() { 1346 var args = Array.prototype.slice.call(arguments); 1347 args.unshift(method); 1348 trekkie.push(args); 1349 if (method == 'track' || method == 'page') { 1350 var pageUrl; 1351 try { 1352 pageUrl = window.location.href; 1353 } catch (e) {} 1354 var pageReferrer; 1355 try { 1356 pageReferrer = document.referrer; 1357 } catch (e) {} 1358 try { 1359 if (window.__TREKKIE_SHIM_QUEUE == null) { 1360 window.__TREKKIE_SHIM_QUEUE = []; 1361 } 1362 window.__TREKKIE_SHIM_QUEUE.push({ 1363 from: 'trekkie-stub', 1364 method: method, 1365 args: args.slice(1), 1366 pageContext: { 1367 url: pageUrl, 1368 referrer: pageReferrer 1369 } 1370 }); 1371 } catch (e) { 1372 // no-op 1373 } 1374 } 1375 return trekkie; 1376 }; 1377 }; 1378 for (var i = 0; i < trekkie.methods.length; i++) { 1379 var key = trekkie.methods[i]; 1380 trekkie[key] = trekkie.factory(key); 1381 } 1382 trekkie.load = function(config) { 1383 trekkie.config = config || {}; 1384 trekkie.config.initialDocumentCookie = document.cookie; 1385 var first = document.getElementsByTagName('script')[0]; 1386var script = document.createElement('script'); 1387script.type = 'text/javascript'; 1388script.onerror = function(e) { 1389 var scriptFallback = document.createElement('script'); 1390 scriptFallback.type = 'text/javascript'; 1391 scriptFallback.onerror = function(error) { 1392 var Monorail = { 1393 produce: function produce(monorailDomain, schemaId, payload) { 1394 var currentMs = new Date().getTime(); 1395 var event = { 1396 schema_id: schemaId, 1397 payload: payload, 1398 metadata: { 1399 event_created_at_ms: currentMs, 1400 event_sent_at_ms: currentMs 1401 } 1402 }; 1403 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1404 }, 1405 sendRequest: function sendRequest(endpointUrl, payload) { 1406 // Try the sendBeacon API 1407 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1408 var blobData = new window.Blob([payload], { 1409 type: 'text/plain' 1410 }); 1411 1412 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1413 return true; 1414 } // sendBeacon was not successful 1415 1416 } // XHR beacon 1417 1418 var xhr = new XMLHttpRequest(); 1419 1420 try { 1421 xhr.open('POST', endpointUrl); 1422 xhr.setRequestHeader('Content-Type', 'text/plain'); 1423 xhr.send(payload); 1424 } catch (e) { 1425 console.log(e); 1426 } 1427 1428 return false; 1429 }, 1430 isIos12: function isIos12() { 1431 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1432 } 1433 }; 1434 Monorail.produce('monorail-edge.shopifysvc.com', 1435 'trekkie_storefront_load_errors/1.1', 1436 {shop_id: 25729458, 1437 theme_id: 149940240426, 1438 app_name: "storefront", 1439 context_url: window.location.href, 1440 source_url: "//www.timbuk2.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 1441 1442 }; 1443 scriptFallback.async = true; 1444 scriptFallback.src = '//www.timbuk2.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1445 first.parentNode.insertBefore(scriptFallback, first); 1446}; 1447script.async = true; 1448script.src = '//www.timbuk2.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1449first.parentNode.insertBefore(script, first); 1450 1451 }; 1452 trekkie.load( 1453 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":25729458,"isMerchantRequest":null,"themeId":149940240426,"themeCityHash":"12705643525324938945","contentLanguage":"en","currency":"USD","eventMetadataId":"7d45711f-f678-4527-8d80-bd9becc0db43"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 1454 ); 1455 1456 var loaded = false;
1457 trekkie.ready(function() { 1458 if (loaded) return; 1459 loaded = true; 1460 1461 window.ShopifyAnalytics.lib = window.trekkie; 1462 1463 var originalDocumentWrite = document.write; 1464 document.write = customDocumentWrite; 1465 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1466 document.write = originalDocumentWrite; 1467 1468 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1469 var token = match? match[1]: undefined; 1470 if (!hasLoggedConversion(token)) { 1471 setCookieIfConversion(token); 1472 window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"USD","variantId":43806284480554,"productId":7735073144874,"productGid":"gid:\/\/shopify\/Product\/7735073144874","name":"FreeStyle Carry-On Plus - Black \/ OS","price":"345.00","sku":"1067-71-1310","brand":"Timbuk2-Timbuk2","variant":"Black \/ OS","category":"Roller","nonInteraction":true,"remote":false,"available":true},undefined,undefined,{"shopifyEmitted":true}); 1473 } 1474 }); 1475 1476 window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":7735073144874,"requestId":"4dae4edf-2879-490e-ae1a-85c5ff05f4ca-1790918267","shopifyEmitted":true}); 1477 1478 var eventsListenerScript = document.createElement('script'); 1479 eventsListenerScript.async = true; 1480 eventsListenerScript.src = "//www.timbuk2.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1481 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1482})();</script>
vendor: 1 bytes, line 1482
1482
1483<script 1484 defer 1485 src="https://www.timbuk2.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 1486 data-application="storefront-renderer" 1487 data-shop-id="25729458" 1488 data-render-region="gcp-us-central1" 1489 data-page-type="product" 1490 data-theme-instance-id="149940240426" 1491 data-theme-name="Timbuk2 by Pivot" 1492 data-theme-version="2026-08-06-1" 1493 data-monorail-region="shop_domain" 1494 data-resource-timing-sampling-rate="10" 1495 data-shs="true" 1496 data-shs-beacon="true" 1497 data-shs-export-with-fetch="true" 1498 data-shs-logs-sample-rate="1" 1499 data-shs-beacon-endpoint="https://www.timbuk2.com/api/collect" 1500></script>
1500 1501<meta name="shopify-y" content="2abf650e-abca-482b-9b26-e2dc8433350d" data-expiration="1822475867000"><meta name="shopify-s" content="e032d5cb-e1f6-4ba0-89a4-31244a762f07" data-expiration="1790920067000"><meta name="new-cookie-storage-activated" content="t"> 1502</head> 1503 1504 <body id="freestyle-carry-on-plus" class="template-product template-product--freestyle-carry-on-plus template-product--" data-theme="149940240426"> 1505 1506 <a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a> 1507 1508 1509 1510 1511 <div id="shopify-section-header" class="shopify-section shopify-section--header js-customizer-sticky-header"> 1512 1513 1514 <aside id="announcement-header" class="header-announcement" data-announcement> 1515 <div 1516 class="header-announcement__carousel swiper-container" 1517 1518 > 1519 <div class="header-announcement__list swiper-wrapper"> 1520 1521 1522 1523 <div class="header-announcement__item swiper-slide" data-announcement-item> 1524 <div class="header-announcement__content"> 1525 <p>Free Shipping on Orders $99+ <a href="/collections/all" title="All Products">Shop Now</a></p> 1526 1527 1528 </div> 1529 </div> 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 </div> 1553 </div> 1554 1555 1556 </aside> 1557 1558 1559<header id="header" class="header" data-header data-section-id="header" data-section-type="header" role="banner"> 1560 <div class="header-container" data-header-content> 1561 <button 1562 type="button" 1563 class="header__menu" 1564 data-toggle-class="menu-active" 1565 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 1566 aria-label="Menu" 1567 > 1568 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="24px" height="14px" viewBox="0 0 24 14" xml:space="preserve"> 1569 <g fill="#2d3142"> 1570 <rect width="24" height="2"/> 1571 <rect y="6" width="24" height="2"/> 1572 <rect y="12" width="24" height="2"/> 1573 </g> 1574</svg> 1575 1576 </button> 1577 1578 <figure itemscope itemtype="http://schema.org/Organization" class="header-logo"> 1579 <a href="/" itemprop="url" aria-label="Timbuk2" class="header-logo__link"> 1580 <img src="//www.timbuk2.com/cdn/shop/t/1317/assets/logo.svg?v=21194569584463135061788907511" class="header-logo__image" alt="Timbuk2" /> 1581 <meta itemprop="logo" content="//www.timbuk2.com/cdn/shop/t/1317/assets/logo.jpg?v=274282"> 1582 </a> 1583 <figcaption class="header-logo__info"> 1584 1585 <div class="visually-hidden" itemprop="name">Timbuk2</div> 1586 1587 </figcaption> 1588 </figure> 1589 1590 <div class="header-container__nav"> 1591 1592 1593<nav class="nav" role="navigation" aria-label="primary" data-header-nav> 1594 <div class="nav-header"> 1595 <p class="nav-header__title">Menu</p> 1596 1597 <button 1598 type="button" 1599 class="nav-header__close" 1600 data-toggle-class="menu-active" 1601 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 1602 aria-label="Close" 1603 > 1604 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 1605 <g fill="#2d3142"> 1606 <polygon points="15.833,2.2 13.863,0.267 8,6.158 2.137,0.267 0.167,2.2 5.967,8 0.167,13.8 2.137,15.733 8,9.842 13.863,15.733 15.833,13.8 10.033,8 "/> 1607 </g> 1608</svg> 1609 </button> 1610 </div> 1611 1612 <div class="nav-content"> 1613 1614 1615 1616 <ul class="nav__list"> 1617 1618 1619 <li class="nav__item"> 1620 <a 1621 href="/collections/shop-all" 1622 class="nav__link" 1623 data-nav-submenu-open="shop-all-1" 1624 data-nav-hover 1625 > 1626 <span class="nav__link-text">Shop All</span> 1627 1628 <i class="nav__link-icon nav__link-icon--mobile"> 1629 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve">
1630 <polygon fill="#2d3142" points="5.135,0.267 3.165,2.2 8.965,7.999 3.165,13.799 5.135,15.733 12.835,8 "/> 1631</svg> 1632 </i> 1633 1634 </a> 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 <div class="subnav" data-subnav> 1695 <div class="subnav__wrap"> 1696 <div class="subnav__columns"> 1697 1698 1699 1700 1701 <div class="subnav__column"> 1702 <p class="subnav__title">Shop by Category</p> 1703 1704 <ul class="subnav__sublist"> 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 <li class="subnav__subitem"> 1715 <a href="/collections/all-luggage" class="subnav__sublink"> 1716 1717 Luggage 1718 </a> 1719 </li> 1720 1721 1722 1723 1724 1725 1726 1727 1728 <li class="subnav__subitem"> 1729 <a href="/collections/all-bags" class="subnav__sublink"> 1730 1731 Bags 1732 </a> 1733 </li> 1734 1735 1736 1737 1738 1739 1740 1741 1742 <li class="subnav__subitem"> 1743 <a href="/collections/all-backpacks" class="subnav__sublink"> 1744 1745 Backpacks 1746 </a> 1747 </li> 1748 1749 1750 1751 1752 1753 1754 1755 1756 <li class="subnav__subitem"> 1757 <a href="/collections/custom-bags-backpacks" class="subnav__sublink"> 1758 1759 Custom 1760 </a> 1761 </li> 1762 1763 1764 1765 1766 1767 1768 1769 1770 <li class="subnav__subitem"> 1771 <a href="/collections/accessories" class="subnav__sublink"> 1772 1773 Accessories 1774 </a> 1775 </li> 1776 1777 1778 1779 1780 1781 1782 1783 1784 <li class="subnav__subitem"> 1785 <a href="/collections/sets" class="subnav__sublink"> 1786 1787 Save on Sets 1788 </a> 1789 </li> 1790 1791 1792 1793 1794 1795 1796 1797 1798 <li class="subnav__subitem"> 1799 <a href="/collections/new-arrivals" class="subnav__sublink"> 1800 1801 New Arrivals 1802 </a> 1803 </li> 1804 1805 1806 1807 1808 1809 1810 1811 1812 <li class="subnav__subitem"> 1813 <a href="/collections/best-sellers" class="subnav__sublink"> 1814 1815 Best Sellers 1816 </a> 1817 </li> 1818 1819 1820 1821 1822 1823 1824 1825 1826 <li class="subnav__subitem"> 1827 <a href="/collections/limited-edition" class="subnav__sublink"> 1828 1829 Limited Edition 1830 </a> 1831 </li> 1832 1833 1834 </ul> 1835 1836 </div> 1837 1838 <div class="subnav__column"> 1839 <p class="subnav__title">Shop by Color</p> 1840 1841 <ul class="subnav__sublist subnav__sublist--swatch"> 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 <li class="subnav__subitem"> 1852 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Achalk" class="subnav__sublink subnav__sublink--swatch"> 1853 1854 1855 <span class="subnav__swatch" 1856 1857 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/chalk-swatch.svg?v=1764842621');" 1858 1859 ></span> 1860 1861 Chalk 1862 </a> 1863 </li> 1864 1865 1866 1867 1868 1869 1870 1871 1872 <li class="subnav__subitem"> 1873 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amarigold" class="subnav__sublink subnav__sublink--swatch"> 1874 1875 1876 <span class="subnav__swatch" 1877 1878 style="background-color: #E5C225;" 1879 1880 ></span> 1881 1882 Marigold 1883 </a> 1884 </li> 1885 1886 1887 1888 1889 1890 1891 1892 1893 <li class="subnav__subitem"> 1894 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amoss" class="subnav__sublink subnav__sublink--swatch"> 1895 1896
1897 <span class="subnav__swatch" 1898 1899 style="background-color: #42583F;" 1900 1901 ></span> 1902 1903 Moss 1904 </a> 1905 </li> 1906 1907 1908 1909 1910 1911 1912 1913 1914 <li class="subnav__subitem"> 1915 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Arose" class="subnav__sublink subnav__sublink--swatch"> 1916 1917 1918 <span class="subnav__swatch" 1919 1920 style="background-color: #EBCCC7;" 1921 1922 ></span> 1923 1924 Rose 1925 </a> 1926 </li> 1927 1928 1929 1930 1931 1932 1933 1934 1935 <li class="subnav__subitem"> 1936 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ablack" class="subnav__sublink subnav__sublink--swatch"> 1937 1938 1939 <span class="subnav__swatch" 1940 1941 style="background-color: #000000;" 1942 1943 ></span> 1944 1945 Black 1946 </a> 1947 </li> 1948 1949 1950 1951 1952 1953 1954 1955 1956 <li class="subnav__subitem"> 1957 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Awhite" class="subnav__sublink subnav__sublink--swatch"> 1958 1959 1960 <span class="subnav__swatch" 1961 1962 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/white-swatch.svg?v=1764842620');" 1963 1964 ></span> 1965 1966 White 1967 </a> 1968 </li> 1969 1970 1971 1972 1973 1974 1975 1976 1977 <li class="subnav__subitem"> 1978 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Abeige" class="subnav__sublink subnav__sublink--swatch"> 1979 1980 1981 <span class="subnav__swatch" 1982 1983 style="background-color: #E8DACA;" 1984 1985 ></span> 1986 1987 Beige 1988 </a> 1989 </li> 1990 1991 1992 1993 1994 1995 1996 1997 1998 <li class="subnav__subitem"> 1999 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ayellow" class="subnav__sublink subnav__sublink--swatch"> 2000 2001 2002 <span class="subnav__swatch" 2003 2004 style="background-color: #F6C960;" 2005 2006 ></span> 2007 2008 Yellow 2009 </a> 2010 </li> 2011 2012 2013 2014 2015 2016 2017 2018 2019 <li class="subnav__subitem"> 2020 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Aorange" class="subnav__sublink subnav__sublink--swatch"> 2021 2022 2023 <span class="subnav__swatch" 2024 2025 style="background-color: #D76800;" 2026 2027 ></span> 2028 2029 Orange 2030 </a> 2031 </li> 2032 2033 2034 2035 2036 2037 2038 2039 2040 <li class="subnav__subitem"> 2041 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Apink" class="subnav__sublink subnav__sublink--swatch"> 2042 2043 2044 <span class="subnav__swatch" 2045 2046 style="background-color: #F03680;" 2047 2048 ></span> 2049 2050 Pink 2051 </a> 2052 </li> 2053 2054 2055 2056 2057 2058 2059 2060 2061 <li class="subnav__subitem"> 2062 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ared" class="subnav__sublink subnav__sublink--swatch"> 2063 2064 2065 <span class="subnav__swatch" 2066 2067 style="background-color: #C23838;" 2068 2069 ></span> 2070 2071 Red 2072 </a> 2073 </li> 2074 2075 2076 2077 2078 2079 2080 2081 2082 <li class="subnav__subitem"> 2083 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Agreen" class="subnav__sublink subnav__sublink--swatch"> 2084 2085
2086 <span class="subnav__swatch" 2087 2088 style="background-color: #0AB968;" 2089 2090 ></span> 2091 2092 Green 2093 </a> 2094 </li> 2095 2096 2097 2098 2099 2100 2101 2102 2103 <li class="subnav__subitem"> 2104 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Agrey" class="subnav__sublink subnav__sublink--swatch"> 2105 2106 2107 <span class="subnav__swatch" 2108 2109 style="background-color: #8B8B8B;" 2110 2111 ></span> 2112 2113 Grey 2114 </a> 2115 </li> 2116 2117 2118 2119 2120 2121 2122 2123 2124 <li class="subnav__subitem"> 2125 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Apurple" class="subnav__sublink subnav__sublink--swatch"> 2126 2127 2128 <span class="subnav__swatch" 2129 2130 style="background-color: #9370B3;" 2131 2132 ></span> 2133 2134 Purple 2135 </a> 2136 </li> 2137 2138 2139 2140 2141 2142 2143 2144 2145 <li class="subnav__subitem"> 2146 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ablue" class="subnav__sublink subnav__sublink--swatch"> 2147 2148 2149 <span class="subnav__swatch" 2150 2151 style="background-color: #364477;" 2152 2153 ></span> 2154 2155 Blue 2156 </a> 2157 </li> 2158 2159 2160 2161 2162 2163 2164 2165 2166 <li class="subnav__subitem"> 2167 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amulticolor" class="subnav__sublink subnav__sublink--swatch"> 2168 2169 2170 <span class="subnav__swatch" 2171 2172 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/Layer_1.svg?v=1764787633');" 2173 2174 ></span> 2175 2176 Multicolor 2177 </a> 2178 </li> 2179 2180 2181 2182 2183 2184 2185 2186 2187 <li class="subnav__subitem subnav__subitem--custom"> 2188 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Acustom" class="subnav__sublink subnav__sublink--swatch"> 2189 2190 2191 <span class="subnav__swatch" 2192 2193 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/badge-customize_1.png?v=1764836375');" 2194 2195 ></span> 2196 2197 Custom 2198 </a> 2199 </li> 2200 2201 2202 </ul> 2203 2204 </div> 2205 2206 2207 2208 2209 <div class="subnav__column subnav__column--promo-1 subnav__column--promo-swatch"> 2210 <div class="subnav-promo subnav-promo--1"> 2211 <ul class="subnav-promo__list"> 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 <li class="subnav-promo__item"> 2228 <a 2229 href="/collections/all-luggage" 2230 class="subnav-promo__link" 2231 > 2232 2233 <picture class="subnav-promo__picture"> 2234 2235 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_499x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_998x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1920px)"> 2236 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_454x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_908x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1800px)"> 2237 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_416x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_832x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1600px)"> 2238 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_372x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_744x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1400px)"> 2239 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_328x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_656x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1200px)"> 2240 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_320x.progressive.png.jpg?v=1776805203 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_640x.progressive.png.jpg?v=1776805203 2x" media="(min-width: 1024px)"> 2241 2242 <img 2243 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 2244 data-src="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_freestyle_292x.progressive.png.jpg?v=1776805203" 2245 alt="" 2246 height="244" 2247 width="461" 2248 class="lazy" 2249 > 2250 </picture> 2251 2252 2253 2254 <div class="subnav-promo__info"> 2255 <p class="subnav-promo__title">FreeStyle Luggage in Chalk</p> 2256 </div> 2257 2258 </a> 2259 </li> 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 </ul> 2289 </div> 2290 </div> 2291 2292 </div> 2293 </div> 2294 </div> 2295 2296 </li> 2297 2298 2299 <li class="nav__item"> 2300 <a 2301 href="/collections/all-luggage" 2302 class="nav__link" 2303 data-nav-submenu-open="luggage-2" 2304 data-nav-hover 2305 >
2306 <span class="nav__link-text">Luggage</span> 2307 2308 <i class="nav__link-icon nav__link-icon--mobile"> 2309 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 2310 <polygon fill="#2d3142" points="5.135,0.267 3.165,2.2 8.965,7.999 3.165,13.799 5.135,15.733 12.835,8 "/> 2311</svg> 2312 </i> 2313 2314 </a> 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 <div class="subnav" data-subnav> 2379 <div class="subnav__wrap"> 2380 <div class="subnav__columns"> 2381 2382 <div class="subnav__column subnav__column--content-2"> 2383 <div class="subnav__list"> 2384 2385 2386 <div class="subnav__item"> 2387 <p class="subnav__title">Shop By Category</p> 2388 2389 <ul class="subnav__sublist"> 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 <li class="subnav__subitem"> 2400 <a href="/collections/carry-on-luggage" class="subnav__sublink"> 2401 2402 Carry-On Luggage 2403 </a> 2404 </li> 2405 2406 2407 2408 2409 2410 2411 2412 2413 <li class="subnav__subitem"> 2414 <a href="/collections/check-in-luggage" class="subnav__sublink"> 2415 2416 Check-In Luggage 2417 </a> 2418 </li> 2419 2420 2421 2422 2423 2424 2425 2426 2427 <li class="subnav__subitem"> 2428 <a href="/collections/sets" class="subnav__sublink"> 2429 2430 Save on Sets 2431 </a> 2432 </li> 2433 2434 2435 2436 2437 2438 2439 2440 2441 <li class="subnav__subitem"> 2442 <a href="/collections/all-luggage" class="subnav__sublink"> 2443 2444 All Luggage 2445 </a> 2446 </li> 2447 2448 2449 </ul> 2450 2451 </div> 2452 2453 </div> 2454 </div> 2455 2456 2457 2458 <div class="subnav__column subnav__column--promo-2"> 2459 <div class="subnav-promo subnav-promo--2"> 2460 <ul class="subnav-promo__list"> 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 <li class="subnav-promo__item"> 2474 <a 2475 href="/products/1067-freestyle-carry-on-plus" 2476 class="subnav-promo__link" 2477 > 2478 2479 <picture class="subnav-promo__picture"> 2480 2481 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_499x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_998x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1920px)"> 2482 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_454x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_908x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1800px)"> 2483 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_416x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_832x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1600px)"> 2484 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_372x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_744x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1400px)"> 2485 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_328x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_656x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1200px)"> 2486 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_320x.progressive.png.jpg?v=1779473149 1x, //www.timbuk2.com/cdn/shop/files/Navigation_Flyout_640x.progressive.png.jpg?v=1779473149 2x" media="(min-width: 1024px)"> 2487 2488 <img 2489 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 2490 data-src="//www.timbuk2.com/cdn/shop/files/Navigation_Flyout_292x.progressive.png.jpg?v=1779473149" 2491 alt="" 2492 height="244" 2493 width="461" 2494 class="lazy" 2495 > 2496 </picture> 2497 2498 2499 2500 <div class="subnav-promo__info"> 2501 <p class="subnav-promo__title">Award-Winning FreeStyle Carry-On Plus</p> 2502 </div> 2503 2504 </a> 2505 </li> 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 <li class="subnav-promo__item"> 2521 <a 2522 href="/collections/sets" 2523 class="subnav-promo__link" 2524 > 2525 2526 <picture class="subnav-promo__picture"> 2527 2528 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_499x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_998x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1920px)"> 2529 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_454x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_908x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1800px)"> 2530 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_416x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_832x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1600px)"> 2531 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_372x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_744x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1400px)"> 2532 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_328x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_656x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1200px)"> 2533 <source data-srcset="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_320x.progressive.png.jpg?v=1776805226 1x, //www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_640x.progressive.png.jpg?v=1776805226 2x" media="(min-width: 1024px)"> 2534 2535 <img 2536 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 2537 data-src="//www.timbuk2.com/cdn/shop/files/T2_web_luggage_nav_flyout_sets_292x.progressive.png.jpg?v=1776805226"
2538 alt="" 2539 height="244" 2540 width="461" 2541 class="lazy" 2542 > 2543 </picture> 2544 2545 2546 2547 <div class="subnav-promo__info"> 2548 <p class="subnav-promo__title">Save on Sets</p> 2549 </div> 2550 2551 </a> 2552 </li> 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 </ul> 2579 </div> 2580 </div> 2581 2582 </div> 2583 </div> 2584 </div> 2585 2586 </li> 2587 2588 2589 <li class="nav__item"> 2590 <a 2591 href="/collections/all-bags" 2592 class="nav__link" 2593 data-nav-submenu-open="bags-3" 2594 data-nav-hover 2595 > 2596 <span class="nav__link-text">Bags</span> 2597 2598 <i class="nav__link-icon nav__link-icon--mobile"> 2599 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 2600 <polygon fill="#2d3142" points="5.135,0.267 3.165,2.2 8.965,7.999 3.165,13.799 5.135,15.733 12.835,8 "/> 2601</svg> 2602 </i> 2603 2604 </a> 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 <div class="subnav" data-subnav> 2669 <div class="subnav__wrap"> 2670 <div class="subnav__columns"> 2671 2672 <div class="subnav__column subnav__column--content-2"> 2673 <div class="subnav__list"> 2674 2675 2676 <div class="subnav__item"> 2677 <p class="subnav__title">Shop by Category</p> 2678 2679 <ul class="subnav__sublist"> 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 <li class="subnav__subitem"> 2690 <a href="/collections/all-travel-bags" class="subnav__sublink"> 2691 2692 Travel Bags 2693 </a> 2694 </li> 2695 2696 2697 2698 2699 2700 2701 2702 2703 <li class="subnav__subitem"> 2704 <a href="/collections/all-messenger-bags" class="subnav__sublink"> 2705 2706 Messenger Bags 2707 </a> 2708 </li> 2709 2710 2711 2712 2713 2714 2715 2716 2717 <li class="subnav__subitem"> 2718 <a href="/collections/laptop-bags-work-briefcases" class="subnav__sublink"> 2719 2720 Laptop Bags 2721 </a> 2722 </li> 2723 2724 2725 2726 2727 2728 2729 2730 2731 <li class="subnav__subitem"> 2732 <a href="/collections/sling-bags" class="subnav__sublink"> 2733 2734 Crossbody Bags 2735 </a> 2736 </li> 2737 2738 2739 2740 2741 2742 2743 2744 2745 <li class="subnav__subitem"> 2746 <a href="/collections/travel-duffel-bags" class="subnav__sublink"> 2747 2748 Duffel Bags 2749 </a> 2750 </li> 2751 2752 2753 2754 2755 2756 2757 2758 2759 <li class="subnav__subitem"> 2760 <a href="/collections/tote-bags" class="subnav__sublink"> 2761 2762 Tote Bags 2763 </a> 2764 </li> 2765 2766 2767 2768 2769 2770 2771 2772 2773 <li class="subnav__subitem"> 2774 <a href="/products/1572-tandem-pannier" class="subnav__sublink"> 2775 2776 Pannier Bags 2777 </a> 2778 </li> 2779 2780 2781 2782 2783 2784 2785 2786 2787 <li class="subnav__subitem"> 2788 <a href="/collections/all-bags" class="subnav__sublink"> 2789 2790 All Bags 2791 </a> 2792 </li> 2793 2794 2795 </ul> 2796 2797 </div> 2798 2799 </div> 2800 </div> 2801 2802 2803 2804 <div class="subnav__column subnav__column--promo-2"> 2805 <div class="subnav-promo subnav-promo--2"> 2806 <ul class="subnav-promo__list"> 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 <li class="subnav-promo__item"> 2829 <a 2830 href="/products/1108-classic-messenger-bag" 2831 class="subnav-promo__link" 2832 > 2833 2834 <picture class="subnav-promo__picture"> 2835 2836 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAV
2836IGATION_499x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_998x.progressive.jpg?v=1692677749 2x" media="(min-width: 1920px)"> 2837 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_454x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_908x.progressive.jpg?v=1692677749 2x" media="(min-width: 1800px)"> 2838 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_416x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_832x.progressive.jpg?v=1692677749 2x" media="(min-width: 1600px)"> 2839 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_372x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_744x.progressive.jpg?v=1692677749 2x" media="(min-width: 1400px)"> 2840 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_328x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_656x.progressive.jpg?v=1692677749 2x" media="(min-width: 1200px)"> 2841 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_320x.progressive.jpg?v=1692677749 1x, //www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_640x.progressive.jpg?v=1692677749 2x" media="(min-width: 1024px)"> 2842 2843 <img 2844 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 2845 data-src="//www.timbuk2.com/cdn/shop/files/2023-08-CMB-ONE-NAVIGATION_292x.progressive.jpg?v=1692677749" 2846 alt="" 2847 height="244" 2848 width="461" 2849 class="lazy" 2850 > 2851 </picture> 2852 2853 2854 2855 <div class="subnav-promo__info"> 2856 <p class="subnav-promo__title">Classic Messenger Bag</p> 2857 </div> 2858 2859 </a> 2860 </li> 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 <li class="subnav-promo__item"> 2873 <a 2874 href="https://www.timbuk2.com/collections/all-backpacks/products/5280-wingman-travel-backpack-duffel" 2875 class="subnav-promo__link" 2876 > 2877 2878 <picture class="subnav-promo__picture"> 2879 2880 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_499x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_998x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1920px)"> 2881 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_454x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_908x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1800px)"> 2882 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_416x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_832x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1600px)"> 2883 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_372x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_744x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1400px)"> 2884 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_328x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_656x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1200px)"> 2885 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Wingman-nav_320x.progressive.png.jpg?v=1776816582 1x, //www.timbuk2.com/cdn/shop/files/Wingman-nav_640x.progressive.png.jpg?v=1776816582 2x" media="(min-width: 1024px)"> 2886 2887 <img 2888 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 2889 data-src="//www.timbuk2.com/cdn/shop/files/Wingman-nav_292x.progressive.png.jpg?v=1776816582" 2890 alt="" 2891 height="244" 2892 width="461" 2893 class="lazy" 2894 > 2895 </picture> 2896 2897 2898 2899 <div class="subnav-promo__info"> 2900 <p class="subnav-promo__title">Wingman Travel Backpack Duffel</p> 2901 </div> 2902 2903 </a> 2904 </li> 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 </ul> 2925 </div> 2926 </div> 2927 2928 </div> 2929 </div> 2930 </div> 2931 2932 </li> 2933 2934 2935 <li class="nav__item"> 2936 <a 2937 href="/collections/all-backpacks" 2938 class="nav__link" 2939 data-nav-submenu-open="backpacks-4" 2940 data-nav-hover 2941 >
2942 <span class="nav__link-text">Backpacks</span> 2943 2944 <i class="nav__link-icon nav__link-icon--mobile"> 2945 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 2946 <polygon fill="#2d3142" points="5.135,0.267 3.165,2.2 8.965,7.999 3.165,13.799 5.135,15.733 12.835,8 "/> 2947</svg> 2948 </i> 2949 2950 </a> 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 <div class="subnav" data-subnav> 3015 <div class="subnav__wrap"> 3016 <div class="subnav__columns"> 3017 3018 <div class="subnav__column subnav__column--content-2"> 3019 <div class="subnav__list"> 3020 3021 3022 <div class="subnav__item"> 3023 <p class="subnav__title">Shop by Category</p> 3024 3025 <ul class="subnav__sublist"> 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 <li class="subnav__subitem"> 3036 <a href="/collections/travel-backpacks" class="subnav__sublink"> 3037 3038 Travel Backpacks 3039 </a> 3040 </li> 3041 3042 3043 3044 3045 3046 3047 3048 3049 <li class="subnav__subitem"> 3050 <a href="/collections/laptop-backpacks" class="subnav__sublink"> 3051 3052 Laptop Backpacks 3053 </a> 3054 </li> 3055 3056 3057 3058 3059 3060 3061 3062 3063 <li class="subnav__subitem"> 3064 <a href="/collections/water-resistant-backpacks" class="subnav__sublink"> 3065 3066 Weatherproof Backpacks 3067 </a> 3068 </li> 3069 3070 3071 3072 3073 3074 3075 3076 3077 <li class="subnav__subitem"> 3078 <a href="/collections/work-backpacks" class="subnav__sublink"> 3079 3080 Work Backpacks 3081 </a> 3082 </li> 3083 3084 3085 3086 3087 3088 3089 3090 3091 <li class="subnav__subitem"> 3092 <a href="/collections/all-backpacks" class="subnav__sublink"> 3093 3094 All Backpacks 3095 </a> 3096 </li> 3097 3098 3099 </ul> 3100 3101 </div> 3102 3103 </div> 3104 </div> 3105 3106 3107 3108 <div class="subnav__column subnav__column--promo-2"> 3109 <div class="subnav-promo subnav-promo--2"> 3110 <ul class="subnav-promo__list"> 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 <li class="subnav-promo__item"> 3139 <a 3140 href="/products/1825-authority-laptop-backpack-deluxe" 3141 class="subnav-promo__link" 3142 > 3143 3144 <picture class="subnav-promo__picture"> 3145 3146 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_499x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_998x.progressive.jpg?v=1759879854 2x" media="(min-width: 1920px)"> 3147 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_454x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_908x.progressive.jpg?v=1759879854 2x" media="(min-width: 1800px)"> 3148 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_416x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_832x.progressive.jpg?v=1759879854 2x" media="(min-width: 1600px)"> 3149 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_372x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_744x.progressive.jpg?v=1759879854 2x" media="(min-width: 1400px)"> 3150 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_328x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_656x.progressive.jpg?v=1759879854 2x" media="(min-width: 1200px)"> 3151 <source data-srcset="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_320x.progressive.jpg?v=1759879854 1x, //www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_640x.progressive.jpg?v=1759879854 2x" media="(min-width: 1024px)"> 3152 3153 <img 3154 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 3155 data-src="//www.timbuk2.com/cdn/shop/files/2025-10-EVERGREEN-THIRD-MODULE-DT-02_292x.progressive.jpg?v=1759879854" 3156 alt="" 3157 height="244" 3158 width="461" 3159 class="lazy" 3160 > 3161 </picture> 3162 3163 3164 3165 <div class="subnav-promo__info"> 3166 <p class="subnav-promo__title">Authority Laptop Backpack Deluxe</p> 3167 </div> 3168 3169 </a> 3170 </li> 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 <li class="subnav-promo__item"> 3183 <a 3184 href="/products/1079-mode-backpack" 3185 class="subnav-promo__link" 3186 > 3187 3188 <picture class="subnav-promo__picture"> 3189 3190 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_499x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_998x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1920px)"> 3191 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_454x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_908x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1800px)"> 3192 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_416x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_832x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1600px)"> 3193 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_372x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_744x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1400px)"> 3194 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_328x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_656x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1200px)"> 3195 <source data-srcset="//www.timbuk2.com/cdn/shop/files/Frame_8_320x.progressive.png.jpg?v=1776816272 1x, //www.timbuk2.com/cdn/shop/files/Frame_8_640x.progressive.png.jpg?v=1776816272 2x" media="(min-width: 1024px)"> 3196 3197 <img 3198 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 3199 data-src="//www.timbuk2.com/cdn/shop/files/Frame_8_292x.progressive.png.jpg?v=1776816272" 3200 alt="" 3201 height="244" 3202 width="461" 3203 class="lazy" 3204 > 3205 </picture> 3206 3207 3208 3209 <div class="subnav-promo__info"> 3210 <p class="subnav-promo__title">Mode Backpack</p> 3211 </div> 3212 3213 </a> 3214 </li> 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 </ul> 3229 </div> 3230 </div> 3231 3232 </div> 3233 </div> 3234 </div> 3235 3236 </li> 3237 3238 3239 <li class="nav__item"> 3240 <a 3241 href="/collections/custom-bags-backpacks" 3242 class="nav__link" 3243 3244 data-nav-hover 3245 >
3246 <span class="nav__link-text">Custom</span> 3247 3248 </a> 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 </li> 3305 3306 3307 <li class="nav__item"> 3308 <a 3309 href="/collections/accessories" 3310 class="nav__link" 3311 3312 data-nav-hover 3313 > 3314 <span class="nav__link-text">Accessories</span> 3315 3316 </a> 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 </li> 3373 3374 3375 <li class="nav__item"> 3376 <a 3377 href="/collections/sets" 3378 class="nav__link" 3379 3380 data-nav-hover 3381 > 3382 <span class="nav__link-text">Save on Sets</span> 3383 3384 </a> 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 </li> 3441 3442 </ul> 3443 3444 3445 <div class="nav-footer"> 3446 <ul class="nav-footer__list"> 3447 <li class="nav-footer__item"> 3448 <a 3449 href="/cart" 3450 class="nav-footer__link" 3451 aria-label="bag" 3452 > 3453 <span class="nav-footer__link-icon"> 3454 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 3455 <g fill="#2d3142"> 3456 <path d="M20.676,6.025c-0.061-0.529-0.496-0.928-1.013-0.928h-2.513c-0.255-1.51-1.032-2.838-2.215-3.769c-1.194-0.939-2.67-1.357-4.156-1.168C8.235,0.479,6.224,2.487,5.783,5.097H3.34c-0.517,0-0.952,0.399-1.012,0.928L0.542,21.713c-0.064,0.572,0.335,1.094,0.893,1.165l20.01,0.006c0.001,0,0.002,0,0.003,0c0.266,0,0.517-0.104,0.707-0.295c0.199-0.199,0.31-0.467,0.31-0.754L20.676,6.025z M7.868,5.097c0.441-1.694,1.893-2.884,3.597-2.888c1.704,0.004,3.155,1.193,3.598,2.888H7.868z M20.294,20.786H2.705L4.247,7.196h14.509L20.294,20.786z"/> 3457 </g> 3458</svg> 3459 </span> 3460 <span class="nav-footer__link-text">BAG</span> 3461 </a> 3462 </li> 3463 3464 3465 <li class="nav-footer__item"> 3466 3467 <a 3468 href="https://www.timbuk2.com/customer_authentication/redirect?locale=en®ion_country=US" 3469 class="nav-footer__link" 3470 aria-label="sign in" 3471 > 3472 <span class="nav-footer__link-icon"> 3473 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 3474 <g fill="#2d3142"> 3475 <path d="M15.968,14.238H7.034c-3.083,0-5.591,2.508-5.591,5.591v2.234h2.25v-2.234c0-1.842,1.499-3.341,3.341-3.341h8.934c1.84,0.001,3.338,1.499,3.338,3.341v2.234h2.25v-2.234C21.556,16.747,19.049,14.239,15.968,14.238z"/> 3476 <path d="M11.069,12.187c3.101,0,5.625-2.523,5.625-5.625s-2.524-5.625-5.625-5.625c-3.102,0-5.625,2.524-5.625,5.625S7.967,12.187,11.069,12.187z M11.069,3.187c1.86,0,3.375,1.514,3.375,3.375c0,1.861-1.514,3.375-3.375,3.375c-1.861,0-3.375-1.514-3.375-3.375C7.694,4.701,9.208,3.187,11.069,3.187z"/> 3477 </g> 3478</svg> 3479 3480 </span> 3481 <span class="nav-footer__link-text">SIGN IN</span> 3482 </a> 3483 3484 </li> 3485 3486 3487 <li class="nav-footer__item"> 3488 <a 3489 href="/pages/help-center" 3490 class="nav-footer__link" 3491 aria-label="support" 3492 > 3493 <span class="nav-footer__link-icon"> 3494 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 3495 <g fill="#2d3142"> 3496 <circle cx="11.5" cy="16.292" r="1.198"/> 3497 <path d="M11.585,5.79c-2.09,0-3.441,1.486-3.441,3.786h1.931c0-1.424,0.795-1.929,1.474-1.929c0.681-0.025,1.26,0.495,1.308,1.175c0.06,0.812-0.374,1.224-0.92,1.746c-1.03,0.774-1.556,2.048-1.372,3.323h1.922c-0.048-0.798,0.284-1.572,0.896-2.087c0.851-0.735,1.38-1.775,1.472-2.896c0.035-0.815-0.262-1.608-0.825-2.199C13.371,6.089,12.49,5.757,11.585,5.79z"/> 3498 <path d="M11.5,0C5.149,0,0,5.149,0,11.5C0,17.851,5.149,23,11.5,23S23,17.851,23,11.5C23,5.149,17.851,0,11.5,0z M11.5,21.083c-5.293,0-9.583-4.29-9.583-9.583C1.923,6.21,6.21,1.923,11.5,1.917c5.293,0,9.583,4.29,9.583,9.583C21.083,16.792,16.793,21.083,11.5,21.083z"/> 3499 </g> 3500</svg> 3501 </span>
3502 <span class="nav-footer__link-text">SUPPORT</span> 3503 </a> 3504 </li> 3505 </ul> 3506 </div> 3507 </div> 3508</nav> 3509 3510 3511<nav class="subnav-mobile" role="navigation" aria-label="mobile"> 3512 3513 3514 3515 3516 3517 3518 3519 <div class="subnav-mobile__menu" data-nav-submenu="shop-all-1"> 3520 <div class="subnav-mobile__list"> 3521 3522 3523 3524 3525 3526 <div class="subnav-mobile-header"> 3527 <button type="button" class="subnav-mobile-header__title" data-nav-submenu-close> 3528 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 3529 <polygon fill="#2d3142" points="10.865,15.733 12.835,13.8 7.035,8.001 12.835,2.201 10.865,0.267 3.165,8 "/> 3530</svg> 3531 <span>Shop All</span> 3532 </button> 3533 3534 <button 3535 type="button" 3536 class="subnav-mobile-header__close" 3537 data-toggle-class="menu-active" 3538 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 3539 aria-label="Close" 3540 > 3541 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 3542 <g fill="#2d3142"> 3543 <polygon points="15.833,2.2 13.863,0.267 8,6.158 2.137,0.267 0.167,2.2 5.967,8 0.167,13.8 2.137,15.733 8,9.842 13.863,15.733 15.833,13.8 10.033,8 "/> 3544 </g> 3545</svg> 3546 </button> 3547 </div> 3548 3549 <div class="subnav-mobile-content"> 3550 3551 3552 <div class="subnav-mobile__item"> 3553 3554 <p class="subnav-mobile__title">Shop by Category</p> 3555 3556 3557 3558 3559 <ul class="subnav-mobile__sublist"> 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 <li class="subnav-mobile__subitem"> 3570 <a href="/collections/all-luggage" class="subnav-mobile__sublink"> 3571 3572 Luggage 3573 </a> 3574 </li> 3575 3576 3577 3578 3579 3580 3581 3582 3583 <li class="subnav-mobile__subitem"> 3584 <a href="/collections/all-bags" class="subnav-mobile__sublink"> 3585 3586 Bags 3587 </a> 3588 </li> 3589 3590 3591 3592 3593 3594 3595 3596 3597 <li class="subnav-mobile__subitem"> 3598 <a href="/collections/all-backpacks" class="subnav-mobile__sublink"> 3599 3600 Backpacks 3601 </a> 3602 </li> 3603 3604 3605 3606 3607 3608 3609 3610 3611 <li class="subnav-mobile__subitem"> 3612 <a href="/collections/custom-bags-backpacks" class="subnav-mobile__sublink"> 3613 3614 Custom 3615 </a> 3616 </li> 3617 3618 3619 3620 3621 3622 3623 3624 3625 <li class="subnav-mobile__subitem"> 3626 <a href="/collections/accessories" class="subnav-mobile__sublink"> 3627 3628 Accessories 3629 </a> 3630 </li> 3631 3632 3633 3634 3635 3636 3637 3638 3639 <li class="subnav-mobile__subitem"> 3640 <a href="/collections/sets" class="subnav-mobile__sublink"> 3641 3642 Save on Sets 3643 </a> 3644 </li> 3645 3646 3647 3648 3649 3650 3651 3652 3653 <li class="subnav-mobile__subitem"> 3654 <a href="/collections/new-arrivals" class="subnav-mobile__sublink"> 3655 3656 New Arrivals 3657 </a> 3658 </li> 3659 3660 3661 3662 3663 3664 3665 3666 3667 <li class="subnav-mobile__subitem"> 3668 <a href="/collections/best-sellers" class="subnav-mobile__sublink"> 3669 3670 Best Sellers 3671 </a> 3672 </li> 3673 3674 3675 3676 3677 3678 3679 3680 3681 <li class="subnav-mobile__subitem"> 3682 <a href="/collections/limited-edition" class="subnav-mobile__sublink"> 3683 3684 Limited Edition 3685 </a> 3686 </li> 3687 3688 3689 </ul> 3690 3691 3692 </div> 3693 3694 3695 3696 3697 3698 3699 3700 3701 <div class="subnav-mobile__item"> 3702 3703 <p 3704 class="subnav-mobile__title subnav-mobile__title-swatch" 3705 data-toggle="> div" 3706 data-toggle-max-width="1024" 3707 aria-controls="subnav-mobile-shop-by-color" 3708 >
3709 <span 3710 class="subnav-mobile__title-text" 3711 aria-label="shop by color" 3712 > 3713 Shop by Color 3714 </span> 3715 3716 <i class="subnav-mobile__title-icon subnav-mobile__title-icon--plus"> 3717 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 3718 <g fill="#939393"> 3719 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 3720 </g> 3721</svg> 3722 </i> 3723 <i class="subnav-mobile__title-icon subnav-mobile__title-icon--minus"> 3724 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 3725 <g fill="#939393"> 3726 <rect x="0" y="8" width="18" height="2"/> 3727 </g> 3728</svg> 3729 </i> 3730 </p> 3731 3732 3733 3734 3735 3736 <div class="subnav-mobile__swatch--container" id="subnav-mobile-shop-by-color"> 3737 3738 <ul class="subnav-mobile__sublist subnav-mobile__sublist--swatch"> 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 <li class="subnav-mobile__subitem"> 3749 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Achalk" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3750 3751 3752 <span class="subnav-mobile__swatch" 3753 3754 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/chalk-swatch.svg?v=1764842621'); background-size: cover;" 3755 3756 ></span> 3757 3758 Chalk 3759 </a> 3760 </li> 3761 3762 3763 3764 3765 3766 3767 3768 3769 <li class="subnav-mobile__subitem"> 3770 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amarigold" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3771 3772 3773 <span class="subnav-mobile__swatch" 3774 3775 style="background-color: #E5C225;" 3776 3777 ></span> 3778 3779 Marigold 3780 </a> 3781 </li> 3782 3783 3784 3785 3786 3787 3788 3789 3790 <li class="subnav-mobile__subitem"> 3791 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amoss" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3792 3793 3794 <span class="subnav-mobile__swatch" 3795 3796 style="background-color: #42583F;" 3797 3798 ></span> 3799 3800 Moss 3801 </a> 3802 </li> 3803 3804 3805 3806 3807 3808 3809 3810 3811 <li class="subnav-mobile__subitem"> 3812 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Arose" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3813 3814
3815 <span class="subnav-mobile__swatch" 3816 3817 style="background-color: #EBCCC7;" 3818 3819 ></span> 3820 3821 Rose 3822 </a> 3823 </li> 3824 3825 3826 3827 3828 3829 3830 3831 3832 <li class="subnav-mobile__subitem"> 3833 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ablack" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3834 3835 3836 <span class="subnav-mobile__swatch" 3837 3838 style="background-color: #000000;" 3839 3840 ></span> 3841 3842 Black 3843 </a> 3844 </li> 3845 3846 3847 3848 3849 3850 3851 3852 3853 <li class="subnav-mobile__subitem"> 3854 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Awhite" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3855 3856 3857 <span class="subnav-mobile__swatch" 3858 3859 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/white-swatch.svg?v=1764842620'); background-size: cover;" 3860 3861 ></span> 3862 3863 White 3864 </a> 3865 </li> 3866 3867 3868 3869 3870 3871 3872 3873 3874 <li class="subnav-mobile__subitem"> 3875 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Abeige" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3876 3877 3878 <span class="subnav-mobile__swatch" 3879 3880 style="background-color: #E8DACA;" 3881 3882 ></span> 3883 3884 Beige 3885 </a> 3886 </li> 3887 3888 3889 3890 3891 3892 3893 3894 3895 <li class="subnav-mobile__subitem"> 3896 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ayellow" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3897 3898 3899 <span class="subnav-mobile__swatch" 3900 3901 style="background-color: #F6C960;" 3902 3903 ></span> 3904 3905 Yellow 3906 </a> 3907 </li> 3908 3909 3910 3911 3912 3913 3914 3915 3916 <li class="subnav-mobile__subitem"> 3917 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Aorange" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3918 3919 3920 <span class="subnav-mobile__swatch" 3921 3922 style="background-color: #D76800;" 3923 3924 ></span> 3925 3926 Orange 3927 </a> 3928 </li> 3929 3930 3931 3932 3933 3934 3935 3936 3937 <li class="subnav-mobile__subitem"> 3938 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Apink" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3939 3940
3941 <span class="subnav-mobile__swatch" 3942 3943 style="background-color: #F03680;" 3944 3945 ></span> 3946 3947 Pink 3948 </a> 3949 </li> 3950 3951 3952 3953 3954 3955 3956 3957 3958 <li class="subnav-mobile__subitem"> 3959 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ared" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3960 3961 3962 <span class="subnav-mobile__swatch" 3963 3964 style="background-color: #C23838;" 3965 3966 ></span> 3967 3968 Red 3969 </a> 3970 </li> 3971 3972 3973 3974 3975 3976 3977 3978 3979 <li class="subnav-mobile__subitem"> 3980 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Agreen" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 3981 3982 3983 <span class="subnav-mobile__swatch" 3984 3985 style="background-color: #0AB968;" 3986 3987 ></span> 3988 3989 Green 3990 </a> 3991 </li> 3992 3993 3994 3995 3996 3997 3998 3999 4000 <li class="subnav-mobile__subitem"> 4001 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Agrey" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 4002 4003 4004 <span class="subnav-mobile__swatch" 4005 4006 style="background-color: #8B8B8B;" 4007 4008 ></span> 4009 4010 Grey 4011 </a> 4012 </li> 4013 4014 4015 4016 4017 4018 4019 4020 4021 <li class="subnav-mobile__subitem"> 4022 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Apurple" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 4023 4024 4025 <span class="subnav-mobile__swatch" 4026 4027 style="background-color: #9370B3;" 4028 4029 ></span> 4030 4031 Purple 4032 </a> 4033 </li> 4034 4035 4036 4037 4038 4039 4040 4041 4042 <li class="subnav-mobile__subitem"> 4043 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Ablue" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 4044 4045 4046 <span class="subnav-mobile__swatch" 4047 4048 style="background-color: #364477;" 4049 4050 ></span> 4051 4052 Blue 4053 </a> 4054 </li> 4055 4056 4057 4058 4059 4060 4061 4062 4063 <li class="subnav-mobile__subitem"> 4064 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Amulticolor" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 4065 4066
4067 <span class="subnav-mobile__swatch" 4068 4069 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/Layer_1.svg?v=1764787633'); background-size: cover;" 4070 4071 ></span> 4072 4073 Multicolor 4074 </a> 4075 </li> 4076 4077 4078 4079 4080 4081 4082 4083 4084 <li class="subnav-mobile__subitem subnav-mobile__subitem--custom"> 4085 <a href="https://www.timbuk2.com/collections/all?productListFilters=colorgroup%3Acustom" class="subnav-mobile__sublink subnav-mobile__sublink--swatch"> 4086 4087 4088 <span class="subnav-mobile__swatch" 4089 4090 style="background-image: url('https://cdn.shopify.com/s/files/1/2625/5792/files/badge-customize_1.png?v=1764836375'); background-size: cover;" 4091 4092 ></span> 4093 4094 Custom 4095 </a> 4096 </li> 4097 4098 4099 </ul> 4100 4101 </div> 4102 4103 4104 </div> 4105 4106 4107 </div> 4108 4109 4110 </div> 4111 </div> 4112 4113 4114 4115 4116 4117 <div class="subnav-mobile__menu" data-nav-submenu="luggage-2"> 4118 <div class="subnav-mobile__list"> 4119 4120 4121 4122 4123 4124 <div class="subnav-mobile-header"> 4125 <button type="button" class="subnav-mobile-header__title" data-nav-submenu-close> 4126 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4127 <polygon fill="#2d3142" points="10.865,15.733 12.835,13.8 7.035,8.001 12.835,2.201 10.865,0.267 3.165,8 "/> 4128</svg> 4129 <span>Luggage</span> 4130 </button> 4131 4132 <button 4133 type="button" 4134 class="subnav-mobile-header__close" 4135 data-toggle-class="menu-active" 4136 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 4137 aria-label="Close" 4138 > 4139 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4140 <g fill="#2d3142"> 4141 <polygon points="15.833,2.2 13.863,0.267 8,6.158 2.137,0.267 0.167,2.2 5.967,8 0.167,13.8 2.137,15.733 8,9.842 13.863,15.733 15.833,13.8 10.033,8 "/> 4142 </g> 4143</svg> 4144 </button> 4145 </div> 4146 4147 <div class="subnav-mobile-content"> 4148 4149 4150 <div class="subnav-mobile__item"> 4151 4152 <p class="subnav-mobile__title">Shop By Category</p> 4153 4154 4155 4156 4157 <ul class="subnav-mobile__sublist"> 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 <li class="subnav-mobile__subitem"> 4168 <a href="/collections/carry-on-luggage" class="subnav-mobile__sublink"> 4169 4170 Carry-On Luggage 4171 </a> 4172 </li> 4173 4174 4175 4176 4177 4178 4179 4180 4181 <li class="subnav-mobile__subitem"> 4182 <a href="/collections/check-in-luggage" class="subnav-mobile__sublink"> 4183 4184 Check-In Luggage 4185 </a> 4186 </li> 4187 4188 4189 4190 4191 4192 4193 4194 4195 <li class="subnav-mobile__subitem"> 4196 <a href="/collections/sets" class="subnav-mobile__sublink"> 4197 4198 Save on Sets 4199 </a> 4200 </li> 4201 4202 4203 4204 4205 4206 4207 4208 4209 <li class="subnav-mobile__subitem"> 4210 <a href="/collections/all-luggage" class="subnav-mobile__sublink"> 4211 4212 All Luggage 4213 </a> 4214 </li> 4215 4216 4217 </ul> 4218 4219 4220 </div> 4221 4222 4223 </div> 4224 4225 4226 </div> 4227 </div> 4228 4229 4230 4231 4232 4233 <div class="subnav-mobile__menu" data-nav-submenu="bags-3"> 4234 <div class="subnav-mobile__list"> 4235 4236 4237 4238 4239 4240 <div class="subnav-mobile-header"> 4241 <button type="button" class="subnav-mobile-header__title" data-nav-submenu-close> 4242 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4243 <polygon fill="#2d3142" points="10.865,15.733 12.835,13.8 7.035,8.001 12.835,2.201 10.865,0.267 3.165,8 "/> 4244</svg>
4245 <span>Bags</span> 4246 </button> 4247 4248 <button 4249 type="button" 4250 class="subnav-mobile-header__close" 4251 data-toggle-class="menu-active" 4252 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 4253 aria-label="Close" 4254 > 4255 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4256 <g fill="#2d3142"> 4257 <polygon points="15.833,2.2 13.863,0.267 8,6.158 2.137,0.267 0.167,2.2 5.967,8 0.167,13.8 2.137,15.733 8,9.842 13.863,15.733 15.833,13.8 10.033,8 "/> 4258 </g> 4259</svg> 4260 </button> 4261 </div> 4262 4263 <div class="subnav-mobile-content"> 4264 4265 4266 <div class="subnav-mobile__item"> 4267 4268 <p class="subnav-mobile__title">Shop by Category</p> 4269 4270 4271 4272 4273 <ul class="subnav-mobile__sublist"> 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 <li class="subnav-mobile__subitem"> 4284 <a href="/collections/all-travel-bags" class="subnav-mobile__sublink"> 4285 4286 Travel Bags 4287 </a> 4288 </li> 4289 4290 4291 4292 4293 4294 4295 4296 4297 <li class="subnav-mobile__subitem"> 4298 <a href="/collections/all-messenger-bags" class="subnav-mobile__sublink"> 4299 4300 Messenger Bags 4301 </a> 4302 </li> 4303 4304 4305 4306 4307 4308 4309 4310 4311 <li class="subnav-mobile__subitem"> 4312 <a href="/collections/laptop-bags-work-briefcases" class="subnav-mobile__sublink"> 4313 4314 Laptop Bags 4315 </a> 4316 </li> 4317 4318 4319 4320 4321 4322 4323 4324 4325 <li class="subnav-mobile__subitem"> 4326 <a href="/collections/sling-bags" class="subnav-mobile__sublink"> 4327 4328 Crossbody Bags 4329 </a> 4330 </li> 4331 4332 4333 4334 4335 4336 4337 4338 4339 <li class="subnav-mobile__subitem"> 4340 <a href="/collections/travel-duffel-bags" class="subnav-mobile__sublink"> 4341 4342 Duffel Bags 4343 </a> 4344 </li> 4345 4346 4347 4348 4349 4350 4351 4352 4353 <li class="subnav-mobile__subitem"> 4354 <a href="/collections/tote-bags" class="subnav-mobile__sublink"> 4355 4356 Tote Bags 4357 </a> 4358 </li> 4359 4360 4361 4362 4363 4364 4365 4366 4367 <li class="subnav-mobile__subitem"> 4368 <a href="/products/1572-tandem-pannier" class="subnav-mobile__sublink"> 4369 4370 Pannier Bags 4371 </a> 4372 </li> 4373 4374 4375 4376 4377 4378 4379 4380 4381 <li class="subnav-mobile__subitem"> 4382 <a href="/collections/all-bags" class="subnav-mobile__sublink"> 4383 4384 All Bags 4385 </a> 4386 </li> 4387 4388 4389 </ul> 4390 4391 4392 </div> 4393 4394 4395 </div> 4396 4397 4398 </div> 4399 </div> 4400 4401 4402 4403 4404 4405 <div class="subnav-mobile__menu" data-nav-submenu="backpacks-4"> 4406 <div class="subnav-mobile__list"> 4407 4408 4409 4410 4411 4412 <div class="subnav-mobile-header"> 4413 <button type="button" class="subnav-mobile-header__title" data-nav-submenu-close> 4414 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4415 <polygon fill="#2d3142" points="10.865,15.733 12.835,13.8 7.035,8.001 12.835,2.201 10.865,0.267 3.165,8 "/> 4416</svg>
4417 <span>Backpacks</span> 4418 </button> 4419 4420 <button 4421 type="button" 4422 class="subnav-mobile-header__close" 4423 data-toggle-class="menu-active" 4424 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 4425 aria-label="Close" 4426 > 4427 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" xml:space="preserve"> 4428 <g fill="#2d3142"> 4429 <polygon points="15.833,2.2 13.863,0.267 8,6.158 2.137,0.267 0.167,2.2 5.967,8 0.167,13.8 2.137,15.733 8,9.842 13.863,15.733 15.833,13.8 10.033,8 "/> 4430 </g> 4431</svg> 4432 </button> 4433 </div> 4434 4435 <div class="subnav-mobile-content"> 4436 4437 4438 <div class="subnav-mobile__item"> 4439 4440 <p class="subnav-mobile__title">Shop by Category</p> 4441 4442 4443 4444 4445 <ul class="subnav-mobile__sublist"> 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 <li class="subnav-mobile__subitem"> 4456 <a href="/collections/travel-backpacks" class="subnav-mobile__sublink"> 4457 4458 Travel Backpacks 4459 </a> 4460 </li> 4461 4462 4463 4464 4465 4466 4467 4468 4469 <li class="subnav-mobile__subitem"> 4470 <a href="/collections/laptop-backpacks" class="subnav-mobile__sublink"> 4471 4472 Laptop Backpacks 4473 </a> 4474 </li> 4475 4476 4477 4478 4479 4480 4481 4482 4483 <li class="subnav-mobile__subitem"> 4484 <a href="/collections/water-resistant-backpacks" class="subnav-mobile__sublink"> 4485 4486 Weatherproof Backpacks 4487 </a> 4488 </li> 4489 4490 4491 4492 4493 4494 4495 4496 4497 <li class="subnav-mobile__subitem"> 4498 <a href="/collections/work-backpacks" class="subnav-mobile__sublink"> 4499 4500 Work Backpacks 4501 </a> 4502 </li> 4503 4504 4505 4506 4507 4508 4509 4510 4511 <li class="subnav-mobile__subitem"> 4512 <a href="/collections/all-backpacks" class="subnav-mobile__sublink"> 4513 4514 All Backpacks 4515 </a> 4516 </li> 4517 4518 4519 </ul> 4520 4521 4522 </div> 4523 4524 4525 </div> 4526 4527 4528 </div> 4529 </div> 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539</nav> 4540 </div> 4541 <nav class="header-tools" role="navigation" aria-label="secondary"> 4542 <ul class="header-tools__list"> 4543 <li class="header-tools__item header-tools__item--search"> 4544 <button 4545 type="button" 4546 class="header-tools__icon header-tools__icon--search" 4547 data-toggle-class="search-active" 4548 data-toggle-transition='{"class": "search-transition", "duration": 300}' 4549 data-search-button-open 4550 aria-label="Search" 4551 > 4552 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 4553 <g fill="#2d3142"> 4554 <path d="M22.693,21.104l-5.991-5.991c1.218-1.557,1.951-3.511,1.951-5.635c0-5.058-4.115-9.173-9.173-9.173H9.476C4.418,0.307,0.304,4.424,0.307,9.482c0.003,5.057,4.118,9.169,9.174,9.169c0.001,0,0.003,0,0.004,0c2.121-0.001,4.07-0.733,5.625-1.948l5.992,5.992L22.693,21.104z M9.484,16.401c-0.001,0-0.002,0-0.003,0c-3.816,0-6.922-3.104-6.924-6.92c-0.001-3.817,3.103-6.925,6.92-6.926H9.48c3.817,0,6.923,3.105,6.923,6.923C16.403,13.293,13.299,16.398,9.484,16.401z"/> 4555 </g> 4556</svg> 4557 </button> 4558 </li> 4559 4560 4561 <li class="header-tools__item header-tools__item--account"> 4562 4563 <a 4564 href="https://www.timbuk2.com/customer_authentication/redirect?locale=en®ion_country=US" 4565 class="header-tools__icon header-tools__icon--account" 4566 title="Sign In" 4567 aria-label="Sign In" 4568 > 4569 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 4570 <g fill="#2d3142"> 4571 <path d="M15.968,14.238H7.034c-3.083,0-5.591,2.508-5.591,5.591v2.234h2.25v-2.234c0-1.842,1.499-3.341,3.341-3.341h8.934c1.84,0.001,3.338,1.499,3.338,3.341v2.234h2.25v-2.234C21.556,16.747,19.049,14.239,15.968,14.238z"/> 4572 <path d="M11.069,12.187c3.101,0,5.625-2.523,5.625-5.625s-2.524-5.625-5.625-5.625c-3.102,0-5.625,2.524-5.625,5.625S7.967,12.187,11.069,12.187z M11.069,3.187c1.86,0,3.375,1.514,3.375,3.375c0,
45721.861-1.514,3.375-3.375,3.375c-1.861,0-3.375-1.514-3.375-3.375C7.694,4.701,9.208,3.187,11.069,3.187z"/> 4573 </g> 4574</svg> 4575 4576 </a> 4577 4578 </li> 4579 4580 4581 <li class="header-tools__item header-tools__item--cart"> 4582 <a href="/cart" class="header-tools__icon header-tools__icon--cart" aria-label="Cart" data-minicart-toggle> 4583 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 4584 <g fill="#2d3142"> 4585 <path d="M20.676,6.025c-0.061-0.529-0.496-0.928-1.013-0.928h-2.513c-0.255-1.51-1.032-2.838-2.215-3.769c-1.194-0.939-2.67-1.357-4.156-1.168C8.235,0.479,6.224,2.487,5.783,5.097H3.34c-0.517,0-0.952,0.399-1.012,0.928L0.542,21.713c-0.064,0.572,0.335,1.094,0.893,1.165l20.01,0.006c0.001,0,0.002,0,0.003,0c0.266,0,0.517-0.104,0.707-0.295c0.199-0.199,0.31-0.467,0.31-0.754L20.676,6.025z M7.868,5.097c0.441-1.694,1.893-2.884,3.597-2.888c1.704,0.004,3.155,1.193,3.598,2.888H7.868z M20.294,20.786H2.705L4.247,7.196h14.509L20.294,20.786z"/> 4586 </g> 4587</svg> 4588 4589 <span id="count" class="header-tools__count"> 4590 <p class="cart__count"> 4591 <span data-header-cart-count>0</span> 4592 </p> 4593 </span> 4594 <span class="visually-hidden">Shopping Bag</span> 4595 </a> 4596 </li> 4597 </ul> 4598 </nav> 4599 </div> 4600 4601 <form class="header-search" action="/search" method="get" role="search" autocomplete="off" data-search-form> 4602 <div class="header-search__container"> 4603 <p class="header-search__title">Search</p> 4604 4605 <div class="header-search__input-container"> 4606 <button 4607 type="submit" 4608 class="header-search__submit" 4609 aria-label="Search" 4610 > 4611 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="23px" height="23px" viewBox="0 0 23 23" xml:space="preserve"> 4612 <g fill="#2d3142"> 4613 <path d="M22.693,21.104l-5.991-5.991c1.218-1.557,1.951-3.511,1.951-5.635c0-5.058-4.115-9.173-9.173-9.173H9.476C4.418,0.307,0.304,4.424,0.307,9.482c0.003,5.057,4.118,9.169,9.174,9.169c0.001,0,0.003,0,0.004,0c2.121-0.001,4.07-0.733,5.625-1.948l5.992,5.992L22.693,21.104z M9.484,16.401c-0.001,0-0.002,0-0.003,0c-3.816,0-6.922-3.104-6.924-6.92c-0.001-3.817,3.103-6.925,6.92-6.926H9.48c3.817,0,6.923,3.105,6.923,6.923C16.403,13.293,13.299,16.398,9.484,16.401z"/> 4614 </g> 4615</svg> 4616 </button> 4617 4618 <label for="search" class="visually-hidden">Search products</label> 4619 <input 4620 type="search" 4621 name="q" 4622 id="search" 4623 value="" 4624 placeholder="Search products" 4625 class="header-search__input" 4626 autocomplete="off" 4627 data-search-input 4628 aria-label="Search" 4629 > 4630 </div> 4631 4632 <button 4633 type="button" 4634 class="header-search__close" 4635 data-toggle-class="search-active" 4636 data-toggle-transition='{"class": "search-transition", "duration": 300}' 4637 aria-label="Close Search" 4638 > 4639 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="47px" height="47px" viewBox="0 0 47 47" xml:space="preserve"> 4640 <circle fill="#f5f5f5" cx="23.5" cy="23.5" r="23.5"/> 4641 <polygon fill="#2d3142" points="31.667,17.933 29.697,16 23.834,21.891 17.971,16 16.001,17.933 21.801,23.733 16.001,29.533 17.971,31.466 23.834,25.575 29.697,31.466 31.667,29.533 25.867,23.733 "/> 4642</svg> 4643 </button> 4644 </div> 4645 4646 <div class="header-search__results"> 4647 <div data-search-menu-results></div> 4648 </div> 4649 </form> 4650 4651 <button 4652 type="button" 4653 class="overlay overlay--menu" 4654 data-toggle-class="menu-active" 4655 data-toggle-transition='{"class": "menu-transition", "duration": 300}' 4656 aria-label="Close Menu" 4657 ></button> 4658 4659 <button 4660 type="button" 4661 class="overlay overlay--search" 4662 data-toggle-class="search-active" 4663 data-toggle-transition='{"class": "search-transition", "duration": 300}' 4664 aria-label="Close Menu" 4665 ></button> 4666 4667 <div class="header__overlay"></div> 4668</header> 4669 4670<style> 4671 #announcement-header { 4672 background-color: #2d3142; 4673 color: #ffffff; 4674 } 4675</style> 4676 4677 4678 4679</div> 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689<div class="minicart__container" data-minicart> 4690 <aside 4691 class="minicart" 4692 :class="{ 'active': isOpen }" 4693 :aria-hidden="isOpen ? 'false' : 'true'" 4694 aria-labelledby="minicart-title" 4695 aria-describedby="minicart-description" 4696 role="dialog" 4697 v-cloak 4698 > 4699 <header class="minicart__header"> 4700 <h2 class="minicart__title" id="minicart-title">Your Cart</h2> 4701 4702 <button 4703 type="button" 4704 class="minicart__close" 4705 v-on:click.prevent="toggleCart(false)" 4706 aria-label="Close Minicart" 4707 :tabindex="isOpen ? 0 : -1" 4708 ref="close" 4709 >
4710 <span class="minicart__close-icon"> 4711 <svg xmlns="http://www.w3.org/2000/svg" width="35" height="35" viewBox="0 0 35 35" fill="none"> 4712 <path d="M26.25 8.75L8.75 26.25" stroke="#33363F" stroke-width="2" stroke-linecap="square" stroke-linejoin="round"/> 4713 <path d="M8.75 8.75L26.25 26.25" stroke="#33363F" stroke-width="2" stroke-linecap="square" stroke-linejoin="round"/> 4714</svg> 4715 </span> 4716 </button> 4717 4718 <div 4719 class="free-shipping-gauge" 4720 v-if="!hasFreeShippingExludedProducts && shippingDifference && cartItemCount > 0" 4721 > 4722 <div class="free-shipping-gauge__inner" :style="'transform: scaleX(' + freeShippingPercentage + ')'"></div> 4723 </div> 4724 <p 4725 v-if="!hasFreeShippingExludedProducts && shippingDifference && cartItemCount > 0" 4726 class="free-shipping-gauge__message" 4727 :data-shippingDifference="shippingDifference | toUSD" 4728 > 4729 <span v-if="shippingDifference > 0">You are ${ shippingDifference | toUSD } away from free shipping</span> 4730 <span v-else>Your cart qualifies for free shipping</span> 4731 </p> 4732 </header> 4733 4734 <div class="minicart__container-inner" :class="{ empty : cartItemCount == 0 }" id="minicart-description"> 4735 <div v-if="cartItemCount > 0"> 4736 <ul class="minicart__item-list"> 4737 <template v-for="(item, i) in shoppingCart.items"> 4738 <li class="minicart__item" :key="item.id + i" v-if="item.type.toString().toLowerCase() !== 'fees'"> 4739 <div class="minicart__item-wrapper"> 4740 <a 4741 :href="URL(item)" 4742 class="minicart__image-link" 4743 tabindex="-1" 4744 :aria-label="item.title" 4745 > 4746 <div class="minicart__image-wrap"> 4747 <img 4748 v-if="item.properties && item.properties.hasOwnProperty('_thumb')" 4749 class="minicart__image vue-lazy" 4750 :data-src="decodeURIComponent(item.properties._thumb).replace(/&/g, '&').replace('?&', '?').replace('background=EEEEEE', 'background=F0F0F0') + '&size=190'" 4751 :alt="item.title + ' Product Image'" 4752 /> 4753 <img 4754 v-else 4755 class="minicart__image vue-lazy" 4756 :data-src="imgURL(item.image, '190x', true)" 4757 :alt="item.title + ' Product Image'" 4758 /> 4759 </div> 4760 </a> 4761 4762 <div class="minicart__details" data-minicart-details> 4763 <div class="minicart__item-row minicart__item-row--name"> 4764 <a 4765 :href="URL(item)" 4766 class="minicart__name" 4767 :tabindex="isOpen ? 0 : -1" 4768 >${ item.title }</a> 4769 </div> 4770 4771 <span class="minicart__item-row minicart__item-row--sale" v-if="item.vendor && item.vendor === 'Timbuk2-Sale'">Final sale</span> 4772 4773 <span class="minicart__item-row minicart__item-row--properties" v-if="customProductKeywords.some(word => item.variant.toLowerCase().includes(word))"> 4774 <span class="minicart__label">Style:</span> 4775 <span class="minicart__value">${ item.sku }</span> 4776 </span> 4777 4778 <template 4779 v-for="(option, i) in item.options_with_values" 4780 > 4781 <div 4782 :key="option.value" 4783 v-if="option.value && option.value != 'Default Title' && option.value.toString().toLowerCase() != 'os' && option.value.toString().toLowerCase() != 'configured'" 4784 class="minicart__item-row minicart__item-row--option" 4785 > 4786 <span class="minicart__label">${ option.name }:</span> 4787 <span class="minicart__value">${ option.value }</span> 4788 </div> 4789 </template> 4790 4791 <template 4792 v-for="(value, key, i) in item.properties" 4793 v-if="key != 'sku' && key.substring(0, 1) != '_' && key.substring(0, 1) != '*'" 4794 > 4795 <div 4796 class="minicart__item-row minicart__item-row--properties" 4797 :key="key" 4798 :data-key="key" 4799 >
4800 <span class="minicart__label">${ key }:</span> 4801 <span class="minicart__value"> 4802 ${ value } 4803 <b v-if="item.properties[`_${key}_price`] > 0" :style="{color: item.properties[`_${key}_price`] !== item.properties[`_${key}_net_price`] ? 'var(--sale-badge-color)' : null}" v-html="`+$${item.properties[`_${key}_price`] !== item.properties[`_${key}_net_price`] ? item.properties[`_${key}_net_price`] : item.properties[`_${key}_price`]}`"></b> 4804 <s v-if="item.properties[`_${key}_price`] > 0 && item.properties[`_${key}_price`] !== item.properties[`_${key}_net_price`]" v-html="`+$${item.properties[`_${key}_price`]}`" style="margin-left: 1px;"></s> 4805 </span> 4806 </div> 4807 </template> 4808 4809 <div class="minicart__item-row minicart__item-row--price"> 4810 <span class="minicart__label">Price: </span> 4811 <span 4812 v-if="customProductKeywords.some(word => item.variant.toLowerCase().includes(word))" 4813 class="minicart__price minicart__value" 4814 :class="{ 'minicart__price--sale': customProductHasSalePrice(item) }" 4815 > 4816 <b>${ customProductPrice(item) | toUSD }</b> 4817 <template v-if="customProductHasSalePrice(item)"> 4818 <s>${ customProductCompareAtPrice(item) | toUSD }</s> 4819 </template> 4820 </span> 4821 <span 4822 v-else-if="item.compare_at_price && item.compare_at_price > (item.price - (item.properties.hasOwnProperty('_upcharge_amount') && item.properties._upcharge_amount ? item.properties._upcharge_amount : 0))" 4823 class="minicart__price minicart__value minicart__price--sale" 4824 > 4825 <b>${ item.final_line_price | toUSD }</b> 4826 <s>${ item.properties.hasOwnProperty('_compare_at_price') && item.properties._compare_at_price ? item.properties._compare_at_price * item.quantity : item.compare_at_price * item.quantity | toUSD }</s> 4827 </span> 4828 <span 4829 v-else-if="item.hasOwnProperty('discounts') && item.discounts.length > 0 && (item.final_line_price < item.original_line_price)" 4830 class="minicart__price minicart__value minicart__price--sale" 4831 > 4832 <b v-if="item.final_line_price === 0">FREE</b> 4833 <b v-else>${ item.final_line_price | toUSD }</b> 4834 <s>${ item.original_line_price | toUSD }</s> 4835 </span> 4836 <span 4837 v-else 4838 class="minicart__price minicart__value" 4839 > 4840 ${ item.final_line_price | toUSD } 4841 </span> 4842 </div> 4843 4844 <div 4845 class="product-note" 4846 v-if="customProductKeywords.some(word => item.variant.toLowerCase().includes(word))" 4847 > 4848 <ul style="list-style-type: disc; list-style-position: inside;"> 4849 <li>One of a kind - Cannot be returned.</li> 4850 <li>Sewn and shipped within 1 week.</li> 4851 4852 </ul> 4853 </div> 4854 4855 </div> 4856 </div> 4857 <div class="minicart__options"> 4858 <div class="minicart__item-row minicart__item-row--remove"> 4859 <button 4860 type="button" 4861 class="minicart__remove" 4862 v-on:click.prevent="updateItem({ item: item, action: 'clear' })" 4863 title="Remove item" 4864 :tabindex="isOpen ? 0 : -1" 4865 aria-label="Remove item" 4866 > 4867 Delete 4868 </button> 4869 </div> 4870 <div class="minicart__item-row minicart__item-row--quantity"> 4871 <div class="minicart__quantity"> 4872 <div class="minicart__quantity-incrementor"> 4873 <button 4874 v-if="item.quantity > 1" 4875 type="button" 4876 class="minicart__quantity-update minicart__quantity-update--minus" 4877 title="Remove one" 4878 v-on:click.prevent="updateItem({ item: item, action: 'decrease' }); itemUpdated();" 4879 aria-label="Remove one" 4880 :tabindex="isOpen ? 0 : -1" 4881 > 4882 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="9px" height="9px" viewBox="0 0 9 9" xml:space="preserve"> 4883 <g fill="#2d3142"> 4884 <rect y="4" width="9" height="1" /> 4885 </g> 4886</svg> 4887 </button> 4888 4889 <button 4890 v-else 4891 type="button" 4892 class="minicart__quantity-update minicart__quantity-update--minus" 4893 title="Remove one" 4894 v-on:click.prevent="updateItem({ item: item, action: 'clear' })" 4895 aria-label="Remove one" 4896 aria-disabled 4897 :tabindex="isOpen ? 0 : -1" 4898 > 4899 <svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15" fill="none"> 4900 <path d="M1.875 3.75H3.125H13.125" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4901 <path d="M5 3.75V2.5C5 2.16848 5.1317 1.85054 5.36612 1.61612C5.60054 1.3817 5.91848 1.25 6.25 1.25H8.75C9.08152 1.25 9.39946 1.3817 9.63388 1.61612C9.8683 1.85054 10 2.16848 10 2.5V3.75M11.875 3.75V12.5C11.875 12.8315 11.7433 13.1495 11.5089 13.3839C11.2745 13.6183 10.9565 13.75 10.625 13.75H4.375C4.04348 13.75 3.72554 13.6183 3.49112 13.3839C3.2567 13.1495 3.125 12.8315 3.125 12.5V3.75H11.875Z" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4902 <path d="M8.75 6.875V10.625" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4903 <path d="M6.25 6.875V10.625" stroke="black" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4904</svg> 4905 </button> 4906
4907 <span data-minicart-item-count class="minicart__quantity-amount"> 4908 <span class="visually-hidden" class="minicart__quantity-label">Quantity</span> 4909 ${ item.quantity } 4910 </span> 4911 4912 <button 4913 type="button" 4914 class="minicart__quantity-update minicart__quantity-update--plus" 4915 title="Add one" 4916 v-on:click.prevent="updateItem({ item: item, action: 'increase' }); itemUpdated();" 4917 aria-label="Add one" 4918 :tabindex="isOpen ? 0 : -1" 4919 > 4920 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="9px" height="9px" viewBox="0 0 9 9" xml:space="preserve"> 4921 <g fill="#2d3142"> 4922 <polygon points="9,4 5,4 5,0 4,0 4,4 0,4 0,5 4,5 4,9 5,9 5,5 9,5 "/> 4923 </g> 4924</svg> 4925 </button> 4926 </div> 4927 </div> 4928 </div> 4929 4930 <input type="hidden" :value="item.price" ref="price" /> 4931 <input type="hidden" :value="item.quantity" ref="quantity" /> 4932 </div> 4933 </li> 4934 </template> 4935 </ul> 4936 4937 <div class="minicart__actions"> 4938 <div class="minicart__total"> 4939 <span class="minicart__total-label">Subtotal:</span> 4940 <template v-if="compareAtTotal > cartTotal"> 4941 <span class="minicart__total-amount has-discount"> 4942 <strong>${ cartTotal | toUSD }</strong> 4943 <s>${ compareAtTotal | toUSD }</s> 4944 </span> 4945 </template> 4946 <template v-else> 4947 <span class="minicart__total-amount">${ cartTotal | toUSD }</span> 4948 </template> 4949 </div> 4950 4951 <a 4952 href="/checkout" 4953 class="minicart__checkout" 4954 :tabindex="isOpen ? 0 : -1" 4955 ref="continue" 4956 >Checkout (${cartItemCount}) </a> 4957 4958 <a 4959 :href="continueShoppingURL" 4960 class="minicart__continue" 4961 v-on:click.prevent="toggleCart(false)" 4962 :tabindex="isOpen ? 0 : -1" 4963 >Continue Shopping</a> 4964 4965 4966 </div> 4967 </div> 4968 4969 <div class="minicart__empty" v-else> 4970 <div> 4971 <span>Your cart is currently empty.</span> 4972 <div class="supports-no-cookies"> 4973 <p>Enable cookies to use the shopping bag</p> 4974 </div> 4975 </div> 4976 </div> 4977 </div> 4978 4979 4980 4981 <div 4982 class="minicart__additional-checkout-buttons" 4983 :class="{ 'visually-hidden' : cartItemCount == 0 }" 4984 > 4985 <additional-checkout-buttons></additional-checkout-buttons> 4986 </div> 4987 4988 4989 <portal target-el="#count"> 4990 <p class="cart__count" :class="{ hidden : cartItemCount == 0}"> 4991 <span data-header-cart-count>${ cartItemCount }</span> 4992 </p> 4993 <span class="visually-hidden" aria-live="polite" aria-atomic="true">${ cartItemCount === 0 ? 'Cart is empty' : cartItemCount + (cartItemCount === 1 ? ' item in cart' : ' items in cart') }</span> 4994 </portal> 4995 </aside> 4996 4997 <button 4998 type="button" 4999 class="minicart__backdrop" 5000 :class="{ 'active': isOpen }" 5001 v-on:click.prevent="toggleCart(false)" 5002 title="Close" 5003 aria-label="Close" 5004 :tabindex="isOpen ? 0 : -1" 5005 ></button> 5006</div> 5007
5008<script> 5009 window.additionalCheckoutButtons = { 5010 "content": "\u003cdiv class=\"dynamic-checkout__content\" id=\"dynamic-checkout-cart\" data-shopify=\"dynamic-checkout-cart\"\u003e \u003cshopify-accelerated-checkout-cart wallet-configs=\"[{\u0026quot;supports_subs\u0026quot;:true,\u0026quot;supports_def_opts\u0026quot;:false,\u0026quot;name\u0026quot;:\u0026quot;shop_pay\u0026quot;,\u0026quot;wallet_params\u0026quot;:{\u0026quot;shopId\u0026quot;:25729458,\u0026quot;merchantName\u0026quot;:\u0026quot;Timbuk2\u0026quot;,\u0026quot;personalized\u0026quot;:true}},{\u0026quot;supports_subs\u0026quot;:true,\u0026quot;supports_def_opts\u0026quot;:false,\u0026quot;name\u0026quot;:\u0026quot;paypal\u0026quot;,\u0026quot;wallet_params\u0026quot;:{\u0026quot;shopId\u0026quot;:25729458,\u0026quot;countryCode\u0026quot;:\u0026quot;US\u0026quot;,\u0026quot;merchantName\u0026quot;:\u0026quot;Timbuk2\u0026quot;,\u0026quot;phoneRequired\u0026quot;:false,\u0026quot;companyRequired\u0026quot;:false,\u0026quot;shippingType\u0026quot;:\u0026quot;shipping\u0026quot;,\u0026quot;shopifyPaymentsEnabled\u0026quot;:true,\u0026quot;hasManagedSellingPlanState\u0026quot;:false,\u0026quot;requiresBillingAgreement\u0026quot;:false,\u0026quot;gatewayType\u0026quot;:\u0026quot;MANAGED\u0026quot;,\u0026quot;merchantId\u0026quot;:\u0026quot;YYQ2F2G5QJGSE\u0026quot;,\u0026quot;sdkUrl\u0026quot;:\u0026quot;https:\/\/www.paypal.com\/sdk\/js?components=buttons\\u0026commit=false\\u0026currency=USD\\u0026locale=en_US\\u0026client-id=AbasDhzlU0HbpiStJiN1KRJ_cNJJ7xYBip7JJoMO0GQpLi8ePNgdbLXkC7_KMeyTg8tnAKW4WKrh9qmf\\u0026merchant-id=YYQ2F2G5QJGSE\\u0026intent=authorize\u0026quot;,\u0026quot;serviceableCountryCodes\u0026quot;
5010:[\u0026quot;AD\u0026quot;,\u0026quot;AE\u0026quot;,\u0026quot;AF\u0026quot;,\u0026quot;AG\u0026quot;,\u0026quot;AI\u0026quot;,\u0026quot;AL\u0026quot;,\u0026quot;AM\u0026quot;,\u0026quot;AN\u0026quot;,\u0026quot;AO\u0026quot;,\u0026quot;AR\u0026quot;,\u0026quot;AU\u0026quot;,\u0026quot;AW\u0026quot;,\u0026quot;AX\u0026quot;,\u0026quot;AZ\u0026quot;,\u0026quot;BA\u0026quot;,\u0026quot;BB\u0026quot;,\u0026quot;BD\u0026quot;,\u0026quot;BF\u0026quot;,\u0026quot;BH\u0026quot;,\u0026quot;BI\u0026quot;,\u0026quot;BJ\u0026quot;,\u0026quot;BL\u0026quot;,\u0026quot;BM\u0026quot;,\u0026quot;BN\u0026quot;,\u0026quot;BO\u0026quot;,\u0026quot;BQ\u0026quot;,\u0026quot;BR\u0026quot;,\u0026quot;BS\u0026quot;,\u0026quot;BT\u0026quot;,\u0026quot;BV\u0026quot;,\u0026quot;BW\u0026quot;,\u0026quot;BY\u0026quot;,\u0026quot;BZ\u0026quot;,\u0026quot;CA\u0026quot;,\u0026quot;CC\u0026quot;,\u0026quot;CD\u0026quot;,\u0026quot;CF\u0026quot;,\u0026quot;CG\u0026quot;,\u0026quot;CH\u0026quot;,\u0026quot;CI\u0026quot;,\u0026quot;CK\u0026quot;,\u0026quot;CL\u0026quot;,\u0026quot;CM\u0026quot;,\u0026quot;CN\u0026quot;,\u0026quot;CO\u0026quot;,\u0026quot;CR\u0026quot;,\u0026quot;CV\u0026quot;,\u0026quot;CW\u0026quot;,\u0026quot;CX\u0026quot;,\u0026quot;DJ\u0026quot;,\u0026quot;DM\u0026quot;,\u0026quot;DO\u0026quot;,\u0026quot;DZ\u0026quot;,\u0026quot;EC\u0026quot;,\u0026quot;EG\u0026quot;,\u0026quot;EH\u0026quot;,\u0026quot;ER\u0026quot;,\u0026quot;ET\u0026quot;,\u0026quot;FJ\u0026quot;,\u0026quot;FK\u0026quot;,\u0026quot;FO\u0026quot;,\u0026quot;GA\u0026quot;,\u0026quot;GB\u0026quot;,\u0026quot;GD\u0026quot;,\u0026quot;GE\u0026quot;,\u0026quot;GF\u0026quot;,\u0026quot;GG\u0026quot;,\u0026quot;GI\u0026quot;,\u0026quot;GL\u0026quot;,\u0026quot;GM\u0026quot;,\u0026quot;GN\u0026quot;,\u0026quot;GP\u0026quot;,\u0026quot;GQ\u0026quot;,\u0026quot;GS\u0026quot;,\u0026quot;GT\u0026quot;,\u0026quot;GW\u0026quot;,\u0026quot;GY\u0026quot;,\u0026quot;HK\u0026quot;,\u0026quot;HM\u0026quot;,\u0026quot;HN\u0026quot;,\u0026quot;HT\u0026quot;,\u0026quot;ID\u0026quot;,\u0026quot;IL\u0026quot;,\u0026quot;IM\u0026quot;,\u0026quot;IN\u0026quot;,\u0026quot;IO\u0026quot;,\u0026quot;IQ\u0026quot;,\u0026quot;IS\u0026quot;,\u0026quot;JE\u0026quot;,\u0026quot;JM\u0026quot;,\u0026quot;JO\u0026quot;,\u0026quot;JP\u0026quot;,\u0026quot;KE\u0026quot;,\u0026quot;KG\u0026quot;,\u0026quot;KH\u0026quot;,\u0026quot;KI\u0026quot;,\u0026quot;KM\u0026quot;,\u0026quot;KN\u0026quot;,\u0026quot;KR\u0026quot;,\u0026quot;KW\u0026quot;,\u0026quot;KY\u0026quot;,\u0026quot;KZ\u0026quot;,\u0026quot;LA\u0026quot;,\u0026quot;LB\u0026quot;,\u0026quot;LC\u0026quot;,\u0026quot;LI\u0026quot;,\u0026quot;LK\u0026quot;,\u0026quot;LR\u0026quot;,\u0026quot;LS\u0026quot;,\u0026quot;LY\u0026quot;,\u0026quot;MA\u0026quot;,\u0026quot;MC\u0026quot;,\u0026quot;MD\u0026quot;,\u0026quot;ME\u0026quot;,\u0026quot;MF\u0026quot;,\u0026quot;MG\u0026quot;,\u0026quot;MK\u0026quot;,\u0026quot;ML\u0026quot;,\u0026quot;MM\u0026quot;,\u0026quot;MN\u0026quot;,\u0026quot;MO\u0026quot;,\u0026quot;MQ\u0026quot;,\u0026quot;MR\u0026quot;,\u0026quot;MS\u0026quot;,\u0026quot;MU\u0026quot;,\u0026quot;MV\u0026quot;,\u0026quot;MW\u0026quot;,\u0026quot;MX\u0026quot;,\u0026quot;MY\u0026quot;,\u0026quot;MZ\u0026quot;,\u0026quot;NA\u0026quot;,\u0026quot;NC\u0026quot;,\u0026quot;NE\u0026quot;,\u0026quot;NF\u0026quot;,\u0026quot;NI\u0026quot;,\u0026quot;NO\u0026quot;,\u0026quot;NP\u0026quot;,\u0026quot;NR\u0026quot;,\u0026quot;NU\u0026quot;,\u0026quot;NZ\u0026quot;,\u0026quot;OM\u0026quot;,\u0026quot;PA\u0026quot;,\u0026quot;PE\u0026quot;,\u0026quot;PF\u0026quot;,\u0026quot;PG\u0026quot;,\u0026quot;PH\u0026quot;,\u0026quot;PK\u0026quot;,\u0026quot;PM\u0026quot;,\u0026quot;PN\u0026quot;,\u0026quot;PS\u0026quot;,\u0026quot;PY\u0026quot;,\u0026quot;QA\u0026quot;,\u0026quot;RE\u0026quot;,\u0026quot;RS\u0026quot;,\u0026quot;RW\u0026quot;,\u0026quot;SA\u0026quot;,\u0026quot;SB\u0026quot;,\u0026quot;SC\u0026quot;,\u0026quot;SD\u0026quot;,\u0026quot;SG\u0026quot;,\u0026quot;SH\u0026quot;,\u0026quot;SJ\u0026quot;,\u0026quot;SL\u0026quot;,\u0026quot;SM\u0026quot;,\u0026quot;SN\u0026quot;,\u0026quot;SO\u0026quot;,\u0026quot;SR\u0026quot;,\u0026quot;SS\u0026quot;,\u0026quot;ST\u0026quot;,\u0026quot;SV\u0026quot;,\u0026quot;SX\u0026quot;,\u0026quot;SY\u0026quot;,\u0026quot;SZ\u0026quot;,\u0026quot;TC\u0026quot;,\u0026quot;TD\u0026quot;,\u0026quot;TF\u0026quot;,\u0026quot;TG\u0026quot;,\u0026quot;TH\u0026quot;,\u0026quot;TJ\u0026quot;,\u0026quot;TK\u0026quot;,\u0026quot;TL\u0026quot;,\u0026quot;TM\u0026quot;,\u0026quot;TN\u0026quot;,\u0026quot;TO\u0026quot;,\u0026quot;TR\u0026quot;,\u0026quot;TT\u0026quot;,\u0026quot;TV\u0026quot;,\u0026quot;TW\u0026quot;,\u0026quot;TZ\u0026quot;,\u0026quot;UA\u0026quot;,\u0026quot;UG\u0026quot;,\u0026quot;UM\u0026quot;,\u0026quot;US\u0026quot;,\u0026quot;UY\u0026quot;,\u0026quot;UZ\u0026quot;,\u0026quot;VA\u0026quot;,\u0026quot;VC\u0026quot;,\u0026quot;VE\u0026quot;,\u0026quot;VG\u0026quot;,\u0026quot;VN\u0026quot;,\u0026quot;VU\u0026quot;,\u0026quot;WF\u0026quot;,\u0026quot;WS\u0026quot;,\u0026quot;XK\u0026quot;,\u0026quot;YE\u0026quot;,\u0026quot;YT\u0026quot;,\u0026quot;ZA\u0026quot;,\u0026quot;ZM\u0026quot;,\u0026quot;ZW\u0026quot;]}}]\" access-token=\"750f86b1ebb28b5cb25841d166935743\" buyer-country=\"US\" buyer-locale=\"en\" buyer-currency=\"USD\" shop-id=\"25729458\" cart-id=\"f0ccdba761d7c1270d924f4ca911f2bb\" enabled-flags=\"[\u0026quot;
50101172c16a\u0026quot;,\u0026quot;a1d1f9a1\u0026quot;,\u0026quot;f5afabb3\u0026quot;,\u0026quot;370070f3\u0026quot;]\" \u003e \u003cdiv class=\"wallet-button-wrapper\"\u003e \u003cul class='wallet-cart-grid wallet-cart-grid--skeleton' role=\"list\" data-shopify-buttoncontainer=\"true\"\u003e \u003cli data-testid='grid-cell' class='wallet-cart-button-container'\u003e\u003cdiv class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'\u003e\u0026nbsp\u003c\/div\u003e\u003c\/li\u003e\u003cli data-testid='grid-cell' class='wallet-cart-button-container'\u003e\u003cdiv class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'\u003e\u0026nbsp\u003c\/div\u003e\u003c\/li\u003e \u003c\/ul\u003e \u003c\/div\u003e \u003c\/shopify-accelerated-checkout-cart\u003e \u003c\/div\u003e", 5011 "enable": true 5012 }; 5013 5014 window.continueShoppingURL = null; 5015 5016 window.excludedFreeShippingProducts = [ 5017 5018 , 5019 5020 1499662024746, 5021 5022 1431154425898 5023 5024 ]; 5025</script>
5025 5026 5027 <main role="main" id="MainContent"> 5028 5029 5030 5031 5032<div id="size-guide" class="modal" style="display: none" role="dialog" aria-modal="true" aria-labelledby="size-guide-title" aria-hidden="true" tabindex="-1"> 5033 <div class="modal__wrap"> 5034 <header class="modal__header"> 5035 5036 <h3 class="modal__header-title" id="size-guide-title"> 5037 <span>Size Guide</span> 5038 </h3> 5039 5040 <button class="modal__close" type="button" aria-label="Close modal"></button> 5041 </header> 5042 5043 5044 5045 <div class="modal__grid modal__grid--column"> 5046 5047 <figure class="modal__list"> 5048 <div class="modal__item modal__item--image"> 5049 5050 <div class="modal__media"> 5051 <picture class="modal__picture"> 5052 <source data-srcset="https://cld.accentuate.io/25729458/1668469257634/Custom-CMB-XS-906x863.png?v=1699655477642&options=w_320 1x, https://cld.accentuate.io/25729458/1668469257634/Custom-CMB-XS-906x863.png?v=1699655477642&options=w_640 2x"> 5053 <img 5054 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5055 data-src="https://cld.accentuate.io/25729458/1668469257634/Custom-CMB-XS-906x863.png?v=1699655477642&options=w_320" 5056 alt="" 5057 height="304" 5058 width="320" 5059 class="lazy" 5060 > 5061 </picture> 5062 </div> 5063 5064 </div> 5065 <div class="modal__item modal__item--info"> 5066 <figcaption class="modal__info"> 5067 <div class="modal__info-inner"> 5068 5069 <h3 class="modal__title"> 5070 <span>X-Small</span> 5071 </h3> 5072 5073 5074 5075 <p class="modal__message"> 5076 <span><ul><li>Fits up to 11" tablet</li><li>Volume: 6L</li><li>Dimensions: 12.2"w x 10"h x 4.7"d</li></ul></span> 5077 </p> 5078 5079 </div> 5080 </figcaption> 5081 </div> 5082 </figure> 5083 5084 5085 5086 5087 <figure class="modal__list"> 5088 <div class="modal__item modal__item--image"> 5089 5090 <div class="modal__media"> 5091 <picture class="modal__picture"> 5092 <source data-srcset="https://cld.accentuate.io/25729458/1668469287470/Custom-CMB-S-906x863.png?v=1699655496567&options=w_320 1x, https://cld.accentuate.io/25729458/1668469287470/Custom-CMB-S-906x863.png?v=1699655496567&options=w_640 2x"> 5093 <img 5094 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5095 data-src="https://cld.accentuate.io/25729458/1668469287470/Custom-CMB-S-906x863.png?v=1699655496567&options=w_320" 5096 alt="" 5097 height="304" 5098 width="320" 5099 class="lazy" 5100 > 5101 </picture> 5102 </div> 5103 5104 </div> 5105 <div class="modal__item modal__item--info"> 5106 <figcaption class="modal__info"> 5107 <div class="modal__info-inner"> 5108 5109 <h3 class="modal__title"> 5110 <span>Small</span> 5111 </h3> 5112 5113 5114 5115 <p class="modal__message"> 5116 <span><ul><li>Fits up to 13" Laptop</li><li>Volume: 11L</li><li>Dimensions: 15.2"w x 10.6"h x 5.12"d</li></ul></span> 5117 </p> 5118 5119 </div> 5120 </figcaption> 5121 </div> 5122 </figure> 5123 5124 5125 5126 5127 <figure class="modal__list"> 5128 <div class="modal__item modal__item--image"> 5129 5130 <div class="modal__media"> 5131 <picture class="modal__picture"> 5132 <source data-srcset="https://cld.accentuate.io/25729458/1668469322427/Custom-CMB-M-906x863.png?v=1699655512649&options=w_320 1x, https://cld.accentuate.io/25729458/1668469322427/Custom-CMB-M-906x863.png?v=1699655512649&options=w_640 2x"> 5133 <img 5134 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5135 data-src="https://cld.accentuate.io/25729458/1668469322427/Custom-CMB-M-906x863.png?v=1699655512649&options=w_320" 5136 alt="" 5137 height="304" 5138 width="320" 5139 class="lazy" 5140 > 5141 </picture> 5142 </div> 5143 5144 </div> 5145 <div class="modal__item modal__item--info">
5146 <figcaption class="modal__info"> 5147 <div class="modal__info-inner"> 5148 5149 <h3 class="modal__title"> 5150 <span>Medium</span> 5151 </h3> 5152 5153 5154 5155 <p class="modal__message"> 5156 <span><ul><li>Fits up to 16" Laptop</li><li>Volume: 16L</li><li>Dimensions: 17.9"w x 12.8"h x 7.28"d</li></ul></span> 5157 </p> 5158 5159 </div> 5160 </figcaption> 5161 </div> 5162 </figure> 5163 5164 5165 5166 5167 <figure class="modal__list"> 5168 <div class="modal__item modal__item--image"> 5169 5170 <div class="modal__media"> 5171 <picture class="modal__picture"> 5172 <source data-srcset="https://cld.accentuate.io/25729458/1668469348946/Custom-CMB-L-906x863.png?v=1699655529623&options=w_320 1x, https://cld.accentuate.io/25729458/1668469348946/Custom-CMB-L-906x863.png?v=1699655529623&options=w_640 2x"> 5173 <img 5174 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5175 data-src="https://cld.accentuate.io/25729458/1668469348946/Custom-CMB-L-906x863.png?v=1699655529623&options=w_320" 5176 alt="" 5177 height="304" 5178 width="320" 5179 class="lazy" 5180 > 5181 </picture> 5182 </div> 5183 5184 </div> 5185 <div class="modal__item modal__item--info"> 5186 <figcaption class="modal__info"> 5187 <div class="modal__info-inner"> 5188 5189 <h3 class="modal__title"> 5190 <span>Large</span> 5191 </h3> 5192 5193 5194 5195 <p class="modal__message"> 5196 <span><ul><li>Fits up to 17" Laptop</li><li>Volume: 22L</li><li>Dimensions: 20.5"w x 14.6"h x 8.07"d</li></ul></span> 5197 </p> 5198 5199 </div> 5200 </figcaption> 5201 </div> 5202 </figure> 5203 5204 5205 5206 5207 <figure class="modal__list"> 5208 <div class="modal__item modal__item--image"> 5209 5210 <div class="modal__media"> 5211 <picture class="modal__picture"> 5212 <source data-srcset="https://cld.accentuate.io/25729458/1744836067364/Custom-CMB-XL.png?v=1744836067364&options=w_320 1x, https://cld.accentuate.io/25729458/1744836067364/Custom-CMB-XL.png?v=1744836067364&options=w_640 2x"> 5213 <img 5214 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5215 data-src="https://cld.accentuate.io/25729458/1744836067364/Custom-CMB-XL.png?v=1744836067364&options=w_320" 5216 alt="" 5217 height="304" 5218 width="320" 5219 class="lazy" 5220 > 5221 </picture> 5222 </div> 5223 5224 </div> 5225 <div class="modal__item modal__item--info"> 5226 <figcaption class="modal__info"> 5227 <div class="modal__info-inner"> 5228 5229 <h3 class="modal__title"> 5230 <span>X-Large</span> 5231 </h3> 5232 5233 5234 5235 <p class="modal__message"> 5236 <span><ul id="isPasted"><li>Fits up to 17" Laptop</li><li>Volume: 32L</li><li>Dimensions: 23"w x 16"h x 9"d</li></ul></span> 5237 </p> 5238 5239 </div> 5240 </figcaption> 5241 </div> 5242 </figure> 5243 5244 </div> 5245 5246 5247 </div> 5248 </div> 5249 5250 5251<div id="fabric-guide" class="modal" style="display: none" role="dialog" aria-modal="true" aria-labelledby="fabric-guide-title" aria-hidden="true" tabindex="-1"> 5252 <div class="modal__wrap"> 5253 <header class="modal__header"> 5254 5255 <h3 class="modal__header-title" id="fabric-guide-title">
5256 <span>Fabric Guide</span> 5257 </h3> 5258 5259 <button class="modal__close" type="button" aria-label="Close modal"></button> 5260 </header> 5261 5262 5263 5264 <div class="modal__grid modal__grid--row"> 5265 5266 <figure class="modal__list"> 5267 <div class="modal__item modal__item--image"> 5268 5269 <div class="modal__media"> 5270 <picture class="modal__picture"> 5271 <source data-srcset="https://cld.accentuate.io/25729458/1668469417835/corduracanvas.jpg?v=1668469417835&options=w_320 1x, https://cld.accentuate.io/25729458/1668469417835/corduracanvas.jpg?v=1668469417835&options=w_640 2x"> 5272 <img 5273 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5274 data-src="https://cld.accentuate.io/25729458/1668469417835/corduracanvas.jpg?v=1668469417835&options=w_320" 5275 alt="" 5276 height="304" 5277 width="320" 5278 class="lazy" 5279 > 5280 </picture> 5281 </div> 5282 5283 </div> 5284 <div class="modal__item modal__item--info"> 5285 <figcaption class="modal__info"> 5286 <div class="modal__info-inner"> 5287 5288 <h3 class="modal__title"> 5289 <span>Eco Cordura Canvas</span> 5290 </h3> 5291 5292 5293 5294 <p class="modal__message"> 5295 <span><p>Made from 100% recycled plastic bottles (PET), our Cordura canvas is extremely durable, abrasion resistant, and versatile with a clean matte finish. A great choice for any or all panels on your bag. Eco Cordura 1200x1500D Recycled Polyester.</p></span> 5296 </p> 5297 5298 </div> 5299 </figcaption> 5300 </div> 5301 </figure> 5302 5303 5304 5305 5306 <figure class="modal__list"> 5307 <div class="modal__item modal__item--image"> 5308 5309 <div class="modal__media"> 5310 <picture class="modal__picture"> 5311 <source data-srcset="https://cld.accentuate.io/25729458/1668469496269/polybond.jpg?v=1668469496269&options=w_320 1x, https://cld.accentuate.io/25729458/1668469496269/polybond.jpg?v=1668469496269&options=w_640 2x"> 5312 <img 5313 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5314 data-src="https://cld.accentuate.io/25729458/1668469496269/polybond.jpg?v=1668469496269&options=w_320" 5315 alt="" 5316 height="304" 5317 width="320" 5318 class="lazy" 5319 > 5320 </picture> 5321 </div> 5322 5323 </div> 5324 <div class="modal__item modal__item--info"> 5325 <figcaption class="modal__info"> 5326 <div class="modal__info-inner"> 5327 5328 <h3 class="modal__title"> 5329 <span>Rain Resist</span> 5330 </h3> 5331 5332 5333 5334 <p class="modal__message"> 5335 <span><p>A water-resistant bonded fabric that holds back rain and puddles. Use it all over or on the boot of your bag. 300D Polyester + Phthalate-free PVC.</p></span> 5336 </p> 5337 5338 </div> 5339 </figcaption> 5340 </div> 5341 </figure> 5342 5343 5344 5345 5346 <figure class="modal__list"> 5347 <div class="modal__item modal__item--image"> 5348 5349 <div class="modal__media"> 5350 <picture class="modal__picture"> 5351 <source data-srcset="https://cld.accentuate.io/25729458/1668469452707/tailored.jpg?v=1668469452708&options=w_320 1x, https://cld.accentuate.io/25729458/1668469452707/tailored.jpg?v=1668469452708&options=w_640 2x"> 5352 <img 5353 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5354 data-src="https://cld.accentuate.io/25729458/1668469452707/tailored.jpg?v=1668469452708&options=w_320" 5355 alt="" 5356 height="304" 5357 width="320" 5358 class="lazy" 5359 > 5360 </picture> 5361 </div> 5362 5363 </div> 5364 <div class="modal__item modal__item--info">
5365 <figcaption class="modal__info"> 5366 <div class="modal__info-inner"> 5367 5368 <h3 class="modal__title"> 5369 <span>Tailored</span> 5370 </h3> 5371 5372 5373 5374 <p class="modal__message"> 5375 <span><p>Perfect for the office or business trips, our tailored fabric has a subtle, refined look â and stands up to daily use. 500Dx600D Nylon Polyester.<span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span><span data-contrast="none" lang="EN-US" style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent; font-variant: normal; font-style: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; color: rgb(36, 36, 36); font-size: 11pt; line-height: 18.3458px; font-family: Calibri, Calibri_EmbeddedFont, Calibri_MSFontService, sans-serif;"><span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span></span><span data-ccp-props='{"201341983":0,"335559739":160,"335559740":259}' style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; font-size: 11pt; line-height: 18.3458px; font-family: Calibri, Calibri_EmbeddedFont, Calibri_MSFontService, sans-serif; color: rgb(36, 36, 36);"> </span></p></span> 5376 </p> 5377 5378 </div> 5379 </figcaption> 5380 </div> 5381 </figure> 5382 5383 5384 5385 5386 <figure class="modal__list"> 5387 <div class="modal__item modal__item--image"> 5388 5389 <div class="modal__media"> 5390 <picture class="modal__picture"> 5391 <source data-srcset="https://cld.accentuate.io/25729458/1711379882546/ECO-RIPSTOP-SWATCH-350x350-03-1.jpg?v=1711379882546&options=w_320 1x, https://cld.accentuate.io/25729458/1711379882546/ECO-RIPSTOP-SWATCH-350x350-03-1.jpg?v=1711379882546&options=w_640 2x"> 5392 <img 5393 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5394 data-src="https://cld.accentuate.io/25729458/1711379882546/ECO-RIPSTOP-SWATCH-350x350-03-1.jpg?v=1711379882546&options=w_320" 5395 alt="" 5396 height="304" 5397 width="320" 5398 class="lazy" 5399 > 5400 </picture> 5401 </div> 5402 5403 </div> 5404 <div class="modal__item modal__item--info"> 5405 <figcaption class="modal__info"> 5406 <div class="modal__info-inner"> 5407 5408 <h3 class="modal__title"> 5409 <span>Eco Ripstop</span> 5410 </h3> 5411 5412 5413 5414 <p class="modal__message"> 5415 <span><p>300D Eco Ripstop fabric is made from 100% recycled polyester plus PU and provides high-performance durability with resistance to water and excess tear damage.</p></span> 5416 </p> 5417 5418 </div> 5419 </figcaption> 5420 </div> 5421 </figure> 5422 5423 5424 5425 5426 <figure class="modal__list"> 5427 <div class="modal__item modal__item--image"> 5428 5429 <div class="modal__media"> 5430 <picture class="modal__picture"> 5431 <source data-srcset="https://cld.accentuate.io/25729458/1668469550900/reflectivemesh.jpg?v=1668469550900&options=w_320 1x, https://cld.accentuate.io/25729458/1668469550900/reflectivemesh.jpg?v=1668469550900&options=w_640 2x"> 5432 <img 5433 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5434 data-src="https://cld.accentuate.io/25729458/1668469550900/reflectivemesh.jpg?v=1668469550900&options=w_320" 5435 alt="" 5436 height="304" 5437 width="320" 5438 class="lazy" 5439 > 5440 </picture> 5441 </div> 5442 5443 </div> 5444 <div class="modal__item modal__item--info">
5445 <figcaption class="modal__info"> 5446 <div class="modal__info-inner"> 5447 5448 <h3 class="modal__title"> 5449 <span>Reflective Mesh</span> 5450 </h3> 5451 5452 5453 5454 <p class="modal__message"> 5455 <span><p><span data-contrast="none" lang="EN-US" style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent; font-variant: normal; color: rgb(0, 0, 0); font-style: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; font-size: 11pt; line-height: 18.3458px; font-family: Calibri, Calibri_EmbeddedFont, Calibri_MSFontService, sans-serif;"><span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span></span><span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span>Brilliantly reflective in direct light, yet with a matte color in indirect light, our reflective mesh adds texture and tech to your build. Use it all over or on the top or bottom of your bag for safety at night. 100% Polyester.<span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span><span data-contrast="none" lang="EN-US" style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent; font-variant: normal; color: rgb(0, 0, 0); font-style: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: pre-wrap; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; font-size: 11pt; line-height: 18.3458px; font-family: Calibri, Calibri_EmbeddedFont, Calibri_MSFontService, sans-serif;"><span style="margin: 0px; padding: 0px; user-select: text; -webkit-user-drag: none; -webkit-tap-highlight-color: transparent;"></span></span><br><br></p></span> 5456 </p> 5457 5458 </div> 5459 </figcaption> 5460 </div> 5461 </figure> 5462 5463 5464 5465 5466 <figure class="modal__list"> 5467 <div class="modal__item modal__item--image"> 5468 5469 <div class="modal__media"> 5470 <picture class="modal__picture"> 5471 <source data-srcset="https://cld.accentuate.io/25729458/1668469522366/reflective.jpg?v=1668469522366&options=w_320 1x, https://cld.accentuate.io/25729458/1668469522366/reflective.jpg?v=1668469522366&options=w_640 2x"> 5472 <img 5473 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5474 data-src="https://cld.accentuate.io/25729458/1668469522366/reflective.jpg?v=1668469522366&options=w_320" 5475 alt="" 5476 height="304" 5477 width="320" 5478 class="lazy" 5479 > 5480 </picture> 5481 </div> 5482 5483 </div> 5484 <div class="modal__item modal__item--info"> 5485 <figcaption class="modal__info"> 5486 <div class="modal__info-inner"> 5487 5488 <h3 class="modal__title"> 5489 <span>Reflective Silver</span> 5490 </h3> 5491 5492 5493 5494 <p class="modal__message"> 5495 <span><p>This high-visibility fabric shines bright in direct light and has a glossy appearance in indirect light. Use it all over or on the top or bottom of your bag for safety at night.</p></span> 5496 </p> 5497 5498 </div> 5499 </figcaption> 5500 </div> 5501 </figure> 5502 5503 </div> 5504 5505 5506 </div> 5507 </div> 5508 5509 5510 5511 5512 5513 5514 5515
5516<script> 5517 (function () { 5518 try { 5519 var handle = "1067-freestyle-carry-on-plus"; 5520 if (!handle) return; 5521 5522 var variantId = 43806284480554; 5523 5524 var KEY = 'recentlyViewedProducts'; 5525 var MAX = 12; 5526 5527 var list = []; 5528 try { 5529 list = JSON.parse(window.localStorage.getItem(KEY)) || []; 5530 } catch (e) { 5531 list = []; 5532 } 5533 if (!Array.isArray(list)) list = []; 5534 5535 // Drop any prior entry for this product (legacy string or object) so the 5536 // newest view â with its variant â moves to the front. 5537 list = list.filter(function (entry) { 5538 var h = (entry && typeof entry === 'object') ? entry.handle : entry; 5539 return h !== handle; 5540 }); 5541 list.unshift({ handle: handle, variantId: variantId }); 5542 list = list.slice(0, MAX); 5543 5544 window.localStorage.setItem(KEY, JSON.stringify(list)); 5545 } catch (e) {} 5546 })(); 5547</script>
5547 5548 5549 5550 5551 5552<section 5553 class="product" 5554 data-section-id="product" 5555 data-section-type="product" 5556 data-enable-history-state="true" 5557 data-product 5558 5559 5560 itemscope 5561 itemtype="http://schema.org/Product" 5562> 5563 5564 5565 5566 5567 5568 5569 5570 <meta itemprop="name" content="FreeStyle Carry-On Plus - Black / OS"> 5571 <meta itemprop="url" content="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus?variant=43806284480554"> 5572 <meta itemprop="brand" content="Timbuk2-Timbuk2"> 5573 <meta itemprop="image" content="//www.timbuk2.com/cdn/shop/files/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f_600x600.png?v=1778782830"> 5574 <meta itemprop="description" content="More room. Same seamless movement."> 5575 5576 <nav class="breadcrumbs" role="navigation" aria-label="breadcrumbs"> 5577 5578 5579 <a class="breadcrumbs__link" href="/">Home</a> 5580 5581 5582 5583 5584 <span class="breadcrumbs__seperator">/</span> 5585 <span class="breadcrumbs__title">FreeStyle Carry-On Plus</span> 5586 5587 5588</nav> 5589 5590 5591 <div class="product__wrap"> 5592 5593 5594 5595 5596 5597 5598 <header class="product__header product__header--mobile"> 5599 <div class="product__header-top"> 5600 5601 5602 5603 5604 <p class="product__sku"> 5605 <span>Style #</span> 5606 <span data-sku>1067-71-1310</span> 5607 </p> 5608 5609 5610 5611 <div class="product__rating"> 5612 5613<div class="product-rating product-rating--product" data-product-rating-holder> 5614 <div class="product-rating__container" data-product-rating-stars> 5615 <div 5616 class="yotpo-widget-instance" 5617 data-yotpo-instance-id="1053391" 5618 data-yotpo-product-id="7735073144874" 5619 data-yotpo-cart-product-id="" 5620 data-yotpo-section-id="product"></div> 5621 </div> 5622</div> 5623 </div> 5624 </div> 5625 5626 <div class="product__header-middle"> 5627 <h1 class="product__title">FreeStyle Carry-On Plus</h1> 5628 5629 5630 <div class="product__description"><p><meta charset="utf-8"><meta charset="utf-8"><span>More room. Same seamless movement.</span><br></p></div> 5631 5632 </div> 5633 5634 <div class="product__price " data-price-wrapper> 5635 <span data-product-price>$345</span> 5636 5637 5638 </div> 5639 </header> 5640 5641 5642 5643 <div class="product-media"> 5644 <div 5645 class="product-images" 5646 5647 data-product-images 5648 v-cloak 5649 5650 > 5651 5652 <div class="product-images-mobile"> 5653 <div class="swiper" ref="carousel"> 5654 <div class="swiper-wrapper"> 5655 <template v-for="(media, i) in item.media"> 5656 <template v-if="bundle || media.alt.value.split('|')[0].includes('N')"> 5657 <div class="swiper-slide" :key="'media-mobile' + i"> 5658 <picture 5659 v-if="media.type == 'image'" 5660 class="product-images__picture" 5661 > 5662 <source srcset="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" media="(min-width: 768px)"> 5663 <source :srcset="imgPro(imgURL(media.url, '347x421', true)) + ' 1x, ' + imgPro(imgURL(media.url, '694x842', true)) + ' 2x'" media="(min-width: 576px)"> 5664 <source :srcset="imgPro(imgURL(media.url, '490x595', true)) + ' 1x, ' + imgPro(imgURL(media.url, '980x1190', true)) + ' 2x'" media="(min-width: 414px)"> 5665 <source :srcset="imgPro(imgURL(media.url, '349x424', true)) + ' 1x, ' + imgPro(imgURL(media.url, '698x847', true)) + ' 2x'" media="(min-width: 375px)"> 5666 <source :srcset="imgPro(imgURL(media.url, '314x381', true)) + ' 1x, ' + imgPro(imgURL(media.url, '628x762', true)) + ' 2x'"> 5667 <img 5668 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5669 :alt="fetchAlt(media.alt)" 5670 :data-alt="media.alt.value" 5671 height="728" 5672 width="600" 5673 > 5674 </picture> 5675 5676 <div 5677 v-if="media.type == 'video'" 5678 class="product-images__video-holder" 5679 > 5680 <video 5681 class="product-images__video" 5682 autoplay 5683 loop 5684 muted 5685 playsinline 5686 :data-alt="media.alt.value" 5687 :aria-label="fetchAlt(media.alt)" 5688 > 5689 <source :src="source.url" type="video/mp4" v-for="(source, index) in media.video.sources" :key="'video-mobile' + i + index"> 5690 Your browser does not support the video tag. 5691 </video> 5692 </div> 5693 5694 <div 5695 v-if="i == 0 && item.badge && item.badge.length" 5696 class="product__badges" 5697 > 5698 <div class="product__badge" v-for="(badge, i) in item.badge" :key="'badge-main' + i"> 5699 <picture 5700 v-if="badge.icon" 5701 class="product__badge-icon" 5702 > 5703 <source :srcset="badge.icon.replace('w_76', 'w_38') + ' 1x, ' + badge.icon + ' 2x'"> 5704 <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E"> 5705 </picture> 5706 <div 5707 v-if="badge.text" 5708 class="product__badge-text" 5709 > 5710 <p v-html="badge.text"></p> 5711 </div> 5712 </div> 5713 </div> 5714 </div> 5715 </template> 5716 </template> 5717 </div> 5718 </div> 5719 </div> 5720 5721 <div class="product-images-no-mobile"> 5722 <ul class="product-images__list"> 5723 <template v-for="(media, i) in item.media"> 5724 <template v-if="bundle || media.alt.value.split('|')[0].includes('N')"> 5725 <li class="product-images__item" :key="'media-main' + i"> 5726 <div class="product-images__item-inner"> 5727 <button type="button" class="product-images__button" aria-label="Zoom Image" v-on:click.prevent="zoomOpen(i)" :data-zoom-id="i"> 5728 <picture 5729 v-if="media.type == 'image'" 5730 class="product-images__picture" 5731 > 5732 <source :srcset="imgPro(imgURL(media.url, '523x635', true)) + ' 1x, ' + imgPro(imgURL(media.url, '1046x1270', true)) + ' 2x'" media="(min-width: 1600px)"> 5733 <source :srcset="imgPro(imgURL(media.url, '476x578', true)) + ' 1x, ' + imgPro(imgURL(media.url, '952x1156', true)) + ' 2x'" media="(min-width: 1400px)"> 5734 <source :srcset="imgPro(imgURL(media.url, '391x475', true)) + ' 1x, ' + imgPro(imgURL(media.url, '782x949', true)) + ' 2x'" media="(min-width: 1200px)"> 5735 <source :srcset="imgPro(imgURL(media.url, '305x370', true)) + ' 1x, ' + imgPro(imgURL(media.url, '610x740', true)) + ' 2x'" media="(min-width: 1024px)"> 5736 <source :srcset="imgPro(imgURL(media.url, '257x312', true)) + ' 1x, ' + imgPro(imgURL(media.url, '514x624', true)) + ' 2x'" media="(min-width: 768px)"> 5737 <img 5738 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5739 :alt="fetchAlt(media.alt)" 5740 :data-alt="media.alt.value" 5741 height="728" 5742 width="600" 5743 > 5744 </picture> 5745 5746 <div 5747 v-if="media.type == 'video'" 5748 class="product-images__video-holder" 5749 > 5750 <video 5751 class="product-images__video" 5752 autoplay 5753 loop 5754 muted 5755 playsinline 5756 :data-alt="media.alt.value" 5757 :aria-label="fetchAlt(media.alt)" 5758 > 5759 <source :src="source.url" type="video/mp4" v-for="(source, index) in media.video.sources" :key="'video-main' + i + index"> 5760 Your browser does not support the video tag. 5761 </video> 5762 </div> 5763 </button> 5764 5765 <div 5766 v-if="i == 0 && item.badge && item.badge.length" 5767 class="product__badges" 5768 > 5769 <div class="product__badge" v-for="(badge, i) in item.badge" :key="'badge-main' + i"> 5770 <picture 5771 v-if="badge.icon" 5772 class="product__badge-icon" 5773 > 5774 <source :srcset="badge.icon.replace('w_76', 'w_38') + ' 1x, ' + badge.icon + ' 2x'"> 5775 <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E"> 5776 </picture> 5777 <div 5778 v-if="badge.text" 5779 class="product__badge-text" 5780 > 5781 <p v-html="badge.text"></p> 5782 </div> 5783 </div> 5784 </div> 5785 </div> 5786 </li> 5787 </template> 5788 </template> 5789 </ul> 5790 </div> 5791 5792 <aside class="product-zoom-modal" ref="zoom"> 5793 <div class="product-zoom-modal__overlay" v-on:click.prevent="zoomClose"></div> 5794 5795 <div class="product-zoom-modal__inner"> 5796 <div class="product-zoom-modal__scroll" ref="zoomScroll"> 5797 <template v-for="(media, i) in item.media"> 5798 <template v-if="bundle || media.alt.value.split('|')[0].includes('N')"> 5799 <div class="product-zoom-modal__item" :ref="'zoomItem' + i" :key="'media-zoom' + i" :data-zoom-modal-id="i"> 5800 <picture 5801 v-if="media.type == 'image'" 5802 class="product-zoom-modal__picture" 5803 > 5804 <source :data-srcset="imgPro(imgURL(media.url, '1400x1699', true)) + ' 1x, ' + imgPro(imgURL(media.url, '2800x3399', true)) + ' 2x'" media="(min-width: 1400px)"> 5805 <source :data-srcset="imgPro(imgURL(media.url, '1200x1457', true)) + ' 1x, ' + imgPro(imgURL(media.url, '2400x2913', true)) + ' 2x'" media="(min-width: 1200px)"> 5806 <source :data-srcset="imgPro(imgURL(media.url, '932x1131', true)) + ' 1x, ' + imgPro(imgURL(media.url, '1864x2263', true)) + ' 2x'" media="(min-width: 1024px)"> 5807 <source :data-srcset="imgPro(imgURL(media.url, '676x821', true)) + ' 1x, ' + imgPro(imgURL(media.url, '1352x1641', true)) + ' 2x'" media="(min-width: 768px)"> 5808 <source :data-srcset="imgPro(imgURL(media.url, '640x777', true)) + ' 1x, ' + imgPro(imgURL(media.url, '1280x1554', true)) + ' 2x'" media="(min-width: 640px)"> 5809 <source :data-srcset="imgPro(imgURL(media.url, '414x503', true)) + ' 1x, ' + imgPro(imgURL(media.url, '828x1005', true)) + ' 2x'" media="(min-width: 414px)"> 5810 <source :data-srcset="imgPro(imgURL(media.url, '375x455', true)) + ' 1x, ' + imgPro(imgURL(media.url, '750x910', true)) + ' 2x'"> 5811 <img 5812 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 5813 class="lazy" 5814 :alt="fetchAlt(media.alt)" 5815 :data-alt="media.alt.value" 5816 height="728" 5817 width="600" 5818 > 5819 </picture> 5820 5821 <div 5822 v-if="media.type == 'video'" 5823 class="product-zoom-modal__video-holder" 5824 > 5825 <video 5826 class="product-zoom-modal__video lazy" 5827 autoplay 5828 loop 5829 muted 5830 playsinline 5831 :data-alt="media.alt.value" 5832 :aria-label="fetchAlt(media.alt)" 5833 > 5834 <source :data-src="source.url" type="video/mp4" v-for="(source, index) in media.video.sources" :key="'video-zoom' + i + index"> 5835 Your browser does not support the video tag. 5836 </video> 5837 </div> 5838 5839 <div 5840 v-if="i == 0 && item.badge && item.badge.length" 5841 class="product__badges" 5842 > 5843 <div class="product__badge" v-for="(badge, i) in item.badge" :key="'badge-zoom' + i"> 5844 <picture 5845 v-if="badge.icon" 5846 class="product__badge-icon" 5847 > 5848 <source :srcset="badge.icon.replace('w_76', 'w_38') + ' 1x, ' + badge.icon + ' 2x'"> 5849 <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E"> 5850 </picture> 5851 <div 5852 v-if="badge.text" 5853 class="product__badge-text" 5854 > 5855 <p v-html="badge.text"></p> 5856 </div> 5857 </div> 5858 </div> 5859 </div> 5860 </template> 5861 </template> 5862 </div> 5863 </div> 5864 5865 <button type="button" aria-label="Close Zoom" class="product-zoom-modal__button" v-on:click.prevent="zoomClose"> 5866 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="47px" height="47px" viewBox="0 0 47 47" xml:space="preserve"> 5867 <circle fill="#f5f5f5" cx="23.5" cy="23.5" r="23.5"/> 5868 <polygon fill="#2d3142" points="31.667,17.933 29.697,16 23.834,21.891 17.971,16 16.001,
586817.933 21.801,23.733 16.001,29.533 17.971,31.466 23.834,25.575 29.697,31.466 31.667,29.533 25.867,23.733 "/> 5869</svg> 5870 </button> 5871 </aside> 5872 5873 </div> 5874 5875 5876 5877 5878 5879 5880 </div> 5881 5882 <div class="product-info" itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 5883 <meta itemprop="priceCurrency" content="USD"> 5884 <meta itemprop="price" content="345.0"> 5885 <link itemprop="availability" href="http://schema.org/InStock"> 5886 5887 5888 5889 5890 5891 5892 5893 <header class="product__header product__header--no-mobile"> 5894 <div class="product__header-top"> 5895 5896 5897 5898 5899 <p class="product__sku"> 5900 <span>Style #</span> 5901 <span data-sku>1067-71-1310</span> 5902 </p> 5903 5904 5905 5906 <div class="product__rating"> 5907 5908<div class="product-rating product-rating--product" data-product-rating-holder> 5909 <div class="product-rating__container" data-product-rating-stars> 5910 <div 5911 class="yotpo-widget-instance" 5912 data-yotpo-instance-id="1053391" 5913 data-yotpo-product-id="7735073144874" 5914 data-yotpo-cart-product-id="" 5915 data-yotpo-section-id="product"></div> 5916 </div> 5917</div> 5918 </div> 5919 </div> 5920 5921 <div class="product__header-middle"> 5922 <h1 class="product__title">FreeStyle Carry-On Plus</h1> 5923 5924 5925 <div class="product__description"><p><meta charset="utf-8"><meta charset="utf-8"><span>More room. Same seamless movement.</span><br></p></div> 5926 5927 </div> 5928 5929 <div class="product__price " data-price-wrapper> 5930 <span data-product-price>$345</span> 5931 5932 5933 </div> 5934 </header> 5935 5936 5937 5938 <form method="post" action="/cart/add" id="product-form" accept-charset="UTF-8" class="product__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="product" /><input type="hidden" name="utf8" value="â" /> 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 <div class="product-color" data-product-option="color"> 5952 <div class="product__label-wrapper has-stock-label"> 5953 <p class="product__label">Color: <span data-product-option-label="1">Black</span></p><p class="product__stock-label is-transitioning" 5954 data-stock-in-label="In Stock:" 5955 data-stock-in-text="Ships in 2-5 Days" 5956 data-stock-out-label="Sold Out" 5957 data-stock-out-text="" 5958 data-pre-order-label="Pre-Order:" 5959 data-pre-order-text="Ships" 5960 > 5961 <strong data-product-stock-label></strong> 5962 <span data-product-stock-text></span> 5963 </p></div> 5964 5965 5966 <ul class="product-color__list"> 5967 5968 <li class="product-color__item"> 5969 <button 5970 type="button" 5971 class="product-color__button active" 5972 aria-label="Black" 5973 data-product-option-position="1" 5974 data-product-option-value="Black" 5975 data-product-option-button 5976 > 5977 <figure 5978 class="product-color__image-holder" 5979 5980 > 5981 <img 5982 5983 src="https://cld.accentuate.io/25729458/1662075175757/black-2001-colorswatch.jpg?v=1662075175758&options=w_44" 5984 5985 class="product-color__image" 5986 height="44" 5987 width="44" 5988 alt="Black Thumbnail" 5989 onerror="colorImageError(this)" 5990 /> 5991 </figure> 5992 </button> 5993</li> 5994 5995 5996 <li class="product-color__item"> 5997 <button 5998 type="button" 5999 class="product-color__button" 6000 aria-label="Moss" 6001 data-product-option-position="1" 6002 data-product-option-value="Moss" 6003 data-product-option-button 6004 > 6005 <figure 6006 class="product-color__image-holder" 6007 6008 > 6009 <img 6010 6011 src="https://cld.accentuate.io/25729458/1762725612787/moss-swatch-44px.jpeg?v=1762725612787&options=w_44" 6012 6013 class="product-color__image" 6014 height="44" 6015 width="44" 6016 alt="Moss Thumbnail" 6017 onerror="colorImageError(this)" 6018 /> 6019 </figure> 6020 </button> 6021</li> 6022 6023 6024 <li class="product-color__item"> 6025 <button 6026 type="button" 6027 class="product-color__button" 6028 aria-label="Marigold" 6029 data-product-option-position="1" 6030 data-product-option-value="Marigold" 6031 data-product-option-button 6032 > 6033 <figure 6034 class="product-color__image-holder" 6035 6036 > 6037 <img 6038 6039 src="https://cld.accentuate.io/25729458/1762797575301/marigold-swatch-44px.jpeg?v=1762797575301&o
6039ptions=w_44" 6040 6041 class="product-color__image" 6042 height="44" 6043 width="44" 6044 alt="Marigold Thumbnail" 6045 onerror="colorImageError(this)" 6046 /> 6047 </figure> 6048 </button> 6049</li> 6050 6051 6052 <li class="product-color__item"> 6053 <button 6054 type="button" 6055 class="product-color__button" 6056 aria-label="Chalk/Black" 6057 data-product-option-position="1" 6058 data-product-option-value="Chalk/Black" 6059 data-product-option-button 6060 > 6061 <figure 6062 class="product-color__image-holder" 6063 6064 > 6065 <img 6066 6067 src="https://cld.accentuate.io/25729458/1762725596775/chalk-black-swatch-44px.jpg?v=1762725596775&options=w_44" 6068 6069 class="product-color__image" 6070 height="44" 6071 width="44" 6072 alt="Chalk/Black Thumbnail" 6073 onerror="colorImageError(this)" 6074 /> 6075 </figure> 6076 </button> 6077</li> 6078 6079 6080 <li class="product-color__item"> 6081 <button 6082 type="button" 6083 class="product-color__button" 6084 aria-label="Chalk" 6085 data-product-option-position="1" 6086 data-product-option-value="Chalk" 6087 data-product-option-button 6088 > 6089 <figure 6090 class="product-color__image-holder" 6091 6092 > 6093 <img 6094 6095 src="https://cld.accentuate.io/25729458/1762725559413/chalk-swatch-44px.jpeg?v=1762725559413&options=w_44" 6096 6097 class="product-color__image" 6098 height="44" 6099 width="44" 6100 alt="Chalk Thumbnail" 6101 onerror="colorImageError(this)" 6102 /> 6103 </figure> 6104 </button> 6105</li> 6106 6107 6108 <li class="product-color__item"> 6109 <button 6110 type="button" 6111 class="product-color__button" 6112 aria-label="Rose" 6113 data-product-option-position="1" 6114 data-product-option-value="Rose" 6115 data-product-option-button 6116 > 6117 <figure 6118 class="product-color__image-holder" 6119 6120 > 6121 <img 6122 6123 src="https://cld.accentuate.io/25729458/1762725627903/rose-swatch-44px.jpeg?v=1762725627903&options=w_44" 6124 6125 class="product-color__image" 6126 height="44" 6127 width="44" 6128 alt="Rose Thumbnail" 6129 onerror="colorImageError(this)" 6130 /> 6131 </figure> 6132 </button> 6133</li> 6134 6135 6136 </ul> 6137 6138 </div> 6139 6140 6141 6142 6143<div class="product-option visually-hidden" data-product-option="size"> 6144 <div class="product__label-wrapper has-stock-label"> 6145 <p class="product__label product__label--single">Size: <span data-product-option-label="2">OS</span></p></div> 6146 6147 <div class="product-variant" 6148 data-variant-id="43806284480554" 6149 data-leadtime="" 6150 data-pre-order-ship-date=""> 6151 </div> 6152 6153 <div class="product-variant" 6154 data-variant-id="43806284513322" 6155 data-leadtime="" 6156 data-pre-order-ship-date=""> 6157 </div> 6158 6159 <div class="product-variant" 6160 data-variant-id="43806284546090" 6161 data-leadtime="" 6162 data-pre-order-ship-date=""> 6163 </div> 6164 6165 <div class="product-variant" 6166 data-variant-id="43806284578858" 6167 data-leadtime="" 6168 data-pre-order-ship-date=""> 6169 </div> 6170 6171 <div class="product-variant" 6172 data-variant-id="43806284611626" 6173 data-leadtime="" 6174 data-pre-order-ship-date=""> 6175 </div> 6176 6177 <div class="product-variant" 6178 data-variant-id="43806284644394" 6179 data-leadtime="" 6180 data-pre-order-ship-date=""> 6181 </div> 6182 6183 <ul class="product-option__list visually-hidden"> 6184 6185 <li class="product-option__item"> 6186 <button 6187 type="button" 6188 class="product-option__button active" 6189 data-product-option-position="2" 6190 data-product-option-value="OS" 6191 data-product-option-button 6192 >OS</button> 6193 </li> 6194 6195 </ul> 6196 </div> 6197 6198 6199 6200 6201 6202 <select 6203 id="product-select" 6204 name="id" 6205 class="no-js" 6206 data-product-select 6207 > 6208 6209 <option 6210 value="43806284480554" 6211 data-available="true" 6212 selected="selected" 6213 >Black / OS</option> 6214 6215 <option 6216 value="43806284513322" 6217 data-available="true" 6218 6219 >Moss / OS</option> 6220 6221 <option 6222 value="43806284546090" 6223 data-available="true" 6224 6225 >Marigold / OS</option> 6226 6227 <option 6228 value="43806284578858" 6229 data-available="true" 6230 6231 >Chalk/Black / OS</option> 6232 6233 <option 6234 value="43806284611626" 6235 data-available="true" 6236 6237 >Chalk / OS</option> 6238 6239 <option 6240 value="43806284644394" 6241 data-available="true" 6242 6243 >Rose / OS</option> 6244 6245 </select> 6246 <label for="product-select" class="no-js">Options</label> 6247 6248 <div class="visually-hidden"> 6249 <label for="Quantity">Quantity</label> 6250 <input type="number" id="Quantity" name="quantity" value="1" min="1"> 6251 </div> 6252 6253 <div class="product__sticky"> 6254 <button 6255 type="submit" 6256 class="product__submit" 6257 name="add" 6258 data-add-to-cart 6259 6260 >
6261 <span data-add-to-cart-text> 6262 6263 6264Add to cart 6265 6266 </span> 6267 <i><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="14px" height="14px" viewBox="0 0 14 14" xml:space="preserve"> 6268 <g fill="#ffffff"> 6269 <polygon points="14,7 8.421,1.5 8.421,5.5 0,5.5 0,8.5 8.421,8.5 8.421,12.5 "/> 6270 </g> 6271</svg></i> 6272 </button> 6273 </div><div class="product-options"> 6274 6275 6276 <button 6277 type="button" 6278 class="product__submit klaviyo-bis-trigger hidden" 6279 data-bis 6280 > 6281 <span>Notify Me When Available</span> 6282 <i><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="14px" height="14px" viewBox="0 0 14 14" xml:space="preserve"> 6283 <g fill="#ffffff"> 6284 <polygon points="14,7 8.421,1.5 8.421,5.5 0,5.5 0,8.5 8.421,8.5 8.421,12.5 "/> 6285 </g> 6286</svg></i> 6287 </button> 6288 6289 <button 6290 type="submit" 6291 class="product__submit product__submit-default" 6292 name="add" 6293 data-add-to-cart 6294 6295 > 6296 <span data-add-to-cart-text> 6297 6298 6299Add to cart 6300 6301 </span> 6302 <i><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="14px" height="14px" viewBox="0 0 14 14" xml:space="preserve"> 6303 <g fill="#ffffff"> 6304 <polygon points="14,7 8.421,1.5 8.421,5.5 0,5.5 0,8.5 8.421,8.5 8.421,12.5 "/> 6305 </g> 6306</svg></i> 6307 </button> 6308 6309 6310 </div><input type="hidden" name="product-id" value="7735073144874" /></form> 6311 6312 <div class="product-perks"> 6313 6314 6315 6316 6317 6318 6319 6320 <div class="product-perks__item"> 6321 <div class="product-perks__icon product-perks__icon--shipping" aria-hidden="true"> 6322 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="20px" height="19px" viewBox="0 0 20 19" xml:space="preserve"> 6323 <g fill="#2d3142"> 6324 <polygon points="13.947,14.005 14.238,13.843 14.238,12.411 13.947,12.577 "/> 6325 <rect x="0.833" y="11.167" width="1.667" height="0.833"/> 6326 <rect x="0.833" y="7.833" width="1.667" height="0.833"/> 6327 <rect y="9.5" width="2.5" height="0.833"/> 6328 <polygon points="16.082,12.793 16.374,12.627 16.374,11.194 16.082,11.36 "/> 6329 <polygon points="17.083,10.796 16.798,10.958 16.798,12.389 17.083,12.226 "/> 6330 <polygon points="14.445,13.729 14.731,13.566 14.731,12.134 14.445,12.297 "/> 6331 <path d="M11.472,0.333L3.333,4.92v9.589l8.542,4.158L20,14.05V4.461L11.472,0.333z M11.469,2.238L17.4,4.899l-1.42,0.764l-5.852-2.667L11.469,2.238z M5,13.541V6.716l5.828,2.699l0.005,6.749L5,13.541z M11.679,7.981L5.963,5.347l1.7-0.973l5.682,2.7l0.004-0.001L11.679,7.981z M18.326,13.08l-5.833,3.321V9.433l1.667-0.9v2.384l2.5-1.407V7.188l1.667-0.9L18.326,13.08z"/> 6332 <polygon points="15.601,13.065 15.887,12.903 15.887,11.471 15.601,11.634 "/> 6333 <polygon points="15.122,13.338 15.409,13.175 15.409,11.746 15.409,11.744 15.122,11.907 "/> 6334 </g> 6335</svg> 6336 6337 </div> 6338 <a 6339 6340 href="/pages/shipping" 6341 target="_blank" 6342 rel="nofollow noopener" 6343 6344 class="product-perks__link" 6345 >Free US Shipping</a> 6346 </div> 6347 6348 6349 6350 6351 <div class="product-perks__item"> 6352 <div class="product-perks__icon" aria-hidden="true"> 6353 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="20px" height="20px" viewBox="0 0 20 20" xml:space="preserve"> 6354 <g fill="#2d3142"> 6355 <polygon points="8.958,10.718 7.124,8.978 5.833,10.268 8.958,13.3 14.167,7.99 12.876,6.7 "/> 6356 <path d="M19.894,8.175C19.965,7.97,20,7.755,20,7.538c-0.003-0.661-0.332-1.279-0.879-1.651c-1.794-1.243-1.557-0.931-2.232-2.953c-0.301-0.856-1.113-1.425-2.02-1.414h-0.006c-2.211,0.008-1.828,0.126-3.612-1.128c-0.752-0.522-1.748-0.522-2.5,0C6.952,1.655,7.343,1.528,5.137,1.52H5.131C4.224,1.509,3.412,2.078,3.112,2.934C2.436,4.961,2.667,4.648,0.881,5.888C0.333,6.26,0.004,6.878,0,7.54c0,0.216,0.036,0.43,0.106,0.635c0.694,2.025,0.694,1.635,
63560,3.65C0.036,12.029,0,12.244,0,12.46c0.004,0.662,0.333,1.281,0.881,1.653c1.788,1.242,1.557,0.928,2.233,2.953c0.299,0.856,1.111,1.425,2.018,1.414h0.006c2.211-0.008,1.828-0.127,3.612,1.128c0.751,0.523,1.749,0.523,2.5,0c1.784-1.253,1.4-1.135,3.612-1.128h0.006c0.907,0.01,1.719-0.559,2.02-1.414c0.676-2.023,0.437-1.71,2.233-2.953c0.546-0.373,0.875-0.991,0.879-1.652c0-0.216-0.035-0.431-0.106-0.636C19.2,9.8,19.2,10.189,19.894,8.175z M10,17.083c-3.912,0-7.083-3.171-7.083-7.083S6.088,2.917,10,2.917S17.083,6.088,17.083,10C17.082,13.911,13.912,17.082,10,17.083z"/> 6357 </g> 6358</svg> 6359 6360 </div> 6361 <a 6362 6363 href="/pages/warranty-repairs" 6364 target="_blank" 6365 rel="nofollow noopener" 6366 6367 class="product-perks__link">Lifetime Warranty</a> 6368 </div> 6369 6370 6371 6372 </div> 6373 6374 <div class="product-toggles"> 6375 6376 6377 <div class="product-toggle active-toggle"> 6378 <button 6379 type="button" 6380 class="product-toggle__title" 6381 data-toggle="> div" 6382 aria-controls="description" 6383 > 6384 <span class="product-toggle__title-text">Description</span> 6385 <i class="product-toggle__title-icon product-toggle__title-icon--plus"> 6386 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 6387 <g fill="#2d3142"> 6388 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 6389 </g> 6390</svg> 6391 </i> 6392 <i class="product-toggle__title-icon product-toggle__title-icon--minus"> 6393 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 6394 <g fill="#2d3142"> 6395 <rect x="0" y="8" width="18" height="2"/> 6396 </g> 6397</svg> 6398 </i> 6399 </button> 6400 6401 <div 6402 class="product-toggle__message" 6403 id="description" 6404 > 6405 <div> 6406 <p>Designed for domestic overhead bins, the 22.8â Carry-On Plus gives you just a little more space without slowing you down. The durable polycarbonate shell, water-smooth spinner wheels, and impact-ready corner bumpers keep your gear protected in transit. With built-in expansion, compression packing, and a zip-out interior for easy cleaning, it adapts to weekends away, work travel, and everything in between.</p> 6407 </div> 6408 </div> 6409 </div> 6410 6411 6412 6413 6414 <div class="product-toggle active-toggle"> 6415 <button 6416 type="button" 6417 class="product-toggle__title" 6418 data-toggle="> div" 6419 aria-controls="description" 6420 > 6421 <span class="product-toggle__title-text">Features</span> 6422 <i class="product-toggle__title-icon product-toggle__title-icon--plus"> 6423 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 6424 <g fill="#2d3142"> 6425 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 6426 </g> 6427</svg> 6428 </i> 6429 <i class="product-toggle__title-icon product-toggle__title-icon--minus"> 6430 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 6431 <g fill="#2d3142"> 6432 <rect x="0" y="8" width="18" height="2"/> 6433 </g> 6434</svg> 6435 </i> 6436 </button> 6437 6438 <div 6439 class="product-toggle__message" 6440 id="description" 6441 > 6442 <div> 6443 6444 <ul> 6445 6446 6447 <li>Impact resistant, lightweight, 100% virgin polycarbonate shell with matte texture for premium durability</li> 6448 6449 <li>Oversized 55 mm dual spinner wheels with sealed bearings for smooth, silent mobility. Tested against 16 km of roll cycles</li> 6450 6451 <li>PC corner bumpers for impact protection and long life passed extensive curb drop, case drop and impact tests to help guard against travel wear and tear</li> 6452 6453 <li>Zipper expansion provides 1.5â of extra capacity and adaptability</li> 6454 6455 <li>Compression board to reduce wrinkling and optimize space</li> 6456 6457 <li>100% recycled woven liner with antimicrobial coating keeps interiors fresher longer</li> 6458 6459 <li>Full zip-out liner for deep cleaning and easy access to components</li> 6460 6461 <li>Organized interior pockets and straps for clutter-free packing</li> 6462 6463 <li>TSA-approved combination lock</li> 6464 6465 <li>Recycled polyester antimicrobial laundry bag isolates dirty clothes</li> 6466 6467 <li>Genuine leather luggage tag included</li> 6468 6469 </ul> 6470 6471 </div> 6472 </div> 6473 </div> 6474 6475 </div> 6476 6477 <div class="product-additional-info"> 6478 6479 6480 6481 6482 6483 </div> 6484 </div> 6485 </div> 6486 6487 6488
6488<script type="application/json" data-product-json> 6489 {"id":7735073144874,"title":"FreeStyle Carry-On Plus","handle":"1067-freestyle-carry-on-plus","description":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eMore room. Same seamless movement.\u003c\/span\u003e\u003cbr\u003e\u003c\/p\u003e","published_at":"2025-11-18T15:50:44-08:00","created_at":"2025-11-04T12:42:04-08:00","vendor":"Timbuk2-Timbuk2","type":"Roller","tags":["AFFILIATE OFFER","category-Roller","collection-nevercheck","collections-allWomens","collections-bestsellers","collections-carryOn","collections-carryonluggage","collections-luggage","collections-travel","collections-weekend","filter_Suitcase","flag-BEST SELLER","FreeStyle","pre-order","site-Timbuk2","staffdiscount","subcategory-Luggage","top-rated","ugc-Travel1","V1 bundle component products","YGroup_ FreeStyle_Luggage"],"price":34500,"price_min":34500,"price_max":34500,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":43806284480554,"title":"Black \/ OS","option1":"Black","option2":"OS","option3":null,"sku":"1067-71-1310","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928049194,"product_id":7735073144874,"position":58,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:30-07:00","alt":"N1||1067-71-1310","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","variant_ids":[43806284480554]},"available":true,"name":"FreeStyle Carry-On Plus - Black \/ OS","public_title":"Black \/ OS","options":["Black","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574939","featured_media":{"alt":"N1||1067-71-1310","id":28425565798442,"position":63,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284513322,"title":"Moss \/ OS","option1":"Moss","option2":"OS","option3":null,"sku":"1067-71-1268","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928147498,"product_id":7735073144874,"position":62,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1268","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","variant_ids":[43806284513322]},"available":true,"name":"FreeStyle Carry-On Plus - Moss \/ OS","public_title":"Moss \/ OS","options":["Moss","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574953","featured_media":{"alt":"N1||1067-71-1268","id":28425565896746,"position":67,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284546090,"title":"Marigold \/ OS","option1":"Marigold","option2":"OS","option3":null,"sku":"1067-71-1312","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928016426,"product_id":7735073144874,"position":61,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1312","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","variant_ids":[43806284546090]},"available":true,"name":"FreeStyle Carry-On Plus - Marigold \/ OS","public_title":"Marigold \/ OS","options":["Marigold","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574960","featured_media":{"alt":"N1||1067-71-1312","id":28425565732906,"position":66,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284578858,"title":"Chalk\/Black \/ OS","option1":"Chalk\/Black","option2":"OS","option3":null,"sku":"1067-71-1315","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928114730,"product_id":7735073144874,"position":60,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1315","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","variant_ids":[43806284578858]},"available":true,"name":"FreeStyle Carry-On Plus - Chalk\/Black \/ OS","public_title":"Chalk\/Black \/ OS","options":["Chalk\/Black","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574977","featured_media":{"alt":"N1||1067-71-1315","id":28425565831210,"position":65,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284611626,"title":"Chalk \/ OS","option1":"Chalk","option2":"OS","option3":null,"sku":"1067-71-292","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928081962,"product_id":7735073144874,"position":59,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-292","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","variant_ids":[43806284611626]},"available":true,"name":"FreeStyle Carry-On Plus - Chalk \/ OS","public_title":"Chalk \/ OS","options":["Chalk","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364575929","featured_media":{"alt":"N1||1067-71-292","id":28425565863978,"position":64,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284644394,"title":"Rose \/ OS","option1":"Rose","option2":"OS","option3":null,"sku":"1067-71-1317","requires_shipping":true,"taxable":true,"featured_image":{"id":36700927983658,"product_id":7735073144874,"position":63,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1317","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829","variant_ids":[43806284644394]},"available":true,"name":"FreeStyle Carry-On Plus - Rose \/ OS","public_title":"Rose \/ OS","options":["Rose","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574984","featured_media":{"alt":"N1||1067-71-1317","id":28425565765674,"position":68,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346","\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454","\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987","\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"],"featured_image":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","options":["Color","Size"],"media":[{"alt":null,"id":27120682598442,"position":1,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.
6489timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","width":3648},{"alt":null,"id":27059049922602,"position":2,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665","width":3648},{"alt":null,"id":27059049988138,"position":3,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665","width":3648},{"alt":"N2||1067-71-1310","id":27070447517738,"position":4,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/2b4c1ed20ee945dd9feba7e1d647caac.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":15190,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/2b4c1ed20ee945dd9feba7e1d647caac\/2b4c1ed20ee945dd9feba7e1d647caac.SD-480p-1.5Mbps-62154965.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1310","id":27059050020906,"position":5,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665","width":3648},{"alt":"N4||1067-71-1310","id":27059050053674,"position":6,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665","width":3648},{"alt":null,"id":27059049955370,"position":7,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665","width":3648},{"alt":"N9||1067-71-1310","id":27109230444586,"position":8,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665","width":912},{"alt":"N15||1067-71-1310","id":27059050250282,"position":9,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665","width":3648},{"alt":null,"id":27120843096106,"position":10,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059051659306,"position":11,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935","width":3648},{"alt":null,"id":27059051724842,"position":12,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1315 1067-71-292","id":27070447550506,"position":13,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/b8d796d1b2014defb9311ad8f3b3
648917a8.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7740,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/b8d796d1b2014defb9311ad8f3b317a8\/b8d796d1b2014defb9311ad8f3b317a8.SD-480p-1.5Mbps-62154966.mp4?v=0","width":402}]},{"alt":"N4||1067-71-1315","id":27059051757610,"position":14,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935","width":3648},{"alt":"N6||1067-71-1315","id":27059051790378,"position":15,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935","width":3648},{"alt":null,"id":27059051692074,"position":16,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1315","id":27109230346282,"position":17,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-1315","id":27059051986986,"position":18,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935","width":3648},{"alt":null,"id":27120844374058,"position":19,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059055493162,"position":20,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935","width":3648},{"alt":null,"id":27059055558698,"position":21,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1312","id":27070447616042,"position":22,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/e57f
64896b6fae7043b3b1487498a3c431db.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/e57f6b6fae7043b3b1487498a3c431db\/e57f6b6fae7043b3b1487498a3c431db.SD-480p-1.5Mbps-62154968.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1312","id":27059055591466,"position":23,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1312","id":27059055624234,"position":24,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935","width":3648},{"alt":null,"id":27059055525930,"position":25,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1312","id":27109230280746,"position":26,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-1312","id":27059055722538,"position":27,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935","width":3648},{"alt":null,"id":27120843456554,"position":28,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059056869418,"position":29,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935","width":3648},{"alt":null,"id":27059056934954,"position":30,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935","width":3648},{"alt":"N3||1067-71-292","id":27059056967722,"position":31,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-292","id":27059057000490,"position":32,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935","width":3648},{"alt":null,"id":27059056902186,"position":33,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-292","id":27109230379050,"position":34,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-292","id":27059057131562,"position":35,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935","width":3648},{"alt":null,"id":27120845750314,"position":36,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059059195946,"position":37,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935","width":3648},{"alt":null,"id":27059059261482,"position":38,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1268","id":27070447583274,"position":39,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7490,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/da0a1d3f307b4ee1bd378d1b0ebdf8dc\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.SD-480p-1.5Mbps-62154967.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1268","id":27059059294250,"position":40,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1268","id":27059059327018,"position":41,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935","width":3648},{"alt":null,"id":27059059228714,"position":42,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1268","id":27109230411818,"position":43,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935","width":912}
6489,{"alt":"N16||1067-71-1268","id":27059059490858,"position":44,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935","width":3648},{"alt":null,"id":27120845979690,"position":45,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059061489706,"position":46,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935","width":3648},{"alt":null,"id":27059061555242,"position":47,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1317","id":27078139609130,"position":48,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/5aa98f20883448598e9f211a26e8f766.thumbnail.0000000000.jpg?v=1762825077"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/5aa98f20883448598e9f211a26e8f766\/5aa98f20883448598e9f211a26e8f766.SD-480p-1.5Mbps-62286893.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1317","id":27059061588010,"position":49,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1317","id":27059061620778,"position":50,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935","width":3648},{"alt":null,"id":27059061522474,"position":51,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1317","id":27109230313514,"position":52,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935","width":912}
6489,{"alt":"N16||1067-71-1317","id":27059064406058,"position":53,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935","width":3648},{"alt":"N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317","id":27075887005738,"position":54,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935","width":3648},{"alt":"N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317","id":27075887038506,"position":55,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935","width":3648},{"alt":null,"id":27126648307754,"position":56,"preview_image":{"aspect_ratio":0.824,"height":3321,"width":2736,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346"},"aspect_ratio":0.824,"height":3321,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346","width":2736},{"alt":"N6||1067-71-1310","id":27127029661738,"position":57,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1315 1067-71-292","id":27127029694506,"position":58,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1312","id":27127029727274,"position":59,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1268","id":27127029760042,"position":60,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454","width":3648},{"alt":"N6||1067-71-1317","id":27127029792810,"position":61,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453","width":3648},{"alt":null,"id":27134787846186,"position":62,"preview_image":{"aspect_ratio":0.824,"height":1270,"width":1046,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987"},"aspect_ratio":0.824,"height":1270,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987","width":1046}
6489,{"alt":"N1||1067-71-1310","id":28425565798442,"position":63,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","width":2400},{"alt":"N1||1067-71-292","id":28425565863978,"position":64,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1315","id":28425565831210,"position":65,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1312","id":28425565732906,"position":66,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1268","id":28425565896746,"position":67,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1317","id":28425565765674,"position":68,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829","width":2400}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eMore room. Same seamless movement.\u003c\/span\u003e\u003cbr\u003e\u003c\/p\u003e"} 6490 </script>
6490 6491 6492 6493 6494
6494<script> 6495 var badges = []; 6496 6497window.media = { 6498 6499["Black,OS"]: { 6500 badge: badges, 6501 media: [{ 6502 alt: { 6503 fallback: "FreeStyle Carry-On Plus - Black", 6504 value: "N2||1067-71-1310" 6505 }, 6506 type: "video", 6507 video: {"alt":"N2||1067-71-1310","id":27070447517738,"position":4,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/2b4c1ed20ee945dd9feba7e1d647caac.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":15190,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/2b4c1ed20ee945dd9feba7e1d647caac\/2b4c1ed20ee945dd9feba7e1d647caac.SD-480p-1.5Mbps-62154965.mp4?v=0","width":402}]} 6508 6509 }, 6510{ 6511 alt: { 6512 fallback: "FreeStyle Carry-On Plus - Black", 6513 value: "N3||1067-71-1310" 6514 }, 6515 type: "image", 6516 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter_small.png?v=1763323665" 6517 6518 }, 6519{ 6520 alt: { 6521 fallback: "FreeStyle Carry-On Plus - Black", 6522 value: "N4||1067-71-1310" 6523 }, 6524 type: "image", 6525 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side_small.png?v=1763323665" 6526 6527 }, 6528{ 6529 alt: { 6530 fallback: "FreeStyle Carry-On Plus - Black", 6531 value: "N9||1067-71-1310" 6532 }, 6533 type: "image", 6534 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9_small.jpg?v=1763323665" 6535 6536 }, 6537{ 6538 alt: { 6539 fallback: "FreeStyle Carry-On Plus - Black", 6540 value: "N15||1067-71-1310" 6541 }, 6542 type: "image", 6543 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949_small.jpg?v=1763323665" 6544 6545 }, 6546{ 6547 alt: { 6548 fallback: "FreeStyle Carry-On Plus - Black", 6549 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6550 }, 6551 type: "image", 6552 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6553 6554 }, 6555{ 6556 alt: { 6557 fallback: "FreeStyle Carry-On Plus - Black", 6558 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6559 }, 6560 type: "image", 6561 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6562 6563 }, 6564{ 6565 alt: { 6566 fallback: "FreeStyle Carry-On Plus - Black", 6567 value: "N6||1067-71-1310" 6568 }, 6569 type: "image", 6570 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd_small.png?v=1763432453" 6571 6572 }, 6573{ 6574 alt: { 6575 fallback: "FreeStyle Carry-On Plus - Black", 6576 value: "N1||1067-71-1310" 6577 }, 6578 type: "image", 6579 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f_small.png?v=1778782830" 6580 6581 }, 6582] 6583 }, 6584 6585["Moss,OS"]: { 6586 badge: badges, 6587 media: [{ 6588 alt: { 6589 fallback: "FreeStyle Carry-On Plus - Moss", 6590 value: "N2||1067-71-1268" 6591 }, 6592 type: "video", 6593 video: {"alt":"N2||1067-71-1268","id":27070447583274,"position":39,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7490,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/da0a1d3f307b4ee1bd378d1b0ebdf8dc\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.SD-480p-1.5Mbps-62154967.mp4?v=0","width":402}]} 6594 6595 }, 6596{ 6597 alt: { 6598 fallback: "FreeStyle Carry-On Plus - Moss", 6599 value: "N3||1067-71-1268" 6600 }, 6601 type: "image", 6602 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter_small.png?v=1763327935" 6603 6604 }, 6605{ 6606 alt: { 6607 fallback: "FreeStyle Carry-On Plus - Moss", 6608 value: "N4||1067-71-1268" 6609 }, 6610 type: "image", 6611 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side_small.png?v=1763327935" 6612 6613 }, 6614{ 6615 alt: { 6616 fallback: "FreeStyle Carry-On Plus - Moss", 6617 value: "N9||1067-71-1268" 6618 }, 6619 type: "image", 6620 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a_small.jpg?v=1763327935" 6621 6622 }, 6623{ 6624 alt: { 6625 fallback: "FreeStyle Carry-On Plus - Moss", 6626 value: "N16||1067-71-1268" 6627 }, 6628 type: "image", 6629 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0_small.jpg?v=1763327935" 6630 6631 }, 6632{ 6633 alt: { 6634 fallback: "FreeStyle Carry-On Plus - Moss", 6635 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6636 }, 6637 type: "image", 6638 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6639 6640 }, 6641{ 6642 alt: { 6643 fallback: "FreeStyle Carry-On Plus - Moss", 6644 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6645 }, 6646 type: "image", 6647 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6648 6649 }, 6650{ 6651 alt: { 6652 fallback: "FreeStyle Carry-On Plus - Moss", 6653 value: "N6||1067-71-1268" 6654 }, 6655 type: "image", 6656 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41_small.png?v=1763432454" 6657 6658 }, 6659{ 6660 alt: { 6661 fallback: "FreeStyle Carry-On Plus - Moss", 6662 value: "N1||1067-71-1268" 6663 }, 6664 type: "image", 6665 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7_small.png?v=1778782829" 6666 6667 }, 6668] 6669 }, 6670 6671["Marigold,OS"]: { 6672 badge: badges, 6673 media: [{ 6674 alt: { 6675 fallback: "FreeStyle Carry-On Plus - Marigold", 6676 value: "N2||1067-71-1312" 6677 }, 6678 type: "video", 6679 video: {"alt":"N2||1067-71-1312","id":27070447616042,"position":22,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/e57f
66796b6fae7043b3b1487498a3c431db.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/e57f6b6fae7043b3b1487498a3c431db\/e57f6b6fae7043b3b1487498a3c431db.SD-480p-1.5Mbps-62154968.mp4?v=0","width":402}]} 6680 6681 }, 6682{ 6683 alt: { 6684 fallback: "FreeStyle Carry-On Plus - Marigold", 6685 value: "N3||1067-71-1312" 6686 }, 6687 type: "image", 6688 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter_small.png?v=1763327935" 6689 6690 }, 6691{ 6692 alt: { 6693 fallback: "FreeStyle Carry-On Plus - Marigold", 6694 value: "N4||1067-71-1312" 6695 }, 6696 type: "image", 6697 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side_small.png?v=1763327935" 6698 6699 }, 6700{ 6701 alt: { 6702 fallback: "FreeStyle Carry-On Plus - Marigold", 6703 value: "N9||1067-71-1312" 6704 }, 6705 type: "image", 6706 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9_small.jpg?v=1763327935" 6707 6708 }, 6709{ 6710 alt: { 6711 fallback: "FreeStyle Carry-On Plus - Marigold", 6712 value: "N15||1067-71-1312" 6713 }, 6714 type: "image", 6715 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87_small.jpg?v=1763327935" 6716 6717 }, 6718{ 6719 alt: { 6720 fallback: "FreeStyle Carry-On Plus - Marigold", 6721 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6722 }, 6723 type: "image", 6724 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6725 6726 }, 6727{ 6728 alt: { 6729 fallback: "FreeStyle Carry-On Plus - Marigold", 6730 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6731 }, 6732 type: "image", 6733 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6734 6735 }, 6736{ 6737 alt: { 6738 fallback: "FreeStyle Carry-On Plus - Marigold", 6739 value: "N6||1067-71-1312" 6740 }, 6741 type: "image", 6742 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373_small.png?v=1763432453" 6743 6744 }, 6745{ 6746 alt: { 6747 fallback: "FreeStyle Carry-On Plus - Marigold", 6748 value: "N1||1067-71-1312" 6749 }, 6750 type: "image", 6751 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26_small.png?v=1778782829" 6752 6753 }, 6754] 6755 }, 6756 6757["Chalk/Black,OS"]: { 6758 badge: badges, 6759 media: [{ 6760 alt: { 6761 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6762 value: "N2||1067-71-1315 1067-71-292" 6763 }, 6764 type: "video", 6765 video: {"alt":"N2||1067-71-1315 1067-71-292","id":27070447550506,"position":13,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/b8d796d1b2014defb9311ad8f3b3
676517a8.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7740,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/b8d796d1b2014defb9311ad8f3b317a8\/b8d796d1b2014defb9311ad8f3b317a8.SD-480p-1.5Mbps-62154966.mp4?v=0","width":402}]} 6766 6767 }, 6768{ 6769 alt: { 6770 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6771 value: "N4||1067-71-1315" 6772 }, 6773 type: "image", 6774 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter_small.png?v=1763327935" 6775 6776 }, 6777{ 6778 alt: { 6779 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6780 value: "N6||1067-71-1315" 6781 }, 6782 type: "image", 6783 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side_small.png?v=1763327935" 6784 6785 }, 6786{ 6787 alt: { 6788 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6789 value: "N9||1067-71-1315" 6790 }, 6791 type: "image", 6792 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636_small.jpg?v=1763327935" 6793 6794 }, 6795{ 6796 alt: { 6797 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6798 value: "N15||1067-71-1315" 6799 }, 6800 type: "image", 6801 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1_small.jpg?v=1763327935" 6802 6803 }, 6804{ 6805 alt: { 6806 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6807 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6808 }, 6809 type: "image", 6810 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6811 6812 }, 6813{ 6814 alt: { 6815 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6816 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6817 }, 6818 type: "image", 6819 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6820 6821 }, 6822{ 6823 alt: { 6824 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6825 value: "N6||1067-71-1315 1067-71-292" 6826 }, 6827 type: "image", 6828 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c_small.png?v=1763432453" 6829 6830 }, 6831{ 6832 alt: { 6833 fallback: "FreeStyle Carry-On Plus - Chalk\/Black", 6834 value: "N1||1067-71-1315" 6835 }, 6836 type: "image", 6837 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black_small.png?v=1778782829" 6838 6839 }, 6840] 6841 }, 6842 6843["Chalk,OS"]: { 6844 badge: badges, 6845 media: [{ 6846 alt: { 6847 fallback: "FreeStyle Carry-On Plus - Chalk", 6848 value: "N2||1067-71-1315 1067-71-292" 6849 }, 6850 type: "video", 6851 video: {"alt":"N2||1067-71-1315 1067-71-292","id":27070447550506,"position":13,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/b8d796d1b2014defb9311ad8f3b3
685117a8.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7740,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/b8d796d1b2014defb9311ad8f3b317a8\/b8d796d1b2014defb9311ad8f3b317a8.SD-480p-1.5Mbps-62154966.mp4?v=0","width":402}]} 6852 6853 }, 6854{ 6855 alt: { 6856 fallback: "FreeStyle Carry-On Plus - Chalk", 6857 value: "N3||1067-71-292" 6858 }, 6859 type: "image", 6860 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter_small.png?v=1763327935" 6861 6862 }, 6863{ 6864 alt: { 6865 fallback: "FreeStyle Carry-On Plus - Chalk", 6866 value: "N4||1067-71-292" 6867 }, 6868 type: "image", 6869 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side_small.png?v=1763327935" 6870 6871 }, 6872{ 6873 alt: { 6874 fallback: "FreeStyle Carry-On Plus - Chalk", 6875 value: "N9||1067-71-292" 6876 }, 6877 type: "image", 6878 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d_small.jpg?v=1763327935" 6879 6880 }, 6881{ 6882 alt: { 6883 fallback: "FreeStyle Carry-On Plus - Chalk", 6884 value: "N15||1067-71-292" 6885 }, 6886 type: "image", 6887 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6_small.jpg?v=1763327935" 6888 6889 }, 6890{ 6891 alt: { 6892 fallback: "FreeStyle Carry-On Plus - Chalk", 6893 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6894 }, 6895 type: "image", 6896 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6897 6898 }, 6899{ 6900 alt: { 6901 fallback: "FreeStyle Carry-On Plus - Chalk", 6902 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6903 }, 6904 type: "image", 6905 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6906 6907 }, 6908{ 6909 alt: { 6910 fallback: "FreeStyle Carry-On Plus - Chalk", 6911 value: "N6||1067-71-1315 1067-71-292" 6912 }, 6913 type: "image", 6914 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c_small.png?v=1763432453" 6915 6916 }, 6917{ 6918 alt: { 6919 fallback: "FreeStyle Carry-On Plus - Chalk", 6920 value: "N1||1067-71-292" 6921 }, 6922 type: "image", 6923 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc_small.png?v=1778782829" 6924 6925 }, 6926] 6927 }, 6928 6929["Rose,OS"]: { 6930 badge: badges, 6931 media: [{ 6932 alt: { 6933 fallback: "FreeStyle Carry-On Plus - Rose", 6934 value: "N2||1067-71-1317" 6935 }, 6936 type: "video", 6937 video: {"alt":"N2||1067-71-1317","id":27078139609130,"position":48,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/5aa98f20883448598e9f211a26e8f766.thumbnail.0000000000.jpg?v=1762825077"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/5aa98f20883448598e9f211a26e8f766\/5aa98f20883448598e9f211a26e8f766.SD-480p-1.5Mbps-62286893.mp4?v=0","width":402}]} 6938 6939 }, 6940{ 6941 alt: { 6942 fallback: "FreeStyle Carry-On Plus - Rose", 6943 value: "N3||1067-71-1317" 6944 }, 6945 type: "image", 6946 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter_small.png?v=1763327935" 6947 6948 }, 6949{ 6950 alt: { 6951 fallback: "FreeStyle Carry-On Plus - Rose", 6952 value: "N4||1067-71-1317" 6953 }, 6954 type: "image", 6955 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side_small.png?v=1763327935" 6956 6957 }, 6958{ 6959 alt: { 6960 fallback: "FreeStyle Carry-On Plus - Rose", 6961 value: "N9||1067-71-1317" 6962 }, 6963 type: "image", 6964 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124_small.jpg?v=1763327935" 6965 6966 }, 6967{ 6968 alt: { 6969 fallback: "FreeStyle Carry-On Plus - Rose", 6970 value: "N16||1067-71-1317" 6971 }, 6972 type: "image", 6973 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d_small.jpg?v=1763327935" 6974 6975 }, 6976{ 6977 alt: { 6978 fallback: "FreeStyle Carry-On Plus - Rose", 6979 value: "N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6980 }, 6981 type: "image", 6982 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e_small.jpg?v=1763327935" 6983 6984 }, 6985{ 6986 alt: { 6987 fallback: "FreeStyle Carry-On Plus - Rose", 6988 value: "N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317" 6989 }, 6990 type: "image", 6991 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2_small.jpg?v=1763327935" 6992 6993 }, 6994{ 6995 alt: { 6996 fallback: "FreeStyle Carry-On Plus - Rose", 6997 value: "N6||1067-71-1317" 6998 }, 6999 type: "image", 7000 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724_small.png?v=1763432453" 7001 7002 }, 7003{ 7004 alt: { 7005 fallback: "FreeStyle Carry-On Plus - Rose", 7006 value: "N1||1067-71-1317" 7007 }, 7008 type: "image", 7009 url: "\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6_small.png?v=1778782829" 7010 7011 } 7012] 7013 } 7014 7015 }; 7016 7017 window.mediaActive = "Black,OS"; 7018 </script>
7018 7019 7020 7021 7022 7023 7024
7024<script> 7025 var colorImageError = function(image) { 7026 image.src = '//www.timbuk2.com/cdn/shop/t/1317/assets/swatch-no-image-transparent.png?v=67810184491937952951788907511'; 7027 }; 7028 </script>
7028 7029 7030
7030<script src="//www.timbuk2.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js"></script>
7030 7031
7031<script defer="defer"> 7032 var addToCart = 'Add to cart'; 7033 var preOrder = 'Pre-Order'; 7034 var soldOut = 'Sold Out'; 7035 var regularPrice = 'Regular price'; 7036 var variantPreOrderDates = {}; 7037 7038 document.querySelectorAll('.product-variant').forEach(function(el) { 7039 var variantId = el.getAttribute('data-variant-id'); 7040 var preOrderShipDate = el.getAttribute('data-pre-order-ship-date'); 7041 variantPreOrderDates[variantId] = preOrderShipDate; 7042 }); 7043 7044 var selectCallback = function(variant, selector) { 7045 if (variant) { 7046 var preOrderShipDate = variantPreOrderDates[variant.id]; 7047 7048 if (variant.available) { 7049 $('[data-add-to-cart]').removeAttr('disabled'); 7050 if (preOrderShipDate) { 7051 $('[data-add-to-cart-text]').text(preOrder); 7052 } else { 7053 $('[data-add-to-cart-text]').text(addToCart); 7054 } 7055 $('[data-bis]').addClass('hidden'); 7056 $('[data-add-to-cart]').removeClass('hidden'); 7057 } else { 7058 $('[data-add-to-cart]').attr('disabled', 'disabled'); 7059 $('[data-add-to-cart-text]').text(soldOut); 7060 $('[data-bis]').css('display', 'inline-flex').removeClass('hidden'); 7061 $('[data-add-to-cart]').addClass('hidden'); 7062 } 7063 if (variant.compare_at_price > variant.price) { 7064 7065 const salePriceHasChange = variant.price.toString().slice(variant.price.toString().length - 2) !== '00'; 7066 const priceHasChange = variant.compare_at_price.toString().slice(variant.compare_at_price.toString().length - 2) !== '00'; 7067 7068 $('[data-price-wrapper]').addClass('is-sale-price').html( 7069 '<span data-product-price>' + Shopify.formatMoney(variant.price, salePriceHasChange ? "${{amount}}" : "${{amount_no_decimals}}") + '</span>' + 7070 '<span class="visually-hidden" data-compare-text>' + regularPrice + '</span>' + 7071 '<s data-compare-price>' + Shopify.formatMoney(variant.compare_at_price, priceHasChange ? "${{amount}}" : "${{amount_no_decimals}}") + '</s>' 7072 ); 7073 } else { 7074 7075 const priceHasChange = variant.price.toString().slice(variant.price.toString().length - 2) !== '00'; 7076 7077 $('[data-price-wrapper]').removeClass('is-sale-price').html('<span data-product-price>' + Shopify.formatMoney(variant.price, priceHasChange ? "${{amount}}" : "${{amount_no_decimals}}") + '</span>'); 7078 } 7079 $('.selector-wrapper').each(function(i, e) { 7080 var wrapper = $(e); 7081 var id = wrapper.find('select').attr('id'); 7082 if (!wrapper.find('label').length) { 7083 wrapper.append('<label for="' + id + '" class="no-js">Option ' + (i + 1) + '</label>'); 7084 } 7085 }); 7086 $('[data-sku]').text(variant.sku); 7087 } else { 7088 $('[data-add-to-cart]').attr('disabled', 'disabled'); 7089 $('[data-add-to-cart-text]').text('Unavailable'); 7090 $('[data-bis]').addClass('hidden'); 7091 $('[data-add-to-cart]').removeClass('hidden'); 7092 $('[data-sku]').text(''); 7093 } 7094 7095 var event = new CustomEvent('product.variantUpdate', { 7096 detail: variant 7097 }); 7098 document.dispatchEvent(event); 7099 }; 7100 7101 document.addEventListener('DOMContentLoaded', function() { 7102 new Shopify.OptionSelectors('product-select', { 7103 product: {"id":7735073144874,"title":"FreeStyle Carry-On Plus","handle":"1067-freestyle-carry-on-plus","description":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eMore room. Same seamless movement.\u003c\/span\u003e\u003cbr\u003e\u003c\/p\u003e","published_at":"2025-11-18T15:50:44-08:00","created_at":"2025-11-04T12:42:04-08:00","vendor":"Timbuk2-Timbuk2","type":"Roller","tags":["AFFILIATE OFFER","category-Roller","collection-nevercheck","collections-allWomens","collections-bestsellers","collections-carryOn","collections-carryonluggage","collections-luggage","collections-travel","collections-weekend","filter_Suitcase","flag-BEST SELLER","FreeStyle","pre-order","site-Timbuk2","staffdiscount","subcategory-Luggage","top-rated","ugc-Travel1","V1 bundle component products","YGroup_ FreeStyle_Luggage"],"price":34500,"price_min":34500,"price_max":34500,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":43806284480554,"title":"Black \/ OS","option1":"Black","option2":"OS","option3":null,"sku":"1067-71-1310","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928049194,"product_id":7735073144874,"position":58,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:30-07:00","alt":"N1||1067-71-1310","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","variant_ids":[43806284480554]},"available":true,"name":"FreeStyle Carry-On Plus - Black \/ OS","public_title":"Black \/ OS","options":["Black","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574939","featured_media":{"alt":"N1||1067-71-1310","i
7103d":28425565798442,"position":63,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284513322,"title":"Moss \/ OS","option1":"Moss","option2":"OS","option3":null,"sku":"1067-71-1268","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928147498,"product_id":7735073144874,"position":62,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1268","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","variant_ids":[43806284513322]},"available":true,"name":"FreeStyle Carry-On Plus - Moss \/ OS","public_title":"Moss \/ OS","options":["Moss","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574953","featured_media":{"alt":"N1||1067-71-1268","id":28425565896746,"position":67,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284546090,"title":"Marigold \/ OS","option1":"Marigold","option2":"OS","option3":null,"sku":"1067-71-1312","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928016426,"product_id":7735073144874,"position":61,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1312","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","variant_ids":[43806284546090]},"available":true,"name":"FreeStyle Carry-On Plus - Marigold \/ OS","public_title":"Marigold \/ OS","options":["Marigold","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574960","featured_media":{"alt":"N1||1067-71-1312","id":28425565732906,"position":66,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284578858,"title":"Chalk\/Black \/ OS","option1":"Chalk\/Black","option2":"OS","option3":null,"sku":"1067-71-1315","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928114730,"product_id":7735073144874,"position":60,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1315","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","variant_ids":[43806284578858]},"available":true,"name":"FreeStyle Carry-On Plus - Chalk\/Black \/ OS","public_title":"Chalk\/Black \/ OS","options":["Chalk\/Black","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574977","featured_media":{"alt":"N1||1067-71-1315","id":28425565831210,"position":65,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284611626,"title":"Chalk \/ OS","option1":"Chalk","option2":"OS","option3":null,"sku":"1067-71-292","requires_shipping":true,"taxable":true,"featured_image":{"id":36700928081962,"product_id":7735073144874,"position":59,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-292","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","variant_ids":[43806284611626]},"available":true,"name":"FreeStyle Carry-On Plus - Chalk \/ OS","public_title":"Chalk \/ OS","options":["Chalk","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364575929","featured_media":{"alt":"N1||1067-71-292","id":28425565863978,"position":64,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":43806284644394,"title":"Rose \/ OS","option1":"Rose","option2":"OS","option3":null,"sku":"1067-71-1317","requires_shipping":true,"taxable":true,"featured_image":{"id":36700927983658,"product_id":7735073144874,"position":63,"created_at":"2026-05-14T11:20:27-07:00","updated_at":"2026-05-14T11:20:29-07:00","alt":"N1||1067-71-1317","width":2400,"height":2913,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829","variant_ids":[43806284644394]},"available":true,"name":"FreeStyle Carry-On Plus - Rose \/ OS","public_title":"Rose \/ OS","options":["Rose","OS"],"price":34500,"weight":3950,"compare_at_price":null,"inventory_quantity":25,"inventory_management":"shopify","inventory_policy":"deny","barcode":"631364574984","featured_media":{"alt":"N1||1067-71-1317","id":28425565765674,"position":68,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935","\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346","\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454","\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453","\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987","\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"],"featured_image":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","options":["Color","Size"],"media":[{"alt":null,"id":27120682598442,"position":1,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763323665","width":3648},{"alt":null,"id":27059049922602,"position":2,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.png?v=1763323665","width":3648},{"alt":null,"id":27059049988138,"position":3,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-front.png?v=1763323665","width":3648}
7103,{"alt":"N2||1067-71-1310","id":27070447517738,"position":4,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/2b4c1ed20ee945dd9feba7e1d647caac.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":15190,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/2b4c1ed20ee945dd9feba7e1d647caac\/2b4c1ed20ee945dd9feba7e1d647caac.SD-480p-1.5Mbps-62154965.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1310","id":27059050020906,"position":5,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-quarter.png?v=1763323665","width":3648},{"alt":"N4||1067-71-1310","id":27059050053674,"position":6,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-side.png?v=1763323665","width":3648},{"alt":null,"id":27059049955370,"position":7,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-back.png?v=1763323665","width":3648},{"alt":"N9||1067-71-1310","id":27109230444586,"position":8,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_06-black_fc8ea777-ffab-44d4-bfaa-2d49a86359f9.jpg?v=1763323665","width":912},{"alt":"N15||1067-71-1310","id":27059050250282,"position":9,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-black-1067-02_5412bab6-d06d-4d71-93ee-7b63c624d949.jpg?v=1763323665","width":3648},{"alt":null,"id":27120843096106,"position":10,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059051659306,"position":11,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-00.png?v=1763327935","width":3648},{"alt":null,"id":27059051724842,"position":12,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1315 1067-71-292","id":27070447550506,"position":13,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/b8d796d1b2014defb9311ad8f3b3
710317a8.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7740,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/b8d796d1b2014defb9311ad8f3b317a8\/b8d796d1b2014defb9311ad8f3b317a8.SD-480p-1.5Mbps-62154966.mp4?v=0","width":402}]},{"alt":"N4||1067-71-1315","id":27059051757610,"position":14,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-quarter.png?v=1763327935","width":3648},{"alt":"N6||1067-71-1315","id":27059051790378,"position":15,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-side.png?v=1763327935","width":3648},{"alt":null,"id":27059051692074,"position":16,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-blk-1067-71-1315-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1315","id":27109230346282,"position":17,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_03-chalk-black_635444ca-b75b-4540-b55a-863dfa73d636.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-1315","id":27059051986986,"position":18,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-black-1067-02_102dcb05-787a-4514-b646-cb6c3d7e94b1.jpg?v=1763327935","width":3648},{"alt":null,"id":27120844374058,"position":19,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059055493162,"position":20,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-00.png?v=1763327935","width":3648},{"alt":null,"id":27059055558698,"position":21,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1312","id":27070447616042,"position":22,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/e57f
71036b6fae7043b3b1487498a3c431db.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/e57f6b6fae7043b3b1487498a3c431db\/e57f6b6fae7043b3b1487498a3c431db.SD-480p-1.5Mbps-62154968.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1312","id":27059055591466,"position":23,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1312","id":27059055624234,"position":24,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-side.png?v=1763327935","width":3648},{"alt":null,"id":27059055525930,"position":25,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1312-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1312","id":27109230280746,"position":26,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_01-marigold_c8523c69-b28d-467e-982e-91512ea63fd9.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-1312","id":27059055722538,"position":27,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-marigold-1067-02_f3036ae9-6841-434a-a4bd-c8468a235d87.jpg?v=1763327935","width":3648},{"alt":null,"id":27120843456554,"position":28,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059056869418,"position":29,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-00.png?v=1763327935","width":3648},{"alt":null,"id":27059056934954,"position":30,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-front.png?v=1763327935","width":3648},{"alt":"N3||1067-71-292","id":27059056967722,"position":31,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-292","id":27059057000490,"position":32,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-side.png?v=1763327935","width":3648},{"alt":null,"id":27059056902186,"position":33,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-chalk-chalk-1067-71-292-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-292","id":27109230379050,"position":34,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_04-chalk_68470723-d89e-4547-9b22-6995e0c38e0d.jpg?v=1763327935","width":912},{"alt":"N15||1067-71-292","id":27059057131562,"position":35,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-chalk-chalk-1067-01_45270691-1442-49e9-af8c-5c64327b01d6.jpg?v=1763327935","width":3648},{"alt":null,"id":27120845750314,"position":36,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059059195946,"position":37,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-00.png?v=1763327935","width":3648},{"alt":null,"id":27059059261482,"position":38,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1268","id":27070447583274,"position":39,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.thumbnail.0000000000.jpg?v=1762728371"},"aspect_ratio":0.838,"duration":7490,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/da0a1d3f307b4ee1bd378d1b0ebdf8dc\/da0a1d3f307b4ee1bd378d1b0ebdf8dc.SD-480p-1.5Mbps-62154967.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1268","id":27059059294250,"position":40,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1268","id":27059059327018,"position":41,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-side.png?v=1763327935","width":3648},{"alt":null,"id":27059059228714,"position":42,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-moss-1067-71-1268-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1268","id":27109230411818,"position":43,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_05-moss_bd141d71-14d9-40e8-8d6e-c88c8ce7371a.jpg?v=1763327935","width":912}
7103,{"alt":"N16||1067-71-1268","id":27059059490858,"position":44,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-moss-1067-02_c517823a-e9bc-4e15-86b2-67f66f89c4c0.jpg?v=1763327935","width":3648},{"alt":null,"id":27120845979690,"position":45,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.jpg?v=1763327935","width":3648},{"alt":null,"id":27059061489706,"position":46,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-00.png?v=1763327935","width":3648},{"alt":null,"id":27059061555242,"position":47,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-front.png?v=1763327935","width":3648},{"alt":"N2||1067-71-1317","id":27078139609130,"position":48,"preview_image":{"aspect_ratio":0.838,"height":480,"width":402,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/preview_images\/5aa98f20883448598e9f211a26e8f766.thumbnail.0000000000.jpg?v=1762825077"},"aspect_ratio":0.838,"duration":10670,"media_type":"video","sources":[{"format":"mp4","height":480,"mime_type":"video\/mp4","url":"\/\/www.timbuk2.com\/cdn\/shop\/videos\/c\/vp\/5aa98f20883448598e9f211a26e8f766\/5aa98f20883448598e9f211a26e8f766.SD-480p-1.5Mbps-62286893.mp4?v=0","width":402}]},{"alt":"N3||1067-71-1317","id":27059061588010,"position":49,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-quarter.png?v=1763327935","width":3648},{"alt":"N4||1067-71-1317","id":27059061620778,"position":50,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-side.png?v=1763327935","width":3648},{"alt":null,"id":27059061522474,"position":51,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-rose-1067-71-1317-back.png?v=1763327935","width":3648},{"alt":"N9||1067-71-1317","id":27109230313514,"position":52,"preview_image":{"aspect_ratio":0.824,"height":1107,"width":912,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935"},"aspect_ratio":0.824,"height":1107,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/t2_luggagefeatures_02-rose_8663f4ba-1d58-4f98-83ff-89a3f50f1124.jpg?v=1763327935","width":912}
7103,{"alt":"N16||1067-71-1317","id":27059064406058,"position":53,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-rose-1067-02_ddeff31f-617c-4d71-bec1-1ab13161cb9d.jpg?v=1763327935","width":3648},{"alt":"N7||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317","id":27075887005738,"position":54,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-01_20b23c83-45e8-4a3e-985c-54a53a04b26e.jpg?v=1763327935","width":3648},{"alt":"N8||1067-71-1310 1067-71-1268 1067-71-1312 1067-71-1315 1067-71-292 1067-71-1317","id":27075887038506,"position":55,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/timbuk2-FreeStyle-Luggage-_all-sizes_-interior-1067-02_83fff4ec-0077-4740-aa9e-de5bbf797bc2.jpg?v=1763327935","width":3648},{"alt":null,"id":27126648307754,"position":56,"preview_image":{"aspect_ratio":0.824,"height":3321,"width":2736,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346"},"aspect_ratio":0.824,"height":3321,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Carry-OnPlus_b2cdc681-561d-4496-a6e8-998eadfe2146.jpg?v=1763420346","width":2736},{"alt":"N6||1067-71-1310","id":27127029661738,"position":57,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/BLACK_83b3a066-d33c-45b0-8bea-aa9ef0dd77bd.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1315 1067-71-292","id":27127029694506,"position":58,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/CHALK_b48d7c87-986b-4b89-8e66-98413a7d9e0c.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1312","id":27127029727274,"position":59,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MARIGOLD_1ab47ae1-6f01-49e5-9b4d-df6e05887373.png?v=1763432453","width":3648},{"alt":"N6||1067-71-1268","id":27127029760042,"position":60,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/MOSS_0813de8b-cf39-4169-af5a-bc0c5dba4b41.png?v=1763432454","width":3648},{"alt":"N6||1067-71-1317","id":27127029792810,"position":61,"preview_image":{"aspect_ratio":0.824,"height":4428,"width":3648,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453"},"aspect_ratio":0.824,"height":4428,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/ROSE_7b391140-9dec-48b2-82f4-1d36c5e3a724.png?v=1763432453","width":3648},{"alt":null,"id":27134787846186,"position":62,"preview_image":{"aspect_ratio":0.824,"height":1270,"width":1046,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987"},"aspect_ratio":0.824,"height":1270,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/RESIZED-timbuk2-FreeStyle-Roller-22-Domestic-Check-in-marigold-1067-71-1310.png?v=1763576987","width":1046}
7103,{"alt":"N1||1067-71-1310","id":28425565798442,"position":63,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Black_486cff74-3c1b-45ea-a820-7318ccb02a1f.png?v=1778782830","width":2400},{"alt":"N1||1067-71-292","id":28425565863978,"position":64,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_6489a637-6bdc-4633-acd2-521e0a3c2edc.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1315","id":28425565831210,"position":65,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Chalk_Black.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1312","id":28425565732906,"position":66,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Marigold_a1a3be6f-2eff-418a-859d-2719bb8b0e26.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1268","id":28425565896746,"position":67,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Moss_8357134c-f853-4206-94e0-4fac0b3096a7.png?v=1778782829","width":2400},{"alt":"N1||1067-71-1317","id":28425565765674,"position":68,"preview_image":{"aspect_ratio":0.824,"height":2913,"width":2400,"src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829"},"aspect_ratio":0.824,"height":2913,"media_type":"image","src":"\/\/www.timbuk2.com\/cdn\/shop\/files\/Rose_93a68200-63a6-4f6f-bb33-9071a3795ad6.png?v=1778782829","width":2400}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eMore room. Same seamless movement.\u003c\/span\u003e\u003cbr\u003e\u003c\/p\u003e"}, 7104 onVariantSelected: selectCallback 7105 }); 7106 7107 window.addEventListener('popstate', function() { 7108 history.back(); 7109 }, false); 7110 }); 7111 7112 // The Sticky Add to Cart button is only meant for mobile 7113 if(window.innerWidth < 768) { 7114 7115 // Getting Default Add to Cart and Stick Add to cart buttons 7116 const defaultAddToCartButton = document.querySelector('.product__submit-default'); 7117 const stickyAddToCartContainer = document.querySelector('.product__sticky'); 7118 7119 // Using IntersectionObserver to determine whether Default Add to Cart button is in View or not 7120 const observer = new window.IntersectionObserver(([entry]) => { 7121 if (entry.isIntersecting) { 7122 stickyAddToCartContainer.style.display="none"; 7123 stickyAddToCartContainer.classList.add("product__sticky-removeAnimation"); 7124 document.body.classList.remove("sticky-add-to-cart-button-visible"); 7125 return 7126 } 7127 stickyAddToCartContainer.style.display="block"; 7128 stickyAddToCartContainer.classList.remove("product__sticky-removeAnimation"); 7129 document.body.classList.add("sticky-add-to-cart-button-visible"); 7130 }, { 7131 root: null, 7132 threshold: 0, 7133 }); 7134 7135 observer.observe(defaultAddToCartButton); 7136 7137 } 7138 7139 </script>
7139 7140</section> 7141 7142 7143 7144 <section class="product-story-double"> 7145 <div class="product-story-double__wrap"> 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 <figure class="product-story-double__list odd"> 7158 <div class="product-story-double__item product-story-double__item--image"> 7159 7160 <div class="product-story-double__media"> 7161 <picture class="product-story-double__picture"> 7162 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_906 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_1812 2x" media="(min-width: 1920px)"> 7163 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_739 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_1478 2x" media="(min-width: 1600px)"> 7164 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_639 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_1278 2x" media="(min-width: 1400px)"> 7165 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_539 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_1078 2x" media="(min-width: 1200px)"> 7166 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_484 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_968 2x" media="(min-width: 1024px)"> 7167 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_356 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_712 2x" media="(min-width: 768px)"> 7168 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_640 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_1280 2x" media="(min-width: 640px)"> 7169 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_414 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_828 2x" media="(min-width: 414px)"> 7170 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_375 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_750 2x" media="(min-width: 375px)"> 7171 <source data-srcset="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_320 1x, https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_640 2x"> 7172 <img 7173 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7174 data-src="https://cld.accentuate.io/7735073144874/1779469461484/50-50-Comparison-Blocks-for-FreeStyle-Luggage-Dims-(1).png?v=1779469461484&options=w_320" 7175 alt="" 7176 height="304" 7177 width="320" 7178 class="lazy" 7179 > 7180 </picture> 7181 </div> 7182 7183 </div> 7184 7185 <div class="product-story-double__item product-story-double__item--info">
7186 <figcaption class="product-story-double__info"> 7187 <a 7188 href="https://timbuk2.com/products/1067-freestyle-carry-on" 7189 class="product-story-double__link" 7190 > 7191 <div class="product-story-double__info-inner"> 7192 7193 <h3 class="product-story-double__title"> 7194 <span>Choose the right size</span> 7195 </h3> 7196 7197 7198 7199 <p class="product-story-double__message"> 7200 <span>Two carry-on sizes, designed for different travel needs. <br> 7201Carry-On is built for shorter trips and lighter packing.<br> 7202Carry-On Plus gives you extra room when you need more space.</span> 7203 </p> 7204 7205 7206 7207 <span class="product-story-double__label"> 7208 <span>Shop FreeStyle Carry-On</span> 7209 <i><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="14px" height="14px" viewBox="0 0 14 14" xml:space="preserve"> 7210 <g fill="#ffffff"> 7211 <polygon points="14,7 8.421,1.5 8.421,5.5 0,5.5 0,8.5 8.421,8.5 8.421,12.5 "/> 7212 </g> 7213</svg></i> 7214 </span> 7215 7216 </div> 7217 </a> 7218 </figcaption> 7219 </div> 7220 </figure> 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 <figure class="product-story-double__list even"> 7233 <div class="product-story-double__item product-story-double__item--image"> 7234 7235 <div class="product-story-double__media"> 7236 <picture class="product-story-double__picture"> 7237 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_906 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_1812 2x" media="(min-width: 1920px)"> 7238 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_739 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_1478 2x" media="(min-width: 1600px)"> 7239 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_639 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_1278 2x" media="(min-width: 1400px)"> 7240 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_539 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_1078 2x" media="(min-width: 1200px)"> 7241 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_484 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_968 2x" media="(min-width: 1024px)"> 7242 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_356 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_712 2x" media="(min-width: 768px)"> 7243 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_640 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_1280 2x" media="(min-width: 640px)"> 7244 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_414 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_828 2x" media="(min-width: 414px)"> 7245 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_375 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_750 2x" media="(min-width: 375px)"> 7246 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_320 1x, https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_640 2x"> 7247 <img 7248 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7249 data-src="https://cld.accentuate.io/7735073144874/1762892020863/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-04.jpg?v=1763412479114&options=w_320" 7250 alt="" 7251 height="304" 7252 width="320" 7253 class="lazy" 7254 > 7255 </picture> 7256 </div> 7257 7258 </div> 7259 7260 <div class="product-story-double__item product-story-double__item--info">
7261 <figcaption class="product-story-double__info"> 7262 <a 7263 7264 class="product-story-double__link" 7265 > 7266 <div class="product-story-double__info-inner"> 7267 7268 <h3 class="product-story-double__title"> 7269 <span>TSA Approved Lock</span> 7270 </h3> 7271 7272 7273 7274 <p class="product-story-double__message"> 7275 <span>Travel-ready and airport-approved.<br>Keeps your belongings secure without slowing you down.<br>Built-in peace of mind for every journey.</span> 7276 </p> 7277 7278 7279 7280 </div> 7281 </a> 7282 </figcaption> 7283 </div> 7284 </figure> 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 <figure class="product-story-double__list odd"> 7297 <div class="product-story-double__item product-story-double__item--image"> 7298 7299 <div class="product-story-double__media"> 7300 <picture class="product-story-double__picture"> 7301 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_906 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_1812 2x" media="(min-width: 1920px)"> 7302 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_739 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_1478 2x" media="(min-width: 1600px)"> 7303 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_639 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_1278 2x" media="(min-width: 1400px)"> 7304 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_539 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_1078 2x" media="(min-width: 1200px)"> 7305 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_484 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_968 2x" media="(min-width: 1024px)"> 7306 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_356 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_712 2x" media="(min-width: 768px)"> 7307 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_640 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_1280 2x" media="(min-width: 640px)"> 7308 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_414 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_828 2x" media="(min-width: 414px)"> 7309 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_375 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_750 2x" media="(min-width: 375px)"> 7310 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_320 1x, https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_640 2x"> 7311 <img 7312 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7313 data-src="https://cld.accentuate.io/7735073144874/1762892022363/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-03.jpg?v=1762892022363&options=w_320" 7314 alt="" 7315 height="304" 7316 width="320" 7317 class="lazy" 7318 > 7319 </picture> 7320 </div> 7321 7322 </div> 7323 7324 <div class="product-story-double__item product-story-double__item--info">
7325 <figcaption class="product-story-double__info"> 7326 <a 7327 7328 class="product-story-double__link" 7329 > 7330 <div class="product-story-double__info-inner"> 7331 7332 <h3 class="product-story-double__title"> 7333 <span>Ergonomic Handle</span> 7334 </h3> 7335 7336 7337 7338 <p class="product-story-double__message"> 7339 <span>Designed for comfort on the move.<br>Contoured grip reduces strain, even when fully packed.<br>Moves with you, not against you.</span> 7340 </p> 7341 7342 7343 7344 </div> 7345 </a> 7346 </figcaption> 7347 </div> 7348 </figure> 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 <figure class="product-story-double__list even"> 7361 <div class="product-story-double__item product-story-double__item--image"> 7362 7363 <div class="product-story-double__media"> 7364 <picture class="product-story-double__picture"> 7365 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_906 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_1812 2x" media="(min-width: 1920px)"> 7366 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_739 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_1478 2x" media="(min-width: 1600px)"> 7367 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_639 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_1278 2x" media="(min-width: 1400px)"> 7368 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_539 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_1078 2x" media="(min-width: 1200px)"> 7369 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_484 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_968 2x" media="(min-width: 1024px)"> 7370 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_356 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_712 2x" media="(min-width: 768px)"> 7371 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_640 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_1280 2x" media="(min-width: 640px)"> 7372 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_414 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_828 2x" media="(min-width: 414px)"> 7373 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_375 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_750 2x" media="(min-width: 375px)"> 7374 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_320 1x, https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_640 2x"> 7375 <img 7376 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7377 data-src="https://cld.accentuate.io/7735073144874/1762892023146/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-02.jpg?v=1762892023146&options=w_320" 7378 alt="" 7379 height="304" 7380 width="320" 7381 class="lazy" 7382 > 7383 </picture> 7384 </div> 7385 7386 </div> 7387 7388 <div class="product-story-double__item product-story-double__item--info">
7389 <figcaption class="product-story-double__info"> 7390 <a 7391 7392 class="product-story-double__link" 7393 > 7394 <div class="product-story-double__info-inner"> 7395 7396 <h3 class="product-story-double__title"> 7397 <span>Expandable Zipper</span> 7398 </h3> 7399 7400 7401 7402 <p class="product-story-double__message"> 7403 <span>Adaptable capacity when you need it.<br>Clean, zip expansion adds space without bulk.<br>Because trips donât always go as planned, and thatâs the point.</span> 7404 </p> 7405 7406 7407 7408 </div> 7409 </a> 7410 </figcaption> 7411 </div> 7412 </figure> 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 <figure class="product-story-double__list odd"> 7425 <div class="product-story-double__item product-story-double__item--image"> 7426 7427 <div class="product-story-double__media"> 7428 <picture class="product-story-double__picture"> 7429 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_906 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_1812 2x" media="(min-width: 1920px)"> 7430 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_739 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_1478 2x" media="(min-width: 1600px)"> 7431 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_639 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_1278 2x" media="(min-width: 1400px)"> 7432 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_539 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_1078 2x" media="(min-width: 1200px)"> 7433 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_484 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_968 2x" media="(min-width: 1024px)"> 7434 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_356 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_712 2x" media="(min-width: 768px)"> 7435 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_640 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_1280 2x" media="(min-width: 640px)"> 7436 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_414 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_828 2x" media="(min-width: 414px)"> 7437 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_375 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_750 2x" media="(min-width: 375px)"> 7438 <source data-srcset="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_320 1x, https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_640 2x"> 7439 <img 7440 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7441 data-src="https://cld.accentuate.io/7735073144874/1762892023982/timbuk2-FreeStyle-Luggage-(all-sizes)-marigold-1067-01.jpg?v=1762892023982&options=w_320" 7442 alt="" 7443 height="304" 7444 width="320" 7445 class="lazy" 7446 > 7447 </picture> 7448 </div> 7449 7450 </div> 7451 7452 <div class="product-story-double__item product-story-double__item--info">
7453 <figcaption class="product-story-double__info"> 7454 <a 7455 7456 class="product-story-double__link" 7457 > 7458 <div class="product-story-double__info-inner"> 7459 7460 <h3 class="product-story-double__title"> 7461 <span>High Performance Wheels</span> 7462 </h3> 7463 7464 7465 7466 <p class="product-story-double__message"> 7467 <span>55mm dual spinner wheels for a smooth, silent roll. Sealed bearings deliver long-lasting performance.<br>Stable and effortless across sidewalks, terminals, and everything in between.</span> 7468 </p> 7469 7470 7471 7472 </div> 7473 </a> 7474 </figcaption> 7475 </div> 7476 </figure> 7477 7478 </div> 7479 </section> 7480 7481 7482<div id="shopify-section-product-dimensions" class="shopify-section"> 7483 7484 7485 7486 7487 7488 7489 <section 7490 class="product-dimensions" 7491 data-product-dimensions 7492 v-if="!loading && isValid(widthTopCM) && isValid(widthBottomCM) && isValid(heightCM) && isValid(depthCM)" 7493 v-cloak 7494 > 7495 <div class="product-dimensions__wrap"> 7496 7497 7498 7499 7500 7501 7502 <header class="section-heading"> 7503 <div class="section-heading__column section-heading__column--content"> 7504 7505 <h2><span>Dimensions</span></h2> 7506 7507 7508 </div> 7509 7510 7511 <div class="section-heading__column section-heading__column--cta"> 7512 7513 </div> 7514 7515 </header> 7516 7517 7518 7519 <div class="product-dimensions__container"> 7520 <div class="product-dimensions__images"> 7521 <div class="product-dimensions__image product-dimensions__image--front"> 7522 <div class="product-dimensions__measurements product-dimensions__measurements--front"> 7523 <div class="product-dimensions__front product-dimensions__front--top" v-if="isValid(widthTopCM)"> 7524 <div class="product-dimensions__text-wrapper product-dimensions__text-wrapper--top"> 7525 <div class="product-dimensions__front-line"></div> 7526 <div class="product-dimensions__text-holder"> 7527 <div class="product-dimensions__text">${ widthTopIN } in</div> 7528 <div class="product-dimensions__text product-dimensions__text--cm">${ widthTopCM } cm</div> 7529 </div> 7530 </div> 7531 </div> 7532 7533 <img 7534 src="//www.timbuk2.com/cdn/shop/t/1317/assets/roller-front.svg?v=53789177821113166751788907511" 7535 class="product-dimensions__front-image" 7536 alt="roller front" 7537 /> 7538 7539 <div class="product-dimensions__front product-dimensions__front--bottom" v-if="isValid(widthBottomCM)"> 7540 <div class="product-dimensions__text-wrapper product-dimensions__text-wrapper--bottom"> 7541 <div class="product-dimensions__front-line"></div> 7542 <div class="product-dimensions__text-holder"> 7543 <div class="product-dimensions__text">${ widthBottomIN } in</div> 7544 <div class="product-dimensions__text product-dimensions__text--cm">${ widthBottomCM } cm</div> 7545 </div> 7546 </div> 7547 </div> 7548 </div> 7549 </div> 7550 7551 <div class="product-dimensions__image product-dimensions__image--side"> 7552 <div class="product-dimensions__measurements product-dimensions__measurements--side"> 7553 <div class="product-dimensions__side product-dimensions__side--combo"> 7554 <img 7555 src="//www.timbuk2.com/cdn/shop/t/1317/assets/roller-side.svg?v=144376423165305616931788907511" 7556 class="product-dimensions__side-image" 7557 alt="roller side" 7558 /> 7559 7560 <div class="product-dimensions__side product-dimensions__side--depth" v-if="isValid(depthCM)"> 7561 <div class="product-dimensions__text-wrapper product-dimensions__text-wrapper--depth"> 7562 <div class="product-dimensions__side-line product-dimensions__side-line--depth"></div> 7563 <div class="product-dimensions__text-holder"> 7564 <div class="product-dimensions__text">${ depthIN }
7564 in</div> 7565 <div class="product-dimensions__text product-dimensions__text--cm">${ depthCM } cm</div> 7566 </div> 7567 </div> 7568 </div> 7569 </div> 7570 7571 <div class="product-dimensions__side product-dimensions__side--height" v-if="isValid(heightCM)"> 7572 <div class="product-dimensions__text-wrapper product-dimensions__text-wrapper--height"> 7573 <div class="product-dimensions__side-line product-dimensions__side-line--height"></div> 7574 <div class="product-dimensions__text-holder"> 7575 <div class="product-dimensions__text">${ heightIN } in</div> 7576 <div class="product-dimensions__text product-dimensions__text--cm">${ heightCM } cm</div> 7577 </div> 7578 </div> 7579 </div> 7580 </div> 7581 </div> 7582 </div> 7583 7584 <ul class="product-dimensions__list"> 7585 <li class="product-dimensions__item"> 7586 <div class="product-dimensions__item-type">Product Style</div> 7587 <div class="product-dimensions__item-value">Roller</div> 7588 </li> 7589 7590 <li class="product-dimensions__item" v-if="isValid(volume)"> 7591 <div class="product-dimensions__item-type">Total Volume (liters)</div> 7592 <div class="product-dimensions__item-value">${ volume } L</div> 7593 </li> 7594 7595 <li class="product-dimensions__item" v-if="isValid(weight)"> 7596 <div class="product-dimensions__item-type">Weight (lbs)</div> 7597 <div class="product-dimensions__item-value">${ weight } lb</div> 7598 </li> 7599 7600 <li class="product-dimensions__item" v-if="isValid(maxScreenSize)"> 7601 <div class="product-dimensions__item-type">Avg. Laptop Fit (in)</div> 7602 <div class="product-dimensions__item-value">${ maxScreenSize }"</div> 7603 </li> 7604 </ul> 7605 </div> 7606 </div> 7607 </section> 7608 7609 7610 7611 7612</div> 7613 7614 7615<section id="product-reviews" class="product-reviews"> 7616 <div class="product-reviews__wrap"> 7617 <div 7618 class="yotpo-widget-instance" 7619 data-yotpo-instance-id="1048657" 7620 data-yotpo-product-id="7735073144874" 7621 data-yotpo-name="FreeStyle Carry-On Plus" 7622 data-yotpo-url="https://www.timbuk2.com/products/1067-freestyle-carry-on-plus" 7623 data-yotpo-image-url="https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_large.jpg%3Fv=1763323665" 7624 data-yotpo-price="345.0" 7625 data-yotpo-currency="USD" 7626 data-yotpo-description="<p><meta charset="utf-8"><meta charset="utf-8"><span>More room. Same seamless movement.</span><br></p>" 7627 ></div> 7628 </div> 7629</section> 7630
7631<script type="text/javascript"> 7632 // Patch ADA issues in Yotpo's dynamically-rendered reviews widget, which we 7633 // can't fix at the source. Re-run on each mutation since Yotpo re-renders. 7634 document.addEventListener('DOMContentLoaded', function () { 7635 var reviews = document.getElementById('product-reviews'); 7636 if (!reviews) return; 7637 7638 // The search label wraps only an SVG icon and the input (no text), so 7639 // scanners flag an empty form label. Inject visually-hidden text. Yotpo's 7640 // scoped styles override the theme's .visually-hidden class, so enforce 7641 // the clip rules inline with !important. 7642 function labelYotpoSearch() { 7643 reviews.querySelectorAll('label.yotpo-search-label, label[for="searchInput"]').forEach(function (label) { 7644 if (label.textContent.trim() === '') { 7645 var input = label.querySelector('input, textarea, [placeholder]'); 7646 var span = document.createElement('span'); 7647 span.textContent = (input && input.getAttribute('placeholder')) || 'Search reviews'; 7648 span.style.cssText = 'position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;'; 7649 label.appendChild(span); 7650 } 7651 }); 7652 } 7653 7654 // The rating-filter dropdown points aria-labelledby at an element Yotpo 7655 // never renders (dangling reference). Drop it and set a direct aria-label. 7656 function fixDanglingLabelledby() { 7657 reviews.querySelectorAll('[aria-labelledby="scoreDropdownLabel"]').forEach(function (el) { 7658 if (!document.getElementById('scoreDropdownLabel')) { 7659 el.removeAttribute('aria-labelledby'); 7660 el.setAttribute('aria-label', 'Filter reviews by rating'); 7661 } 7662 }); 7663 } 7664 7665 // The combobox wrapper has no accessible name mechanism (no label/text), 7666 // so scanners can't compute a name. Give it a direct aria-label. 7667 function labelScoreCombobox() { 7668 reviews.querySelectorAll('[role="combobox"][aria-controls="yotpo-score-filter-listbox"]').forEach(function (el) { 7669 if (!el.getAttribute('aria-label') && !el.getAttribute('aria-labelledby')) { 7670 el.setAttribute('aria-label', 'Filter reviews by rating'); 7671 } 7672 }); 7673 } 7674 7675 // The score input carries aria-expanded/haspopup/activedescendant but only 7676 // an implicit textbox role, which disallows those states. Declare it a 7677 // combobox so they're valid; the role persists as Yotpo toggles expanded. 7678 function fixScoreInputRole() { 7679 reviews.querySelectorAll('#scoreDropdownInput[aria-expanded]').forEach(function (el) { 7680 if (el.getAttribute('role') !== 'combobox') { 7681 el.setAttribute('role', 'combobox'); 7682 } 7683 }); 7684 } 7685 7686 // Decorative icons (rating stars, search glyph) carry no information of 7687 // their own â the rating is conveyed by aria-labels on Yotpo's wrappers 7688 // and the search label already has text. Hide the SVGs so scanners don't 7689 // flag a missing name and screen readers don't read "star star star...". 7690 function hideDecorativeIcons() { 7691 reviews.querySelectorAll('svg.yotpo-star-rating-icon, svg.yotpo-search-icon, svg.yotpo-dropdown-arrow-icon').forEach(function (svg) { 7692 if (svg.getAttribute('aria-hidden') !== 'true') { 7693 svg.setAttribute('aria-hidden', 'true'); 7694 svg.setAttribute('focusable', 'false'); 7695 } 7696 }); 7697 } 7698 7699 // The prev/next pagination arrows are icon-only links; the scanner wants 7700 // text content, not just the aria-label Yotpo already sets. Inject that 7701 // aria-label as visually-hidden text so direction stays correct. Inline 7702 // styles are used because Yotpo's CSS overrides the .visually-hidden class. 7703 function labelPaginationArrows() { 7704 reviews.querySelectorAll('.yotpo-reviews-pagination-item').forEach(function (item) { 7705 if (item.textContent.trim() === '') { 7706 var span = document.createElement('span'); 7707 span.textContent = item.getAttribute('aria-label') || 'Page navigation'; 7708 span.style.cssText = 'position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;'; 7709 item.appendChild(span); 7710 } 7711 }); 7712 } 7713 7714 function fixYotpoA11y() { 7715 labelYotpoSearch(); 7716 fixDanglingLabelledby(); 7717 labelScoreCombobox(); 7718 fixScoreInputRole(); 7719 hideDecorativeIcons(); 7720 labelPaginationArrows(); 7721 } 7722 7723 fixYotpoA11y(); 7724 new MutationObserver(fixYotpoA11y).observe(reviews, { childList: true, subtree: true }); 7725 }); 7726</script>
7726 7727 7728<div id="shopify-section-product-recommendations" class="shopify-section"> 7729 7730 7731 7732 7733 7734<section 7735 class="product-recommendations" 7736 data-product-recommendations 7737 data-base-url="/recommendations/products" 7738 data-product-id="7735073144874" 7739 data-limit="8" 7740 data-section-id="product-recommendations" 7741 data-section-type="product-recommendations" 7742 v-cloak 7743> 7744 <div class="product-recommendations__container" v-if="!loading && products.length"> 7745 <div class="product-recommendations__wrap"> 7746 7747 7748 7749 7750 7751 7752 <header class="section-heading"> 7753 <div class="section-heading__column section-heading__column--content"> 7754 7755 <h2><span>If you like this.</span></h2> 7756 7757 7758 <p><span>You might like these.</span></p> 7759 7760 </div> 7761 7762 7763 <div class="section-heading__column section-heading__column--cta"> 7764 7765 <div class="section-heading__buttons"> 7766 <button 7767 type="button" 7768 class="section-heading__button section-heading__button--prev loading" 7769 data-product-recommendations-carousel-button="prev" 7770 > 7771 <span class="visually-hidden">Previous slide</span> 7772 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="47px" height="47px" viewBox="0 0 47 47" xml:space="preserve"> 7773 <circle fill="#f5f5f5" cx="23.5" cy="23.5" r="23.5"/> 7774 <polygon fill="#2d3142" points="26.03,31 28,29.067 22.2,23.268 28,17.468 26.03,15.534 18.33,23.267 "/> 7775</svg> 7776 </button> 7777 <button 7778 type="button" 7779 class="section-heading__button section-heading__button--next loading" 7780 data-product-recommendations-carousel-button="next" 7781 > 7782 <span class="visually-hidden">Next slide</span> 7783 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="47px" height="47px" viewBox="0 0 47 47" xml:space="preserve"> 7784 <circle fill="#f5f5f5" cx="23.5" cy="23.5" r="23.5"/> 7785 <polygon fill="#2d3142" points="20.97,16 19,17.933 24.8,23.732 19,29.532 20.97,31.466 28.67,23.733 "/> 7786</svg> 7787 </button> 7788 </div> 7789 7790 </div> 7791 7792 </header> 7793 7794 7795 7796 <div class="swiper" ref="carousel"> 7797 <div class="swiper-wrapper"> 7798 <div class="swiper-slide" v-for="(product, i) in products" :key="products.id"> 7799 <figure class="product-tile" data-product-item> 7800 <div class="product-tile__container"> 7801 <a :href="product.current_variant.url" class="product-tile__link"> 7802 <div class="product-tile__image-holder"> 7803 <div 7804 v-if="product.current_variant.featured_media" 7805 class="product-tile__image-container" 7806 > 7807 <img 7808 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7809 :data-src="imgURL(product.current_variant.featured_media, '600x', true)" 7810 class="product-tile__image lazy" 7811 :alt="fetchAlt(product.current_variant)" 7812 :data-alt="product.current_variant.featured_media_alt" 7813 v-on:load="imageLoad" 7814 /> 7815 </div> 7816 <div 7817 v-else 7818 class="product-tile__image-container" 7819 > 7820 <img 7821 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7822 data-src="//www.timbuk2.com/cdn/shop/t/1317/assets/product-no-image_600x.jpg?v=7427598040975432391788907511" 7823 class="product-tile__image lazy" 7824 alt="No Image Found" 7825 v-on:load="imageLoad" 7826 /> 7827 </div> 7828 7829 <div 7830 v-if="product.current_variant.featured_media_hover" 7831 class="product-tile__image-container product-tile__image-container--alt" 7832 > 7833 <img 7834 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7835 :data-src="imgURL(product.current_variant.featured_media_hover, '600x', true)" 7836 class="product-tile__image product-tile__image--alt lazy" 7837 :alt="fetchAlt(product.current_variant)" 7838 :data-alt="product.current_variant.featured_media_alt" 7839 v-on:load="imageLoad" 7840 /> 7841 </div> 7842 7843 <div 7844 v-for="(swatch, i) in product.swatches.slice(0, 5)" 7845 :key="'swatch-image' + swatch.id" 7846 :data-product-swatch-image="swatch.id" 7847 class="product-tile__image-container product-tile__image-container--swatch" 7848 > 7849 <img 7850 v-if="swatch.swatch_image" 7851 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7852 :data-src="imgURL(swatch.swatch_image.src, '600x', true)" 7853 class="product-tile__image product-tile__image--swatch lazy" 7854 :alt="fetchSwatchAlt(swatch, product)" 7855 :data-alt="swatch.swatch_image.alt" 7856 v-on:load="imageLoad" 7857 /> 7858 <img 7859 v-else 7860 src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" 7861 data-src="//www.timbuk2.com/cdn/shop/t/1317/assets/product-no-image_600x.jpg?v=7427598040975432391788907511" 7862 class="product-tile__image lazy" 7863 alt="No Image Found" 7864 v-on:load="imageLoad" 7865 /> 7866 </div> 7867 </div> 7868 7869 <div class="product-tile__badges"> 7870 <template v-for="(badge, key, i) in badges"> 7871 <div class="product-tile__badge" v-if="product.tags.includes(key)"> 7872 <picture 7873 v-if="badge.icon" 7874 class="product-tile__badge-icon" 7875 > 7876 <source :srcset="badge.icon.replace('w_76', 'w_38') + ' 1x, ' + badge.icon + ' 2x'"> 7877 <img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1 1'%3E%3C/svg%3E" alt="" aria-hidden="true"> 7878 </picture> 7879 <div 7880 v-if="badge.text" 7881 class="product-tile__badge-text" 7882 > 7883 <p>${badge.text}</p> 7884 </div> 7885 </div> 7886 </template> 7887 </div> 7888 7889 <div class="product-tile-swatch"> 7890 <div 7891 class="product-tile-swatch__list" 7892 :class="{ hidden: product.tags.includes('madetype-Customizable') }" 7893 data-product-swatch 7894 > 7895 <div 7896 class="product-tile-swatch__item" 7897 v-for="(swatch, i) in product.swatches.slice(0, 5)" 7898 :key="swatch.id + i" 7899 data-product-swatch-item 7900 > 7901 <button 7902 type="button" 7903 class="product-tile-swatch__button" 7904 :class="{ active : swatch.id == product.current_variant.id }" 7905 :aria-label="swatch.swatch_name" 7906 :data-product-swatch-id="swatch.id" 7907 >
7908 <span class="product-tile-swatch__button-inner"> 7909 <figure 7910 class="product-tile-swatch__image-holder" 7911 :style="[swatches.hasOwnProperty(getSlug(swatch.swatch_name)) && swatches[getSlug(swatch.swatch_name)].color ? { 'background': swatches[getSlug(swatch.swatch_name)].color } : '']" 7912 > 7913 <img 7914 v-if="swatches.hasOwnProperty(getSlug(swatch.swatch_name)) && swatches[getSlug(swatch.swatch_name)].image" 7915 :src="swatches[getSlug(swatch.swatch_name)].image" 7916 class="product-tile-swatch__image" 7917 height="24" 7918 width="24" 7919 :alt="swatch.swatch_name" 7920 /> 7921 <img 7922 v-else 7923 src="//www.timbuk2.com/cdn/shop/t/1317/assets/swatch-no-image-transparent_24x.png?v=67810184491937952951788907511" 7924 class="product-tile-swatch__image" 7925 height="24" 7926 width="24" 7927 :alt="swatch.swatch_name" 7928 /> 7929 </figure> 7930 </span> 7931 </button> 7932 </div> 7933 7934 <div 7935 v-if="product.swatches.length > 5" 7936 class="product-tile-swatch__item" 7937 > 7938 <div 7939 class="product-tile-swatch__remaining" 7940 :class="[(product.swatches.length - 5 <= 0 ? 'hide--no-mobile' : ''), (product.swatches.length - 3 <= 0 ? 'hide--mobile' : '')]" 7941 > 7942 <small> 7943 <span>+ </span> 7944 <span class="mobile">${ product.swatches.length - 3 }</span> 7945 <span class="no-mobile">${ product.swatches.length - 5 }</span> 7946 <span> colors</span> 7947 </small> 7948 </div> 7949 </div> 7950 </div> 7951 </div> 7952 7953 <figcaption class="product-tile__info"> 7954 <div class="product-tile__flag" v-if="fetchTag(product.tags)"> 7955 <p>${ fetchTag(product.tags) }</p> 7956 </div> 7957 <div class="product-tile__info-inner"> 7958 <h3 class="product-tile__title">${ product.title }</h3> 7959 <p class="product-tile__price"> 7960 <template v-if="product.compare_at_price && product.compare_at_price > product.price"> 7961 <span class="product-recommendations__sale">${ product.price | toUSD }</span> 7962 <s>${ product.compare_at_price | toUSD }</s> 7963 </template> 7964 <template v-else> 7965 <span>${ product.price | toUSD }</span> 7966 </template> 7967 </p> 7968 </div> 7969 </figcaption> 7970 </a> 7971 </div> 7972 </figure> 7973 </div> 7974 </div> 7975 </div> 7976 7977 <div class="swiper-scrollbar-holder"> 7978 <div class="swiper-scrollbar" data-product-recommendations-carousel-scrollbar></div> 7979 </div> 7980 </div> 7981 </div> 7982</section> 7983 7984 7985 7986
7987<script> 7988 window.swatches = { 7989 7990["eco-amber"]: { 7991 color: null, 7992 image: "https:\/\/cld.accentuate.io\/25729458\/1662157320090\/eco-amber-1136-colorswatch.jpg?v=1662157320090\u0026options=w_44" 7993 }, 7994 7995["black"]: { 7996 color: null, 7997 image: "https:\/\/cld.accentuate.io\/25729458\/1662075175757\/black-2001-colorswatch.jpg?v=1662075175758\u0026options=w_44" 7998 }, 7999 8000["cocoa"]: { 8001 color: null, 8002 image: "https:\/\/cld.accentuate.io\/25729458\/1662075734089\/cocoa-3623-colorswatch.jpg?v=1662075734089\u0026options=w_44" 8003 }, 8004 8005["eco-army-pop"]: { 8006 color: null, 8007 image: "https:\/\/cld.accentuate.io\/25729458\/1662157565935\/eco-army-pop-1121-colorswatch.jpg?v=1662157565935\u0026options=w_44" 8008 }, 8009 8010["eco-nightfall"]: { 8011 color: null, 8012 image: "https:\/\/cld.accentuate.io\/25729458\/1662075952000\/eco-nightfall-1099-colorswatch.jpg?v=1662075952000\u0026options=w_44" 8013 }, 8014 8015["eco-static"]: { 8016 color: null, 8017 image: "https:\/\/cld.accentuate.io\/25729458\/1662075964619\/eco-static-1091-colorswatch.jpg?v=1662075964619\u0026options=w_44" 8018 }, 8019 8020["eco-titanium"]: { 8021 color: null, 8022 image: "https:\/\/cld.accentuate.io\/25729458\/1662149730912\/eco-titanium-1089-colorswatch.jpg?v=1662149730912\u0026options=w_44" 8023 }, 8024 8025["pod"]: { 8026 color: null, 8027 image: "https:\/\/cld.accentuate.io\/25729458\/1662075997617\/pod-7039-colorswatch.jpg?v=1662075997617\u0026options=w_44" 8028 }, 8029 8030["eco-army"]: { 8031 color: null, 8032 image: "https:\/\/cld.accentuate.io\/25729458\/1662157593660\/eco-army-1135-colorswatch.jpg?v=1662157593660\u0026options=w_44" 8033 }, 8034 8035["eco-black"]: { 8036 color: null, 8037 image: "https:\/\/cld.accentuate.io\/25729458\/1662157617038\/eco-black-1068-colorswatch.jpg?v=1662157617038\u0026options=w_44" 8038 }, 8039 8040["eco-bookish"]: { 8041 color: null, 8042 image: "https:\/\/cld.accentuate.io\/25729458\/1662157645400\/eco-bookish-1140-colorswatch.jpg?v=1662157645400\u0026options=w_44" 8043 }, 8044 8045["eco-collegiate-red"]: { 8046 color: null, 8047 image: "https:\/\/cld.accentuate.io\/25729458\/1662157662310\/eco-collegiate-red-1137-colorswatch.jpg?v=1662157662310\u0026options=w_44" 8048 }, 8049 8050["eco-gunmetal"]: { 8051 color: null, 8052 image: "https:\/\/cld.accentuate.io\/25729458\/1662157676215\/eco-gunmetal-1104-colorswatch.jpg?v=1662157676215\u0026options=w_44" 8053 }, 8054 8055["eco-lightbeam"]: { 8056 color: null, 8057 image: "https:\/\/cld.accentuate.io\/25729458\/1662157698938\/eco-lightbeam-1139-colorswatch.jpg?v=1662157698938\u0026options=w_44" 8058 }, 8059 8060["eco-monsoon"]: { 8061 color: null, 8062 image: "https:\/\/cld.accentuate.io\/25729458\/1662157709062\/eco-monsoon-1112-colorswatch.jpg?v=1662157709062\u0026options=w_44" 8063 }, 8064 8065["eco-nautical"]: { 8066 color: null, 8067 image: "https:\/\/cld.accentuate.io\/25729458\/1662157718922\/eco-nautical-1122-colorswatch.jpg?v=1662157718922\u0026options=w_44" 8068 }, 8069 8070["nightfall-marigold"]: { 8071 color: null, 8072 image: "https:\/\/cld.accentuate.io\/25729458\/1662158356970\/nightfall-marigold-1082-colorswatch.jpg?v=1662158356970\u0026options=w_44" 8073 }, 8074 8075["jet-black"]: { 8076 color: null, 8077 image: "https:\/\/cld.accentuate.io\/25729458\/1662075214914\/jet-black-6114-colorswatch.jpg?v=1662075214914\u0026options=w_44" 8078 }, 8079 8080["eco-gunmetal-pop"]: { 8081 color: null, 8082 image: "https:\/\/cld.accentuate.io\/25729458\/1662157805803\/eco-gunmetal-pop-1149-colorswatch.jpg?v=1662157805804\u0026options=w_44" 8083 }, 8084 8085["eco-nautical-pop"]: { 8086 color: null, 8087 image: "https:\/\/cld.accentuate.io\/25729458\/1662157815362\/eco-nautical-pop-1085-colorswatch.jpg?v=1662157815362\u0026options=w_44" 8088 }, 8089 8090["eco-black-deluxe"]: { 8091 color: null, 8092 image: "https:\/\/cld.accentuate.io\/25729458\/1662076551342\/eco-black-deluxe-1120-colorswatch.jpg?v=1662076551342\u0026options=w_44" 8093 }, 8094 8095["galaxy-grey"]: { 8096 color: null, 8097 image: "https:\/\/cld.accentuate.io\/25729458\/1662158195574\/galaxy-grey-1172-colorswatch.jpg?v=1662158195574\u0026options=w_44" 8098 }, 8099 8100["granite"]: { 8101 color: null, 8102 image: "https:\/\/cld.accentuate.io\/25729458\/1662158212265\/granite-2422-colorswatch.jpg?v=1662158212266\u0026options=w_44" 8103 }, 8104 8105["scout"]: { 8106 color: null, 8107 image: "https:\/\/cld.accentuate.io\/25729458\/1662075690633\/scout-1532-colorswatch.jpg?v=1662075690633\u0026options=w_44" 8108 }, 8109 8110["bright-blue"]: { 8111 color: null, 8112 image: "https:\/\/cld.accentuate.io\/25729458\/1662158257906\/bright-blue-2904-colorswatch.jpg?v=1662158257906\u0026options=w_44" 8113 }, 8114 8115["dove"]: { 8116 color: null, 8117 image: "https:\/\/cld.accentuate.io\/25729458\/1662075877207\/colorswatch.jpg?v=1769803563715\u0026options=w_44" 8118 }, 8119 8120["tropic"]: { 8121 color: null, 8122 image: "https:\/\/cld.accentuate.io\/25729458\/1662075890607\/tropic-3102-colorswatch.jpg?v=1662075890607\u0026options=w_44" 8123 }, 8124 8125["steel"]: { 8126 color: null, 8127 image: "https:\/\/cld.accentuate.io\/25729458\/1662075904741\/steel-1143-colorswatch.jpg?v=1662075904741\u0026options=w_44" 8128 }, 8129 8130["assorted"]: { 8131 color: null, 8132 image: "https:\/\/cld.accentuate.io\/25729458\/1662158402556\/assorted-4702-colorswatch.jpg?v=1662158402556\u0026options=w_44" 8133 }, 8134 8135["chai-monogram"]: { 8136 color: null, 8137 image: "https:\/\/cld.accentuate.io\/25729458\/1662158418087\/chai-monogram-6216-colorswatch.jpg?v=1662158418087\u0026options=w_44" 8138 }, 8139 8140["eco-gravity"]: { 8141 color: null, 8142 image: "https:\/\/cld.accentuate.io\/25729458\/1663353817216\/eco-gravity-1083-colorswatch.jpg?v=1663353817216\u0026options=w_44" 8143 }, 8144 8145["gamay"]: { 8146 color: null, 8147 image: "https:\/\/cld.accentuate.io\/25729458\/1662158449078\/gamay-7196-colorswatch.jpg?v=1662158449078\u0026options=w_44" 8148 }, 8149 8150["golden"]: { 8151 color: null, 8152 image: "https:\/\/cld.accentuate.io\/25729458\/1662158465009\/golden-5894-colorswatch.jpg?v=1662158465010\u0026options=w_44" 8153 }, 8154 8155["granite-flame"]: { 8156 color: null, 8157 image: "https:\/\/cld.accentuate.io\/25729458\/1662158480503\/granite-flame-2548-colorswatch.jpg?v=1662158480504\u0026options=w_44" 8158 }, 8159 8160["jet-black-blue-wish"]: { 8161 color: null, 8162 image: "https:\/\/cld.accentuate.io\/25729458\/1662158500316\/jet-black-blue-wish-8836-colorswatch.jpg?v=1662158500316\u0026options=w_44" 8163 }, 8164 8165["khaki"]: { 8166 color: null, 8167 image: "https:\/\/cld.accentuate.io\/25729458\/1662158527010\/khaki-019-colorswatch.jpg?v=1662158527011\u0026options=w_44" 8168 }, 8169 8170["legendary-black"]: { 8171 color: null, 8172 image: "https:\/\/cld.accentuate.io\/25729458\/1662158545790\/legendary-black-1184-colorswatch.jpg?v=1662158545790\u0026options=w_44" 8173 }, 8174 8175["reflective-silver"]: { 8176 color: null, 8177 image: "https:\/\/cld.accentuate.io\/25729458\/1662158562645\/reflective-silver-1011-colorswatch.jpg?v=1662158562645\u0026options=w_44" 8178 }, 8179 8180["rich-cobalt-monogram"]: { 8181 color: null, 8182 image: "https:\/\/cld.accentuate.io\/25729458\/1662158590805\/rich-colbalt-monogram-4008-colorswatch.jpg?v=1662158590806\u0026options=w_44" 8183 }, 8184
8185["scout-shade"]: { 8186 color: null, 8187 image: "https:\/\/cld.accentuate.io\/25729458\/1662158607417\/scout-shade-1533-colorswatch.jpg?v=1662158607417\u0026options=w_44" 8188 }, 8189 8190["eco-rind-pop"]: { 8191 color: null, 8192 image: "https:\/\/cld.accentuate.io\/25729458\/1663350355231\/eco-rind-pop-1141-colorswatch.jpg?v=1663350355231\u0026options=w_44" 8193 }, 8194 8195["pine"]: { 8196 color: null, 8197 image: "https:\/\/cld.accentuate.io\/25729458\/1663350387395\/pine-1128-colorswatch.jpg?v=1663350387395\u0026options=w_44" 8198 }, 8199 8200["granite-flame"]: { 8201 color: null, 8202 image: "https:\/\/cld.accentuate.io\/25729458\/1663350412694\/granite-flame-2548-colorswatch.jpg?v=1663350412694\u0026options=w_44" 8203 }, 8204 8205["gunmetal"]: { 8206 color: null, 8207 image: "https:\/\/cld.accentuate.io\/25729458\/1663354046372\/gunmetal-2003-colorswatch.jpg?v=1663354046372\u0026options=w_44" 8208 }, 8209 8210["nightfall-sunrise"]: { 8211 color: null, 8212 image: "https:\/\/cld.accentuate.io\/25729458\/1663607025976\/nightfall-sunrise-1059-colorswatch.jpg?v=1663607025976\u0026options=w_44" 8213 }, 8214 8215["bred"]: { 8216 color: null, 8217 image: "https:\/\/cld.accentuate.io\/25729458\/1667593152790\/bred-1126_colorswatch.jpg?v=1667593152790\u0026options=w_44" 8218 }, 8219 8220["flint"]: { 8221 color: null, 8222 image: "https:\/\/cld.accentuate.io\/25729458\/1667593174120\/flint-1129_colorswatch.jpg?v=1667593174121\u0026options=w_44" 8223 }, 8224 8225["night-shadow"]: { 8226 color: null, 8227 image: "https:\/\/cld.accentuate.io\/25729458\/1667593209586\/night-shadow-8231_colorswatch.jpg?v=1667593209586\u0026options=w_44" 8228 }, 8229 8230["jet-black-heat-embossed"]: { 8231 color: null, 8232 image: "https:\/\/cld.accentuate.io\/25729458\/1667593236624\/jet-black-heat-embossed-6110_colorswatch.jpg?v=1667593236624\u0026options=w_44" 8233 }, 8234 8235["grey-heather"]: { 8236 color: null, 8237 image: "https:\/\/cld.accentuate.io\/25729458\/1667595092766\/grey-heather-1282_colorswatch.jpg?v=1667595092766\u0026options=w_44" 8238 }, 8239 8240["urban-black"]: { 8241 color: null, 8242 image: "https:\/\/cld.accentuate.io\/25729458\/1667595111940\/urban-black-2679_colorswatch.jpg?v=1667595111940\u0026options=w_44" 8243 }, 8244 8245["navy"]: { 8246 color: null, 8247 image: "https:\/\/cld.accentuate.io\/25729458\/1675798895421\/genericStyle-genericSize-6423_colorswatch-NAVY.jpg?v=1740693687727\u0026options=w_44" 8248 }, 8249 8250["natural"]: { 8251 color: null, 8252 image: "https:\/\/cld.accentuate.io\/25729458\/1675798858428\/natural-swatch.jpg?v=1740696879256\u0026options=w_44" 8253 }, 8254 8255["army"]: { 8256 color: null, 8257 image: "https:\/\/cld.accentuate.io\/25729458\/1695692057706\/genericStyle-genericSize-6634_colorswatch.jpg?v=1695692057706\u0026options=w_44" 8258 }, 8259 8260["grey"]: { 8261 color: null, 8262 image: "https:\/\/cld.accentuate.io\/25729458\/1675798914396\/genericStyle-genericSize-6200_colorswatch-GREY.jpg?v=1740693821654\u0026options=w_44" 8263 }, 8264 8265["diablo-fire-red-cranberry-jet-black"]: { 8266 color: null, 8267 image: "https:\/\/cld.accentuate.io\/25729458\/1695692231895\/genericStyle-genericSize-6061_colorswatch-DIABLO.jpg?v=1740693894067\u0026options=w_44" 8268 }, 8269 8270["bookish-nautical-cranberry-honey"]: { 8271 color: null, 8272 image: "https:\/\/cld.accentuate.io\/25729458\/1695692270361\/genericStyle-genericSize-5177_colorswatch-BOOKISH.jpg?v=1740693976060\u0026options=w_44" 8273 }, 8274 8275["fire-red"]: { 8276 color: null, 8277 image: "https:\/\/cld.accentuate.io\/25729458\/1695739034396\/genericStyle-genericSize-1222_colorswatch.jpg?v=1695739034396\u0026options=w_44" 8278 }, 8279 8280["honey"]: { 8281 color: null, 8282 image: "https:\/\/cld.accentuate.io\/25729458\/1695739064874\/genericStyle-genericSize-1214_colorswatch.jpg?v=1695739064874\u0026options=w_44" 8283 }, 8284 8285["monsoon-jet-black-nautical-granite"]: { 8286 color: null, 8287 image: "https:\/\/cld.accentuate.io\/25729458\/1695739092915\/genericStyle-genericSize-4014_colorswatch.jpg?v=1695739092916\u0026options=w_44" 8288 }, 8289 8290["nautical"]: { 8291 color: null, 8292 image: "https:\/\/cld.accentuate.io\/25729458\/1695739141840\/genericStyle-genericSize-5675_colorswatch.jpg?v=1695739141841\u0026options=w_44" 8293 }, 8294 8295["arctic-black"]: { 8296 color: null, 8297 image: "https:\/\/cld.accentuate.io\/25729458\/1715619776193\/genericStyle-genericSize-1239_colorswatch.jpg?v=1715619776193\u0026options=w_44" 8298 }, 8299 8300["gunmetal-rust"]: { 8301 color: null, 8302 image: "https:\/\/cld.accentuate.io\/25729458\/1715619821718\/genericStyle-genericSize-1242_colorswatch.jpg?v=1715619821719\u0026options=w_44" 8303 }, 8304 8305["desert-black"]: { 8306 color: null, 8307 image: "https:\/\/cld.accentuate.io\/25729458\/1715619860424\/genericStyle-genericSize-1241_colorswatch.jpg?v=1715619860425\u0026options=w_44" 8308 }, 8309 8310["purple"]: { 8311 color: null, 8312 image: "https:\/\/cld.accentuate.io\/25729458\/1720485222430\/genericStyle-genericSize-1206_colorswatch-PURPLE.jpg?v=1740694281965\u0026options=w_44" 8313 }, 8314 8315["dark-teal"]: { 8316 color: null, 8317 image: "https:\/\/cld.accentuate.io\/25729458\/1720485310040\/genericStyle-genericSize-1192_colorswatch-DARK-TEAL.jpg?v=1740694297349\u0026options=w_44" 8318 }, 8319 8320["pink"]: { 8321 color: null, 8322 image: "https:\/\/cld.accentuate.io\/25729458\/1720485398476\/genericStyle-genericSize-1118_colorswatch.jpg?v=1720485398476\u0026options=w_44" 8323 }, 8324 8325["jade"]: { 8326 color: null, 8327 image: "https:\/\/cld.accentuate.io\/25729458\/1720711087512\/genericStyle-genericSize-1230_colorswatch-JADE.jpg?v=1740694244855\u0026options=w_44" 8328 }, 8329 8330["rust"]: { 8331 color: null, 8332 image: "https:\/\/cld.accentuate.io\/25729458\/1720711169065\/genericStyle-genericSize-1228_c
8332olorswatch-RUST.jpg?v=1740694257407\u0026options=w_44" 8333 }, 8334 8335["jet-black-reflective"]: { 8336 color: null, 8337 image: "https:\/\/cld.accentuate.io\/25729458\/1721256294775\/genericStyle-genericSize-1095_colorswatch.jpg?v=1721256294775\u0026options=w_44" 8338 }, 8339 8340["flame-reflective"]: { 8341 color: null, 8342 image: "https:\/\/cld.accentuate.io\/25729458\/1721256598327\/genericStyle-genericSize-5672_colorswatch-FLAME-REFLECTIVE.jpg?v=1740693942091\u0026options=w_44" 8343 }, 8344 8345["jet-black-rain-resist"]: { 8346 color: null, 8347 image: "https:\/\/cld.accentuate.io\/25729458\/1721261946549\/genericStyle-genericSize-1250_colorswatch_44-JET-BLACK-RAIN-RESIST.jpg?v=1740694179518\u0026options=w_44" 8348 }, 8349 8350["white-rain-resist"]: { 8351 color: null, 8352 image: "https:\/\/cld.accentuate.io\/25729458\/1721262046599\/genericStyle-genericSize-1251_colorswatch-44-WHITE-RAIN-RESIST.jpg?v=1740694151437\u0026options=w_44" 8353 }, 8354 8355["gunmetal-rain-resist"]: { 8356 color: null, 8357 image: "https:\/\/cld.accentuate.io\/25729458\/1721262132183\/genericStyle-genericSize-1252_colorswatch_44-GUNMETAL-RAIN-RESIST.jpg?v=1740694131705\u0026options=w_44" 8358 }, 8359 8360["nautical-rain-resist"]: { 8361 color: null, 8362 image: "https:\/\/cld.accentuate.io\/25729458\/1721262205630\/genericStyle-genericSize-1254_colorswatch_44-NAUTICAL-RAIN-RESIST.jpg?v=1740694106845\u0026options=w_44" 8363 }, 8364 8365["future-dusk"]: { 8366 color: null, 8367 image: "https:\/\/cld.accentuate.io\/25729458\/1734355759078\/genericStyle-genericSize-1237_colorswatch.jpg?v=1734355759078\u0026options=w_44" 8368 }, 8369 8370["verdigris-pop"]: { 8371 color: null, 8372 image: "https:\/\/cld.accentuate.io\/25729458\/1736452930506\/genericStyle-genericSize-1168_colorswatch.jpg?v=1736452930506\u0026options=w_44" 8373 }, 8374 8375["satin-sky"]: { 8376 color: null, 8377 image: "https:\/\/cld.accentuate.io\/25729458\/1736452950058\/genericStyle-genericSize-1169_colorswatch.jpg?v=1736452950058\u0026options=w_44" 8378 }, 8379 8380["midnight-rain-resist"]: { 8381 color: null, 8382 image: "https:\/\/cld.accentuate.io\/25729458\/1742327983073\/midnight-rain-resist_swatch.jpg?v=1742327983073\u0026options=w_44" 8383 }, 8384 8385["polar-rain-resist"]: { 8386 color: null, 8387 image: "https:\/\/cld.accentuate.io\/25729458\/1742328010596\/polar-rain-resist_swatch.jpg?v=1742328010596\u0026options=w_44" 8388 }, 8389 8390["storm-rain-resist"]: { 8391 color: null, 8392 image: "https:\/\/cld.accentuate.io\/25729458\/1742328060179\/storm-rain-resist_swatch.jpg?v=1742328060179\u0026options=w_44" 8393 }, 8394 8395["twilight-rain-resist"]: { 8396 color: null, 8397 image: "https:\/\/cld.accentuate.io\/25729458\/1742328085348\/twilight-rain-resist_swatch.jpg?v=1742328085348\u0026options=w_44" 8398 }, 8399 8400["coral"]: { 8401 color: null, 8402 image: "https:\/\/cld.accentuate.io\/25729458\/1762725504140\/coral-swatch-44.jpeg?v=1762725504140\u0026options=w_44" 8403 }, 8404 8405["fern"]: { 8406 color: null, 8407 image: "https:\/\/cld.accentuate.io\/25729458\/1762725520618\/fern-swatch-44px.jpeg?v=1762725520618\u0026options=w_44" 8408 }, 8409 8410["chalk"]: { 8411 color: null, 8412 image: "https:\/\/cld.accentuate.io\/25729458\/1762725559413\/chalk-swatch-44px.jpeg?v=1762725559413\u0026options=w_44" 8413 }, 8414 8415["chalk-chalk"]: { 8416 color: null, 8417 image: "https:\/\/cld.accentuate.io\/25729458\/1762725580810\/chalk-swatch-44px.jpeg?v=1762725580810\u0026options=w_44" 8418 }, 8419 8420["chalk-black"]: { 8421 color: null, 8422 image: "https:\/\/cld.accentuate.io\/25729458\/1762725596775\/chalk-black-swatch-44px.jpg?v=1762725596775\u0026options=w_44" 8423 }, 8424 8425["moss"]: { 8426 color: null, 8427 image: "https:\/\/cld.accentuate.io\/25729458\/1762725612787\/moss-swatch-44px.jpeg?v=1762725612787\u0026options=w_44" 8428 }, 8429 8430["rose"]: { 8431 color: null, 8432 image: "https:\/\/cld.accentuate.io\/25729458\/1762725627903\/rose-swatch-44px.jpeg?v=1762725627903\u0026options=w_44" 8433 }, 8434 8435["marigold"]: { 8436 color: null, 8437 image: "https:\/\/cld.accentuate.io\/25729458\/1762797575301\/marigold-swatch-44px.jpeg?v=1762797575301\u0026options=w_44" 8438 }, 8439 8440["canada"]: { 8441 color: null, 8442 image: "https:\/\/cld.accentuate.io\/25729458\/1782231806020\/canada-1323-colorswatch.jpeg?v=1782248509266\u0026options=w_44" 8443 }, 8444 8445["argentina"]: { 8446 color: null, 8447 image: "https:\/\/cld.accentuate.io\/25729458\/1782231822064\/argentina-1321-colorswatch.jpeg?v=1782248521044\u0026options=w_44" 8448 }, 8449 8450["brazil"]: { 8451 color: null, 8452 image: "https:\/\/cld.accentuate.io\/25729458\/1782231835145\/brazil-1322-colorswatch.jpeg?v=1782248536609\u0026options=w_44" 8453 }, 8454 8455["england"]: { 8456 color: null, 8457 image: "https:\/\/cld.accentuate.io\/25729458\/1782231854601\/england-1324-colorswatch.jpeg?v=1782248546016\u0026options=w_44" 8458 }, 8459 8460["mexico"]: { 8461 color: null, 8462 image: "https:\/\/cld.accentuate.io\/25729458\/1782231872496\/mexico-1325-colorswatch.jpeg?v=1782248554873\u0026options=w_44" 8463 }, 8464 8465["usa"]: { 8466 color: null, 8467 image: "https:\/\/cld.accentuate.io\/25729458\/1782231893016\/usa-1326-colorswatch.jpeg?v=1782248562806\u0026options=w_44" 8468 } 8469 8470 }; 8471</script>
8471 8472 8473 8474
8475<script> 8476 window.badges = { 8477 8478["badge-customizable"]: { 8479 icon: "https:\/\/cld.accentuate.io\/25729458\/1663187623269\/badge-customize.jpeg?v=1663187623270\u0026options=w_76", 8480 text: "Customize" 8481 }, 8482 8483["badge-eco"]: { 8484 icon: "https:\/\/cld.accentuate.io\/25729458\/1663187634961\/badge-eco.jpeg?v=1663187634961\u0026options=w_76", 8485 text: "Recycled Materials" 8486 } 8487 8488 }; 8489</script>
8489 8490 8491 8492 8493</div> 8494 </main> 8495 8496 8497 8498 8499 <div id="shopify-section-footer" class="shopify-section shopify-section--footer"> 8500 8501 8502 8503<footer class="footer" data-section-id="footer" data-section-type="footer"> 8504 <div class="footer__columns"> 8505 <div class="footer__column footer__column--primary"> 8506 <div class="footer__column-inner"> 8507 <div class="footer-header"> 8508 8509 <a href="" aria-label="Timbuk2" class="footer-header__link"> 8510 <img src="//www.timbuk2.com/cdn/shop/t/1317/assets/logo-white.svg?v=132049760366823768141788907511" class="footer-header__image" alt="Timbuk2" /> 8511 </a> 8512 </div> 8513 8514 8515 8516 8517 8518 8519 <div class="newsletter"> 8520 <div class="klaviyo-form-Sj6Yca"></div> 8521 </div> 8522 8523 8524 <div class="footer-social footer-social--mobile"> 8525 <ul class="footer-social__list"> 8526 8527 8528 8529 8530 8531 8532 8533 8534 <li class="footer-social__item"> 8535 <a 8536 href="https://www.instagram.com/timbuk2" 8537 class="footer-social__link" 8538 target="_blank" 8539 title="Timbuk2 on Instagram" 8540 aria-label="Timbuk2 on Instagram" 8541 > 8542 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8543 <g fill="#ffffff"> 8544 <path d="M24.505,8.991c-0.04-0.922-0.208-1.834-0.5-2.709c-0.299-0.732-0.751-1.392-1.327-1.934c-0.544-0.576-1.204-1.029-1.938-1.327c-0.875-0.292-1.787-0.46-2.709-0.5h-4.532V2.469H8.965c-0.922,0.04-1.834,0.208-2.709,0.5C5.518,3.283,4.858,3.754,4.32,4.349C3.741,4.877,3.304,5.543,3.048,6.283c-0.34,0.864-0.527,1.781-0.553,2.709C2.44,10.154,2.44,10.541,2.44,13.527c0,2.986,0,3.373,0.055,4.534c0.026,0.928,0.213,1.843,0.553,2.707c0.256,0.742,0.693,1.408,1.272,1.938c0.529,0.579,1.194,1.016,1.935,1.272c0.864,0.34,1.781,0.527,2.709,0.553h9.068c0.928-0.026,1.844-0.213,2.708-0.553c0.741-0.256,1.406-0.693,1.935-1.272c0.577-0.543,1.031-1.204,1.33-1.938c0.292-0.875,0.46-1.787,0.5-2.709c0.055-1.161,0.055-1.548,0.055-4.534C24.56,10.539,24.56,10.152,24.505,8.991z M22.511,17.951c-0.008,0.699-0.139,1.392-0.387,2.046c-0.376,0.963-1.137,1.724-2.1,2.1c-0.654,0.248-1.347,0.379-2.046,0.387H9.02c-0.699-0.008-1.392-0.139-2.046-0.387c-0.963-0.376-1.724-1.137-2.1-2.1c-0.248-0.654-0.379-1.347-0.387-2.046c-0.055-1.161-0.055-1.548-0.055-4.479c0-2.931,0-3.318,0.055-4.479c0.008-0.7,0.139-1.392,0.387-2.046c0.376-0.963,1.137-1.724,2.1-2.1C7.628,4.599,8.321,4.468,9.02,4.46h4.479h4.479c0.699,0.008,1.392,0.139,2.046,0.387c0.963,0.376,1.724,1.137,2.1,2.1c0.248,0.654,0.379,1.347,0.387,2.046c0.055,1.161,0.055,1.548,0.055,4.479C22.566,16.403,22.566,16.79,22.511,17.951z"/> 8545 <path d="M13.504,7.832c-3.148,0-5.7,2.552-5.7,5.7s2.552,5.7,5.7,5.7c3.148,0,5.7-2.552,5.7-5.7S16.652,7.832,13.504,7.832z M13.504,17.232c-2.043,0-3.7-1.657-3.7-3.7c0-2.043,1.657-3.7,3.7-3.7c2.043,0,3.7,1.657,3.7,3.7C17.204,15.575,15.547,17.232,13.504,17.232z"/> 8546 <path d="M19.416,6.284c-0.733,0-1.327,0.594-1.327,1.327c0,0.733,0.594,1.327,1.327,1.327c0.733,0,1.327-0.594,1.327-1.327C20.743,6.878,20.149,6.284,19.416,6.284z"/> 8547 </g> 8548</svg> 8549 8550 </a> 8551 </li> 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 <li class="footer-social__item"> 8562 <a 8563 href="https://twitter.com/timbuk2" 8564 class="footer-social__link" 8565 target="_blank" 8566 title="Timbuk2 on Twitter" 8567 aria-label="Timbuk2 on Twitter" 8568 > 8569 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8570 <g fill="#ffffff"> 8571 <path d="M22.79,6.708c1.038-0.635,1.821-1.613,2.212-2.765C24.01,4.486,22.95,4.894,21.85,5.159c-1.913-2.016-5.098-2.1-7.114-0.188c-0.978,0.928-1.543,2.209-1.568,3.557c0.001,0.395,0.057,0.787,0.167,1.166c-4.007-0.21-7.741-2.097-10.285-5.2c-0.467,0.747-0.715,1.61-0.715,2.491c-0.001,1.676,0.852,3.237,2.262,4.143c-0.794,0.004-1.574-0.203-2.262-0.6c-0.044,2.389,1.635,4.465,3.981,4.921c-0.43,0.136-0.876,0.211-1.327,0.221l-0.94-0.111c0.675,2.036,2.555,3.43,4.7,3.484c-1.773,1.37-3.952,2.109-6.193,2.1H1.335c2.268,1.485,4.921,2.273,7.631,2.267c7.804,0.044,14.167-6.246,14.211-14.051c0-0.054,0-0.109,0-0.163V8.478c0.978-0.711,1.821-1.592,2.488-2.599C24.753,6.296,23.784,6.576,22.79,6.708z"/> 8572 </g> 8573</svg> 8574 8575 </a> 8576 </li> 8577 8578 8579 8580 8581 8582 <li class="footer-social__item"> 8583 <a 8584 href="https://www.facebook.com/timbuk2" 8585 class="footer-social__link" 8586 target="_blank" 8587 title="Timbuk2 on Facebook" 8588 aria-label="Timbuk2 on Facebook" 8589 > 8590 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8591 <g fill="#ffffff"> 8592 <path d="M24.509,3.465c-0.026-0.541-0.459-0.974-1-1H3.496c-0.541,0.026-0.974,0.459-1,1c-0.055,0-0.055,0.056-0.055,0.111v19.851c0,0.055,0,0.111,0.051,0.108c0.026,0.541,0.459,0.974,1,1H14.22c0.003-0.043,0.023-0.082,0.055-0.111v-8.515h-2.82c-0.111,0-0.111,0-0.111-0.111v-3.152c0-0.056,0-0.111,0.111-0.111h2.82c0-0.886-0.055-1.771,0-2.6c-0.025-0.691,0.127-1.376,0.442-1.991c0.387-0.809,1.085-1.428,1.935-1.714c0.569-0.272,1.195-0.404,1.825-0.387h2.544c0.111,0,0.111,0.056,0.111,0.111v2.819c0,0.111,0,0.111-0.111,0.111h-1.659l-0.719,0.111c-0.466,0.051-0.834,0.419-0.885,0.885c0,0.166-0.055,0.387-0.055,0.553v2.156h3.206c0.111,0,0.221-0.387,0.111,0.166c-0.11,0.553-0.166,1.106-0.221,1.659l-0.166,1.382c-0.055,0.166-0.055,0.166-0.221,0.166h-2.709v8.519h5.801c0.541-0.026,0.974-0.459,1-1c0.032-0.029,0.052-0.068,0.055-0.111V3.576L24.509,3.465z"/> 8593 </g> 8594</svg> 8595 8596 </a> 8597 </li> 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 <li class="footer-social__item"> 8616 <a 8617 href="https://www.youtube.com/user/Timbuk2Designs" 8618 class="footer-social__link" 8619 target="_blank" 8620 title="Timbuk2 on YouTube" 8621 aria-label="Timbuk2 on YouTube" 8622 > 8623 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8624 <g fill="#ffffff"> 8625 <path d="M25.164,7.638c-0.281-1.052-1.103-1.874-2.156-2.154c-1.876-0.5-9.511-0.5-9.511-0.5s-7.631,0-9.511,0.5c-1.052,0.28-1.873,1.102-2.154,2.154c-0.345,1.934-0.512,3.896-0.5,5.861c-0.012,1.965,0.155,3.927,0.5,5.861c0.28,1.054,1.103,1.877,2.157,2.157c1.88,0.5,9.511,0.5,9.511,0.5s7.631,0,9.511-0.5c1.054-0.28,1.877-1.103,2.157-2.157c0.345-1.934,0.512-3.896,0.5-5.861C25.679,11.534,25.51,9.572,25.164,7.638z M11.064,17.149v-7.3l6.3,3.649L11.064,17.149z"/> 8626 </g> 8627</svg> 8628 8629 </a> 8630 </li> 8631 8632 8633 8634 8635 8636 8637 </ul> 8638</div> 8639 </div> 8640 </div> 8641
8642 <div class="footer__column footer__column--secondary"> 8643 <div class="footer-social footer-social--no-mobile"> 8644 <ul class="footer-social__list"> 8645 8646 8647 8648 8649 8650 8651 8652 8653 <li class="footer-social__item"> 8654 <a 8655 href="https://www.instagram.com/timbuk2" 8656 class="footer-social__link" 8657 target="_blank" 8658 title="Timbuk2 on Instagram" 8659 aria-label="Timbuk2 on Instagram" 8660 > 8661 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8662 <g fill="#ffffff"> 8663 <path d="M24.505,8.991c-0.04-0.922-0.208-1.834-0.5-2.709c-0.299-0.732-0.751-1.392-1.327-1.934c-0.544-0.576-1.204-1.029-1.938-1.327c-0.875-0.292-1.787-0.46-2.709-0.5h-4.532V2.469H8.965c-0.922,0.04-1.834,0.208-2.709,0.5C5.518,3.283,4.858,3.754,4.32,4.349C3.741,4.877,3.304,5.543,3.048,6.283c-0.34,0.864-0.527,1.781-0.553,2.709C2.44,10.154,2.44,10.541,2.44,13.527c0,2.986,0,3.373,0.055,4.534c0.026,0.928,0.213,1.843,0.553,2.707c0.256,0.742,0.693,1.408,1.272,1.938c0.529,0.579,1.194,1.016,1.935,1.272c0.864,0.34,1.781,0.527,2.709,0.553h9.068c0.928-0.026,1.844-0.213,2.708-0.553c0.741-0.256,1.406-0.693,1.935-1.272c0.577-0.543,1.031-1.204,1.33-1.938c0.292-0.875,0.46-1.787,0.5-2.709c0.055-1.161,0.055-1.548,0.055-4.534C24.56,10.539,24.56,10.152,24.505,8.991z M22.511,17.951c-0.008,0.699-0.139,1.392-0.387,2.046c-0.376,0.963-1.137,1.724-2.1,2.1c-0.654,0.248-1.347,0.379-2.046,0.387H9.02c-0.699-0.008-1.392-0.139-2.046-0.387c-0.963-0.376-1.724-1.137-2.1-2.1c-0.248-0.654-0.379-1.347-0.387-2.046c-0.055-1.161-0.055-1.548-0.055-4.479c0-2.931,0-3.318,0.055-4.479c0.008-0.7,0.139-1.392,0.387-2.046c0.376-0.963,1.137-1.724,2.1-2.1C7.628,4.599,8.321,4.468,9.02,4.46h4.479h4.479c0.699,0.008,1.392,0.139,2.046,0.387c0.963,0.376,1.724,1.137,2.1,2.1c0.248,0.654,0.379,1.347,0.387,2.046c0.055,1.161,0.055,1.548,0.055,4.479C22.566,16.403,22.566,16.79,22.511,17.951z"/> 8664 <path d="M13.504,7.832c-3.148,0-5.7,2.552-5.7,5.7s2.552,5.7,5.7,5.7c3.148,0,5.7-2.552,5.7-5.7S16.652,7.832,13.504,7.832z M13.504,17.232c-2.043,0-3.7-1.657-3.7-3.7c0-2.043,1.657-3.7,3.7-3.7c2.043,0,3.7,1.657,3.7,3.7C17.204,15.575,15.547,17.232,13.504,17.232z"/> 8665 <path d="M19.416,6.284c-0.733,0-1.327,0.594-1.327,1.327c0,0.733,0.594,1.327,1.327,1.327c0.733,0,1.327-0.594,1.327-1.327C20.743,6.878,20.149,6.284,19.416,6.284z"/> 8666 </g> 8667</svg> 8668 8669 </a> 8670 </li> 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 <li class="footer-social__item"> 8681 <a 8682 href="https://twitter.com/timbuk2" 8683 class="footer-social__link" 8684 target="_blank" 8685 title="Timbuk2 on Twitter" 8686 aria-label="Timbuk2 on Twitter" 8687 > 8688 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8689 <g fill="#ffffff"> 8690 <path d="M22.79,6.708c1.038-0.635,1.821-1.613,2.212-2.765C24.01,4.486,22.95,4.894,21.85,5.159c-1.913-2.016-5.098-2.1-7.114-0.188c-0.978,0.928-1.543,2.209-1.568,3.557c0.001,0.395,0.057,0.787,0.167,1.166c-4.007-0.21-7.741-2.097-10.285-5.2c-0.467,0.747-0.715,1.61-0.715,2.491c-0.001,1.676,0.852,3.237,2.262,4.143c-0.794,0.004-1.574-0.203-2.262-0.6c-0.044,2.389,1.635,4.465,3.981,4.921c-0.43,0.136-0.876,0.211-1.327,0.221l-0.94-0.111c0.675,2.036,2.555,3.43,4.7,3.484c-1.773,1.37-3.952,2.109-6.193,2.1H1.335c2.268,1.485,4.921,2.273,7.631,2.267c7.804,0.044,14.167-6.246,14.211-14.051c0-0.054,0-0.109,0-0.163V8.478c0.978-0.711,1.821-1.592,2.488-2.599C24.753,6.296,23.784,6.576,22.79,6.708z"/> 8691 </g> 8692</svg> 8693 8694 </a> 8695 </li> 8696 8697 8698 8699 8700 8701 <li class="footer-social__item"> 8702 <a 8703 href="https://www.facebook.com/timbuk2" 8704 class="footer-social__link" 8705 target="_blank" 8706 title="Timbuk2 on Facebook" 8707 aria-label="Timbuk2 on Facebook" 8708 > 8709 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8710 <g fill="#ffffff"> 8711 <path d="M24.509,3.465c-0.026-0.541-0.459-0.974-1-1H3.496c-0.541,0.026-0.974,0.459-1,1c-0.055,0-0.055,0.056-0.055,0.111v19.851c0,0.055,0,0.111,0.051,0.108c0.026,0.541,0.459,0.974,1,1H14.22c0.003-0.043,0.023-0.082,0.055-0.111v-8.515h-2.82c-0.111,0-0.111,0-0.111-0.111v-3.152c0-0.056,0-0.111,0.111-0.111h2.82c0-0.886-0.055-1.771,0-2.6c-0.025-0.691,0.127-1.376,0.442-1.991c0.387-0.809,1.085-1.428,1.935-1.714c0.569-0.272,1.195-0.404,1.825-0.387h2.544c0.111,0,0.111,0.056,0.111,0.111v2.819c0,0.111,0,0.111-0.111,0.111h-1.659l-0.719,0.111c-0.466,0.051-0.834,0.419-0.885,0.885c0,0.166-0.055,0.387-0.055,0.553v2.156h3.206c0.111,0,0.221-0.387,0.111,0.166c-0.11,0.553-0.166,1.106-0.221,1.659l-0.166,1.382c-0.055,0.166-0.055,0.166-0.221,0.166h-2.709v8.519h5.801c0.541-0.026,0.974-0.459,1-1c0.032-0.029,0.052-0.068,0.055-0.111V3.576L24.509,3.465z"/> 8712 </g> 8713</svg> 8714 8715 </a> 8716 </li> 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 <li class="footer-social__item"> 8735 <a 8736 href="https://www.youtube.com/user/Timbuk2Designs" 8737 class="footer-social__link" 8738 target="_blank" 8739 title="Timbuk2 on YouTube" 8740 aria-label="Timbuk2 on YouTube" 8741 > 8742 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="27px" height="27px" viewBox="0 0 27 27" xml:space="preserve"> 8743 <g fill="#ffffff"> 8744 <path d="M25.164,7.638c-0.281-1.052-1.103-1.874-2.156-2.154c-1.876-0.5-9.511-0.5-9.511-0.5s-7.631,0-9.511,0.5c-1.052,0.28-1.873,1.102-2.154,2.154c-0.345,1.934-0.512,3.896-0.5,5.861c-0.012,1.965,0.155,3.927,0.5,5.861c0.28,1.054,1.103,1.877,2.157,2.157c1.88,0.5,9.511,0.5,9.511,0.5s7.631,0,9.511-0.5c1.054-0.28,1.877-1.103,2.157-2.157c0.345-1.934,0.512-3.896,0.5-5.861C25.679,11.534,25.51,9.572,25.164,7.638z M11.064,17.149v-7.3l6.3,3.649L11.064,17.149z"/> 8745 </g> 8746</svg> 8747 8748 </a> 8749 </li> 8750 8751 8752 8753 8754 8755 8756 </ul> 8757</div> 8758 8759 <div class="footer-nav is- no-newsletter"> 8760 8761 <div class="footer-nav__column"> 8762 8763 <h3 8764 class="footer-nav__title" 8765 data-toggle="> ul" 8766 data-toggle-max-width="768" 8767 aria-controls="footer-shop" 8768 >
8769 <span 8770 class="footer-nav__title-text" 8771 aria-label="shop" 8772 >SHOP</span> 8773 <i class="footer-nav__title-icon footer-nav__title-icon--plus"> 8774 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8775 <g fill="#67758b"> 8776 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 8777 </g> 8778</svg> 8779 </i> 8780 <i class="footer-nav__title-icon footer-nav__title-icon--minus"> 8781 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8782 <g fill="#67758b"> 8783 <rect x="0" y="8" width="18" height="2"/> 8784 </g> 8785</svg> 8786 </i> 8787 </h3> 8788 8789 8790 <ul 8791 class="footer-nav__list" 8792 8793 id="footer-shop" 8794 8795 > 8796 8797 <li class="footer-nav__item"> 8798 <a 8799 href="/collections/all-luggage" 8800 class="footer-nav__link" 8801 >Luggage</a> 8802 </li> 8803 8804 <li class="footer-nav__item"> 8805 <a 8806 href="/collections/all-bags" 8807 class="footer-nav__link" 8808 >Bags</a> 8809 </li> 8810 8811 <li class="footer-nav__item"> 8812 <a 8813 href="/collections/all-backpacks" 8814 class="footer-nav__link" 8815 >Backpacks</a> 8816 </li> 8817 8818 <li class="footer-nav__item"> 8819 <a 8820 href="/collections/custom-bags-backpacks" 8821 class="footer-nav__link" 8822 >Custom</a> 8823 </li> 8824 8825 <li class="footer-nav__item"> 8826 <a 8827 href="/collections/accessories" 8828 class="footer-nav__link" 8829 >Accessories</a> 8830 </li> 8831 8832 <li class="footer-nav__item"> 8833 <a 8834 href="/products/egift-egift-card" 8835 class="footer-nav__link" 8836 >Gift Cards</a> 8837 </li> 8838 8839 </ul> 8840 </div> 8841 8842 8843 8844 <div class="footer-nav__column"> 8845 8846 <h3 8847 class="footer-nav__title" 8848 data-toggle="> ul" 8849 data-toggle-max-width="768" 8850 aria-controls="footer-support" 8851 > 8852 <span 8853 class="footer-nav__title-text" 8854 aria-label="support" 8855 >SUPPORT</span> 8856 <i class="footer-nav__title-icon footer-nav__title-icon--plus"> 8857 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8858 <g fill="#67758b"> 8859 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 8860 </g> 8861</svg> 8862 </i> 8863 <i class="footer-nav__title-icon footer-nav__title-icon--minus"> 8864 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8865 <g fill="#67758b"> 8866 <rect x="0" y="8" width="18" height="2"/> 8867 </g> 8868</svg> 8869 </i> 8870 </h3> 8871 8872 8873 <ul 8874 class="footer-nav__list" 8875 8876 id="footer-support" 8877 8878 > 8879 8880 <li class="footer-nav__item"> 8881 <a 8882 href="/pages/contact-us" 8883 class="footer-nav__link" 8884 >Contact Us</a> 8885 </li> 8886 8887 <li class="footer-nav__item"> 8888 <a 8889 href="/pages/help-center" 8890 class="footer-nav__link" 8891 >Help Center</a> 8892 </li> 8893 8894 <li class="footer-nav__item"> 8895 <a 8896 href="/account" 8897 class="footer-nav__link" 8898 >Customer Account </a> 8899 </li> 8900 8901 <li class="footer-nav__item"> 8902 <a 8903 href="/pages/privacy-policy#9" 8904 class="footer-nav__link" 8905 >Privacy Policy</a> 8906 </li> 8907 8908 8909 <li class="footer-nav__item footer-nav__item--icon"> 8910 <button 8911 id="ot-sdk-btn" 8912 class="ot-sdk-show-settings" 8913 ></button> 8914 8915<img width="30" height="14" src="//www.timbuk2.com/cdn/shop/files/privacyoptions_1024x1024.svg?v=1692636663" alt=""> 8916 8917 </li> 8918 8919 </ul> 8920 </div> 8921 8922 8923 8924 <div class="footer-nav__column"> 8925 8926 <h3 8927 class="footer-nav__title" 8928 data-toggle="> ul" 8929 data-toggle-max-width="768" 8930 aria-controls="footer-company" 8931 >
8932 <span 8933 class="footer-nav__title-text" 8934 aria-label="company" 8935 >COMPANY</span> 8936 <i class="footer-nav__title-icon footer-nav__title-icon--plus"> 8937 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8938 <g fill="#67758b"> 8939 <polygon points="18,8 10,8 10,0 8,0 8,8 0,8 0,10 8,10 8,18 10,18 10,10 18,10 "/> 8940 </g> 8941</svg> 8942 </i> 8943 <i class="footer-nav__title-icon footer-nav__title-icon--minus"> 8944 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="18px" height="18px" viewBox="0 0 18 18" xml:space="preserve"> 8945 <g fill="#67758b"> 8946 <rect x="0" y="8" width="18" height="2"/> 8947 </g> 8948</svg> 8949 </i> 8950 </h3> 8951 8952 8953 <ul 8954 class="footer-nav__list" 8955 8956 id="footer-company" 8957 8958 > 8959 8960 <li class="footer-nav__item"> 8961 <a 8962 href="/pages/about-us" 8963 class="footer-nav__link" 8964 >About Us</a> 8965 </li> 8966 8967 <li class="footer-nav__item"> 8968 <a 8969 href="/pages/store-locations" 8970 class="footer-nav__link" 8971 >Store Locations</a> 8972 </li> 8973 8974 <li class="footer-nav__item"> 8975 <a 8976 href="/pages/corporate-sales" 8977 class="footer-nav__link" 8978 >Corporate Sales</a> 8979 </li> 8980 8981 <li class="footer-nav__item"> 8982 <a 8983 href="/pages/affiliate-program" 8984 class="footer-nav__link" 8985 >Affiliate Program</a> 8986 </li> 8987 8988 </ul> 8989 </div> 8990 8991 </div> 8992 </div> 8993 </div> 8994 8995 <div class="footer-base"> 8996 <div class="footer-base__wrap"> 8997 <p class="footer-base__title">© 2026 Timbuk2. All Rights Reserved.</p> 8998 8999 9000 <ul class="footer-base-nav"> 9001 9002 <li class="footer-base-nav__item"> 9003 <a 9004 href="/pages/privacy-policy" 9005 class="footer-base-nav__link" 9006 >Privacy Policy</a> 9007 </li> 9008 9009 <li class="footer-base-nav__item"> 9010 <a 9011 href="/pages/cookie-policy" 9012 class="footer-base-nav__link" 9013 >Cookie Policy</a> 9014 </li> 9015 9016 <li class="footer-base-nav__item"> 9017 <a 9018 href="/pages/terms-of-use" 9019 class="footer-base-nav__link" 9020 >Terms of Service</a> 9021 </li> 9022 9023 9024 9025 9026 9027 9028 <li class="footer-base-nav__item footer-base-nav__item-icon"> 9029 <a href="/pages/accessibility" target="_blank" title="Accessibility"> 9030 <span>Accessibility</span><img width="62" height="24" src="//www.timbuk2.com/cdn/shop/files/accessibility_icon_cd86b270-c0b5-4e3d-bbfa-c31f4a1a0d7c_1024x1024.svg?v=1686244699" alt=""> 9031 </a> 9032 </li> 9033 9034 9035 </ul> 9036 9037 </div> 9038 </div> 9039</footer> 9040 9041 9042 9043</div> 9044 9045 9046 9047 9048
9048<script src="//code.jquery.com/jquery-3.6.0.min.js" crossorigin="anonymous"></script>
9048 9049
9049<script>window.jQuery || document.write('
9049<script src="//www.timbuk2.com/cdn/shop/t/1317/assets/jquery-3.6.0.min.js?v=8324501383853434791788907511">\x3C/script>')</script>
9049 9050 9051 9052 9053
9053<script src="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.vendor.js?v=112570697561952820141788907511"></script>
9053 9054
9054<script src="//www.timbuk2.com/cdn/shopifycloud/storefront/assets/themes_support/api.jquery-7ab1a3a4.js"></script>
9054 9055
9055<script src="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.theme.js?v=138588068693589291421788907511"></script>
9055 9056 9057 9058
9058<script src="//www.timbuk2.com/cdn/shop/t/1317/assets/bundle.product.js?v=32446505255736429571788907511"></script>
9058 9059 9060 9061
9061<script src="https://a.klaviyo.com/media/js/onsite/onsite.js"></script>
9061 9062
9062<script> 9063 var klaviyo = klaviyo || []; 9064 klaviyo.init({ 9065 account: "KKHe7M", 9066 platform: "shopify", 9067 exclude_on_tags: "site-sale" 9068 }); 9069 klaviyo.enable("backinstock", { 9070 trigger: { 9071 product_page_text: "Notify Me When Available", 9072 product_page_class: "klaviyo-bis-trigger", 9073 product_page_text_align: "center", 9074 product_page_margin: "0px", 9075 replace_anchor: false 9076 }, 9077 modal: { 9078 headline: "{product_name}", 9079 body_content: "Register to receive a notification when this item comes back in stock.", 9080 email_field_label: "Email", 9081 button_label: "Notify Me When Available", 9082 subscription_success_label: "You're in! We'll let you know when it's back.", 9083 footer_content: '', 9084 additional_styles: "@import url('https://use.typekit.net/uga7ytd.css');", 9085 drop_background_color: "#2d3142", 9086 background_color: "#ffffff", 9087 text_color: "#2d3142", 9088 button_text_color: "#ffffff", 9089 button_background_color: "#2d3142", 9090 close_button_color: "#2d3142", 9091 error_background_color: "#fdf2ee", 9092 error_text_color: "#ef8354", 9093 success_background_color: "#eaeaec", 9094 success_text_color: "#2d3142" 9095 } 9096 }); 9097 </script>
9097 9098 9099 9100
9100<script type="text/javascript"> 9101 var _learnq = _learnq || []; 9102 (function() { 9103 var item = { 9104 Name: "FreeStyle Carry-On Plus", 9105 ProductID: 7735073144874, 9106 Categories: ["All Luggage","All Products","All Travel Bags","Best Sellers","Black Friday \u0026 Cyber Monday Deals","Black Friday \u0026 Cyber Monday Deals | Travel Luggage","Carry On Luggage","Exclusive Holiday Sale Extension","Facebook Product Update Feed","Google Sale Price Feed","Mother's Day Gift Shop","New Arrivals","Pepperjam Product Feed","Road Trip Travel Bags","Shop All","Thank You Denver","The FreeStyle Collection","Travel Roller Bags","Weekend Travel Bags","Work Commute Bags"], 9107 ImageURL: "https://www.timbuk2.com/cdn/shop/files/timbuk2-FreeStyle-Roller-22-Domestic-Check-in-blk-1067-71-1310-00_grande.jpg?v=1763323665", 9108 URL: "https://www.timbuk2.com/products/1067-freestyle-carry-on-plus", 9109 Brand: "Timbuk2-Timbuk2", 9110 Price: "$345.00", 9111 CompareAtPrice: "$0.00" 9112 }; 9113 9114 _learnq.push(['track', 'Viewed Product', item]); 9115 9116 _learnq.push(['trackViewedItem', { 9117 Title: item.Name, 9118 ItemId: item.ProductID, 9119 Categories: item.Categories, 9120 ImageUrl: item.ImageURL, 9121 Url: item.URL, 9122 Metadata: { 9123 Brand: item.Brand, 9124 Price: item.Price, 9125 CompareAtPrice: item.CompareAtPrice 9126 } 9127 }]); 9128 9129 document.querySelector('[data-add-to-cart]').addEventListener('click', function() { 9130 _learnq.push(['track', 'Added to Cart', item]); 9131 }); 9132 })(); 9133</script>
9133 9134 9135 9136 9137 9138 9139
9139<script src="https://cdn-widgetsrepository.yotpo.com/v1/loader/f6I2gGsRTLxkuyPSEa7w6pjZ87abdrjs62VeHNkF" async></script>
9139 9140 9141
9142<script 9143 id="__ada" 9144 data-handle="timbuk2" 9145 src="https://static.ada.support/embed2.js" 9146 ></script>
9146 9147 9148
9148<script> 9149 document.addEventListener("DOMContentLoaded", function () { 9150 var launchChat = document.getElementById("launch-chat"); 9151 if (launchChat) { 9152 launchChat.addEventListener("click", function () { 9153 window.adaEmbed.toggle(); 9154 }); 9155 } 9156 }); 9157 </script>
9157<style> #gorgias-chat-container {display: none;} .minicart__additional-checkout-buttons {display: none;} @media (min-width: 768px) {.product-dimensions__wrap {width: 70%; }} @media (max-width: 767px) {.product_visualizer-container--sticky {position: relative !important; top: 0 !important; }} </style> 9158<div id="shopify-block-AWHE2T09FSUhEck9pT__1744161739547163668" class="shopify-block shopify-app-block">
9158<script type="application/javascript"> 9159 window.hextom_ctb_meta = { 9160 p1: [ 9161 9162 9163 "REFFO ETAILIFFA" 9164 , 9165 9166 "relloR-yrogetac" 9167 , 9168 9169 "kcehcreven-noitcelloc" 9170 , 9171 9172 "snemoWlla-snoitcelloc" 9173 , 9174 9175 "srellestseb-snoitcelloc" 9176 , 9177 9178 "nOyrrac-snoitcelloc" 9179 , 9180 9181 "egaggulnoyrrac-snoitcelloc" 9182 , 9183 9184 "egaggul-snoitcelloc" 9185 , 9186 9187 "levart-snoitcelloc" 9188 , 9189 9190 "dnekeew-snoitcelloc" 9191 , 9192 9193 "esactiuS_retlif" 9194 , 9195 9196 "RELLES TSEB-galf" 9197 , 9198 9199 "elytSeerF" 9200 , 9201 9202 "redro-erp" 9203 , 9204 9205 "2kubmiT-etis" 9206 , 9207 9208 "tnuocsidffats" 9209 , 9210 9211 "egagguL-yrogetacbus" 9212 , 9213 9214 "detar-pot" 9215 , 9216 9217 "1levarT-cgu" 9218 , 9219 9220 "stcudorp tnenopmoc eldnub 1V" 9221 , 9222 9223 "egagguL_elytSeerF _puorGY" 9224 9225 9226 9227 ], 9228 p2: { 9229 9230 }, 9231 p3:7735073144874, 9232 p4:[302250164266,137647816746,59970977834,59972649002,183667851306,270949220394,59972583466,303514615850,261032116266,261007441962,267640143914,290368356394,261411766314,59972550698,59971600426,173043449898,302027702314,59972616234,59971010602,59971960874], 9233 p5:null, 9234 }; 9235 9236 window.hextom_epb_config = {"shop_active":"yes","record":false,"bars":[{"bar_id":281950,"name":"Spring Sale","position":"top_push_sticky_v1","adjacent_placement_query":"","adjacent_placement_position":"beforebegin","background_color":"#2D3142","text_color":"#ffffff","clock_color":"#ffffff","clock_background_color":"#999999","button_background_color":"#FFC229","button_text_color":"#332007","button_disable":true,"new_tab":true,"font":"inherit","font_size":12.0,"bar_padding":2.0,"message_one":"Shop Spring Sale. Ends:","message_two":"","button_text":"See deals","button_link":"https://www.timbuk2.com/collections/sale","start_on":"2026-03-26T19:02:49.125000+00:00","end_on":"2026-04-01T06:59:00+00:00","time_zone_type":"customer","time_zone_offset":420,"campaign_start_type":"now","campaign_end_type":"scheduled","show_time":0.0,"interval_time":0.0,"animation_time":0.0,"countries":"","exclude_countries":"","display_page":"{\"all\":true,\"home\":false,\"products\":{\"isTargeting\":false,\"all\":true,\"tags\":\"\",\"productIds\":\"\",\"collectionIds\":\"\"},\"collections\":{\"isTargeting\":false,\"all\":true,\"collectionIds\":\"\"},\"urls\":\"\",\"keywords\":\"\"}","exclude_page":"{\"noPages\":true,\"home\":false,\"products\":{\"isTargeting\":false,\"all\":true,\"tags\":\"\",\"productIds\":\"\",\"collectionIds\":\"\"},\"collections\":{\"isTargeting\":false,\"all\":true,\"collectionIds\":\"\"},\"urls\":\"\",\"keywords\":\"\"}","source_page":"any","clock_type":"event","daily_start_on":"2000-01-01T05:00:00+00:00","daily_end_on":"2000-01-02T04:59:00+00:00","daily_start_time_hours":"21","daily_start_time_minutes":"0","daily_end_time_hours":"20","daily_end_time_minutes":"59","recur_active_hour":48.0,"recur_inactive_hour":24.0,"is_recur_cookied":false,"fixed_minutes":90.0,"clock_lang":"en","show_timer_labels":true,"background_pic":"","target_device":"all","opacity":1.0,"entire_bar_clickable":true,"selected_weekdays":"1,2,3,4,5,6,0","close_option":false,"button_animation":"","custom_code":"","selected_products_type":"all","selected_products":"","selected_products_tag":"","selected_customers_types":"{\"tag\":false,\"spent\":false,\"loggedIn\":false}","selected_customers_tag":"","selected_customers_spent_object":"{\"comparisonOperator\":\">\",\"value\":0}","excluded_customers_types":"{\"tag\":false,\"spent\":false,\"loggedIn\":false}","excluded_customers_tag":"","excluded_customers_spent_object":"{\"comparisonOperator\":\">\",\"value\":0}","background_type":"color","gradient_color_1":"","gradient_color_2":"","gradient_color_3":"","gradient_degree":90,"motion_code":"","background_moving_speed":0,"button_link_insert_language_code":false,"targeted_markets_region_codes":"","timer_style":"square_tiles","hideSeconds":"none","js_timer_font_family":"inherit","js_timer_separator_color":"#ffffff","js_timer_clock_background_color_2":"#999999","js_timer_label_day":"DAYS","js_timer_label_hrs":"HRS","js_timer_label_min":"MIN","js_timer_label_sec":"SEC","translation":"","locales":[]}]}; 9237 9238</script>
9238 9239 9240</div><div id="shopify-block-AbmR4ZVhWZXJvS2NJQ__2786716548061469553" class="shopify-block shopify-app-block"> 9241
9242<script> 9243</script>
9243 9244 9245 </div>
9245<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
9245 9246</body> 9247</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.