PageSourceSearch

https://www.teknikhandholds.com/blogs/tekkies

html teknikhandholds.com collected 2026-10-06 06:07:57 UTC 64,401 bytes, 1,022 lines download raw bytes

1<!doctype html>
2<!--[if lt IE 7 ]> <html lang="en" class="no-js ie6"> <![endif]-->
3<!--[if IE 7 ]>    <html lang="en" class="no-js ie7"> <![endif]-->
4<!--[if IE 8 ]>    <html lang="en" class="no-js ie8"> <![endif]-->
5<!--[if (gt IE 9)|!(IE)]><!--> <html lang="en" class="no-js"> <!--<![endif]-->
6<head>
7  <meta name="google-site-verification" content="b4RT_OTVdNYlcTaEeAmhLbA96TZGhM8wj5WDBzEARSA" />
8  <meta charset="UTF-8">
9  <!--[if IE]><meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'><![endif]-->
10  <link rel="canonical" href="https://www.teknikhandholds.com/blogs/tekkies" />
11
12  
13  <meta name="description" content="Blog for Teknik enthusiasts and wall ninjas. Indoor climbing is the best. Climbing holds are fun." />
14  
15
16  
17  <title>Tekkies | Teknik* Handholds</title>
18  
19
20  
21
22
23  
24    <meta property="og:image" content="http://www.teknikhandholds.com/cdn/shop/t/2/assets/logo.png?v=159037200813513028681599151125" />
25  
26
27
28  
29
30  <link href="//www.teknikhandholds.com/cdn/shop/t/2/assets/style.scss.css?v=130985545499934062851787514450" rel="stylesheet" type="text/css" media="all" />
31  
31<script src="//www.teknikhandholds.com/cdn/shop/t/2/assets/modernizr.js?v=136554011001666959481387325759" type="text/javascript"></script>
31
32  
32<script src="//www.teknikhandholds.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
32
33  
34
35  
35<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js" type="text/javascript"></script>
35
36  
36<script src="//www.teknikhandholds.com/cdn/shop/t/2/assets/yui_gallery.jquery.js?v=58489455621338788591408224797" type="text/javascript"></script>
36
37  
37<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
37<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/3221665/digital_wallets/dialog">
38<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" type="application/atom+xml" title="Feed" href="/blogs/tekkies.atom" />
39<link rel="next" href="/blogs/tekkies?page=2">
40<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
40
41<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
42<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=3221665" crossorigin="anonymous"></script>
vendor: 1 bytes, line 42
42
43<script id="shopify-features" type="application/json">{"accessToken":"d16f52b5a42314c42683d46d6b821235","betas":["rich-media-storefront-analytics"],"domain":"www.teknikhandholds.com","predictiveSearch":true,"shopId":3221665,"locale":"en"}</script>
vendor: 1 bytes, line 43
43
44<script>var Shopify = Shopify || {};
45Shopify.shop = "teknik-hand-holds-2.myshopify.com";
46Shopify.locale = "en";
47Shopify.currency = {"active":"USD","rate":"1.0"};
48Shopify.country = "US";
49Shopify.theme = {"name":"Radiance","id":5756737,"schema_name":null,"schema_version":null,"theme_store_id":176,"role":"main"};
50Shopify.theme.handle = "null";
51Shopify.theme.style = {"id":null,"handle":null};
52Shopify.cdnHost = "www.teknikhandholds.com/cdn";
53Shopify.routes = Shopify.routes || {};
54Shopify.routes.root = "/";
55Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
56Shopify.SignInWithShop = Shopify.SignInWithShop || {};
57Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
58Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 58
58
59<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 59
59
60<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 60
60
61<script>
62  window.ShopifyPay = window.ShopifyPay || {};
63  window.ShopifyPay.apiHost = "shop.app\/pay";
64  window.ShopifyPay.redirectState = null;
65</script>
vendor: 1 bytes, line 65
65
66<script>
67  window.Shopify = window.Shopify || {};
68  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
69  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
70  window.Shopify.SignInWithShop.eligible = true;
71</script>
vendor: 1 bytes, line 71
71
72<script id="shop-js-analytics" type="application/json">{"pageType":"blog"}</script>
vendor: 1 bytes, line 72
72
73<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 73
73
74<script type="module">
75  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
76
77  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
78
79</script>
vendor: 1 bytes, line 79
79
80<script>
81  window.Shopify = window.Shopify || {};
82  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
83  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"]};
84</script>
vendor: 1 bytes, line 84
84
85<script id="__st">var __st={"a":3221665,"offset":-21600,"reqid":"7e1a1ba3-fbef-4a4c-93fc-b34732aada73-1791266877","pageurl":"www.teknikhandholds.com\/blogs\/tekkies","s":"blogs-3607609","u":"959161a386d5","p":"blog","rtyp":"blog","rid":3607609};</script>
vendor: 1 bytes, line 85
85
86<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 86
86
87<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 87
87
88<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.teknikhandholds.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 88
88
89<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.teknikhandholds.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>
89<script crossorigin="anonymous" defer="defer" src="//www.teknikhandholds.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 89
89
90<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 90
90
91<script>
92  window.Shopify = window.Shopify || {};
93  window.Shopify.MCP = window.Shopify.MCP || {};
94  window.Shopify.MCP.enabled = true;
95  window.Shopify.MCP.shop = "teknik-hand-holds-2.myshopify.com";
96  window.Shopify.MCP.mcpEndpoint = "https:\/\/www.teknikhandholds.com\/api\/mcp";
97  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\nSet policy_types to also get the store's written policies (full text and URL).\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}];
98</script>
vendor: 1 bytes, line 98
98
99<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.teknikhandholds.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
100</script>
vendor: 1 bytes, line 100
100
101<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.teknikhandholds.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
102</script>
vendor: 1 bytes, line 102
102
103<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
104  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);
105</script>
vendor: 1 bytes, line 105
105
106<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})}}));
107</script>
107
108<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.teknikhandholds.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
109<style id="shopify-accelerated-checkout-cart">
110        #shopify-buyer-consent {
111  margin-top: 1em;
112  display: inline-block;
113  width: 100%;
114}
115
116#shopify-buyer-consent.hidden {
117  display: none;
118}
119
120#shopify-subscription-policy-button {
121  background: none;
122  border: none;
123  padding: 0;
124  text-decoration: underline;
125  font-size: inherit;
126  cursor: pointer;
127}
128
129#shopify-subscription-policy-button::before {
130  box-shadow: none;
131}
132
133      </style>
134
135<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
135
136    
137  <link rel="shortcut icon" href="//www.teknikhandholds.com/cdn/shop/t/2/assets/favicon.ico?v=167511380925603372811387842940" type="image/ico" />
138  <link href='//fonts.googleapis.com/css?family=Titillium+Web:300' rel='stylesheet' type='text/css'>
139  <link href='//fonts.googleapis.com/css?family=Raleway:300' rel='stylesheet' type='text/css'>
140<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
141<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: 3221665,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "blog"};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 141
141
142<script>
143  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
144</script>
vendor: 1 bytes, line 144
144
145<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}
145).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: 3221665,storefrontBaseUrl: "https://www.teknikhandholds.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.teknikhandholds.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"105087135","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS"],"name":"Google Analytics tag (migrated)"},{"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":"Teknik* Handholds","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"teknik-hand-holds-2.myshopify.com","countryCode":"CA","storefrontUrl":"https:\/\/www.teknikhandholds.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.teknikhandholds.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"5756737","themeStoreId":"176","themePublished":"true","eventMetadataId":"23a5
145db9a-a5ab-4c81-bf9d-77de6a214565","pageType":"blog","resourceId":"3607609","shopId":"3221665","storefrontBaseUrl":"https:\/\/www.teknikhandholds.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
145<script>
146  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
147  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
148  window.ShopifyAnalytics.meta.currency = 'USD';
149  var meta = {"page":{"pageType":"blog","resourceType":"blog","resourceId":3607609,"requestId":"7e1a1ba3-fbef-4a4c-93fc-b34732aada73-1791266877"}};
150  for (var attr in meta) {
151    window.ShopifyAnalytics.meta[attr] = meta[attr];
152  }
153</script>
vendor: 1 bytes, line 153
153
154<script class="analytics">
155  (function () {
156    var customDocumentWrite = function(content) {
157      var jquery = null;
158
159      if (window.jQuery) {
160        jquery = window.jQuery;
161      } else if (window.Checkout && window.Checkout.$) {
162        jquery = window.Checkout.$;
163      }
164
165      if (jquery) {
166        jquery('body').append(content);
167      }
168    };
169
170    var hasLoggedConversion = function(token) {
171      if (token) {
172        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
173      }
174      return false;
175    }
176
177    var setCookieIfConversion = function(token) {
178      if (token) {
179        var twoMonthsFromNow = new Date(Date.now());
180        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
181
182        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
183      }
184    }
185
186    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
187    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
188    if (trekkie.integrations) {
189      return;
190    }
191    trekkie.methods = [
192      'identify',
193      'page',
194      'ready',
195      'track',
196      'trackForm',
197      'trackLink'
198    ];
199    trekkie.factory = function(method) {
200      return function() {
201        var args = Array.prototype.slice.call(arguments);
202        args.unshift(method);
203        trekkie.push(args);
204        if (method == 'track' || method == 'page') {
205          var pageUrl;
206          try {
207            pageUrl = window.location.href;
208          } catch (e) {}
209          var pageReferrer;
210          try {
211            pageReferrer = document.referrer;
212          } catch (e) {}
213          try {
214            if (window.__TREKKIE_SHIM_QUEUE == null) {
215              window.__TREKKIE_SHIM_QUEUE = [];
216            }
217            window.__TREKKIE_SHIM_QUEUE.push({
218              from: 'trekkie-stub',
219              method: method,
220              args: args.slice(1),
221              pageContext: {
222                url: pageUrl,
223                referrer: pageReferrer
224              }
225            });
226          } catch (e) {
227            // no-op
228          }
229        }
230        return trekkie;
231      };
232    };
233    for (var i = 0; i < trekkie.methods.length; i++) {
234      var key = trekkie.methods[i];
235      trekkie[key] = trekkie.factory(key);
236    }
237    trekkie.load = function(config) {
238      trekkie.config = config || {};
239      trekkie.config.initialDocumentCookie = document.cookie;
240      var first = document.getElementsByTagName('script')[0];
241var script = document.createElement('script');
242script.type = 'text/javascript';
243script.onerror = function(e) {
244  var scriptFallback = document.createElement('script');
245  scriptFallback.type = 'text/javascript';
246  scriptFallback.onerror = function(error) {
247          var Monorail = {
248      produce: function produce(monorailDomain, schemaId, payload) {
249        var currentMs = new Date().getTime();
250        var event = {
251          schema_id: schemaId,
252          payload: payload,
253          metadata: {
254            event_created_at_ms: currentMs,
255            event_sent_at_ms: currentMs
256          }
257        };
258        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
259      },
260      sendRequest: function sendRequest(endpointUrl, payload) {
261        // Try the sendBeacon API
262        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
263          var blobData = new window.Blob([payload], {
264            type: 'text/plain'
265          });
266
267          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
268            return true;
269          } // sendBeacon was not successful
270
271        } // XHR beacon
272
273        var xhr = new XMLHttpRequest();
274
275        try {
276          xhr.open('POST', endpointUrl);
277          xhr.setRequestHeader('Content-Type', 'text/plain');
278          xhr.send(payload);
279        } catch (e) {
280          console.log(e);
281        }
282
283        return false;
284      },
285      isIos12: function isIos12() {
286        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
287      }
288    };
289    Monorail.produce('monorail-edge.shopifysvc.com',
290      'trekkie_storefront_load_errors/1.1',
291      {shop_id: 3221665,
292      theme_id: 5756737,
293      app_name: "storefront",
294      context_url: window.location.href,
295      source_url: "//www.teknikhandholds.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
296
297  };
298  scriptFallback.async = true;
299  scriptFallback.src = '//www.teknikhandholds.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
300  first.parentNode.insertBefore(scriptFallback, first);
301};
302script.async = true;
303script.src = '//www.teknikhandholds.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
304first.parentNode.insertBefore(script, first);
305
306    };
307    trekkie.load(
308      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":3221665,"isMerchantRequest":null,"themeId":5756737,"themeCityHash":"10648597298342762385","contentLanguage":"en","currency":"USD","eventMetadataId":"23a5
308db9a-a5ab-4c81-bf9d-77de6a214565"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}}
309    );
310
311    var loaded = false;
312    trekkie.ready(function() {
313      if (loaded) return;
314      loaded = true;
315
316      window.ShopifyAnalytics.lib = window.trekkie;
317
318      var originalDocumentWrite = document.write;
319      document.write = customDocumentWrite;
320      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
321      document.write = originalDocumentWrite;
322
323      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
324      var token = match? match[1]: undefined;
325      if (!hasLoggedConversion(token)) {
326        setCookieIfConversion(token);
327        
328      }
329    });
330
331    window.ShopifyAnalytics.lib.page(null,{"pageType":"blog","resourceType":"blog","resourceId":3607609,"requestId":"7e1a1ba3-fbef-4a4c-93fc-b34732aada73-1791266877","shopifyEmitted":true});
332
333    var eventsListenerScript = document.createElement('script');
334    eventsListenerScript.async = true;
335    eventsListenerScript.src = "//www.teknikhandholds.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
336    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
337})();</script>
337
338  
338<script>
339  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
340    window.ga = function ga() {
341      (window.ga.q = window.ga.q || []).push(arguments);
342      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
343        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
344      }
345      console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
346    };
347    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
348      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
349    }
350  }
351</script>
vendor: 1 bytes, line 351
351
352<script
353  defer
354  src="https://www.teknikhandholds.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.5.min.js"
355  data-application="storefront-renderer"
356  data-shop-id="3221665"
357  data-render-region="gcp-us-central1"
358  data-page-type="blog"
359  data-theme-instance-id="5756737"
360  data-theme-name=""
361  data-theme-version=""
362  data-monorail-region="shop_domain"
363  data-resource-timing-sampling-rate="10"
364  data-shs="true"
365  data-shs-beacon="true"
366  data-shs-export-with-fetch="true"
367  data-shs-logs-sample-rate="1"
368  data-shs-beacon-endpoint="https://www.teknikhandholds.com/api/collect"
369></script>
369
370<meta name="shopify-y" content="ee14ca1c-7bd9-4352-aa0c-0512864f1661" data-expiration="1822824477000"><meta name="shopify-s" content="33fd686d-fbd1-4674-8878-735ed238cb93" data-expiration="1791268677000"><meta name="new-cookie-storage-activated" content="t">
371</head>
372
373<body class="templateBlog">
374
375
376  <div class="wrapper">
377
378    <!-- Header -->
379    <header id="top" class="clearfix">
380      
381      <h1 id="site-title">
382        <a href="/" title="Home">
383          
384          <img src="//www.teknikhandholds.com/cdn/shop/t/2/assets/logo.png?v=159037200813513028681599151125" alt="Teknik* Handholds" />
385          
386        </a>
387      </h1>
388
389      <nav id="top-menu" class="clearfix">
390        <ul>
391          
392          <li class="first">
393            
394            
395              <a href="/">Home</a>
396            
397          </li>
398          
399          <li class="">
400            
401            
402            <div class="has-dropdown">
403              <a href="/pages/holds" class="clearfix">
404                <span class="nav-label">Holds</span>
405              </a>
406              <ul>
407                
408                <li><a href="/collections/the-newest-holds">The Newest Holds</a></li>
409                
410                <li><a href="/collections/all">All the Holds</a></li>
411                
412                <li><a href="/collections/jugs">Jugs</a></li>
413                
414                <li><a href="/collections/edges">Edges</a></li>
415                
416                <li><a href="/collections/pockets">Pockets</a></li>
417                
418                <li><a href="/collections/pinches">Pinches</a></li>
419                
420                <li><a href="/collections/slopers">Slopers</a></li>
421                
422                <li><a href="/collections/footholds">Footholds</a></li>
423                
424                <li><a href="/collections/screw-ons">Screw Ons</a></li>
425                
426                <li><a href="/collections/indy">Indy</a></li>
427                
428                <li><a href="/collections/mix-packs">Mix Packs</a></li>
429                
430                <li><a href="/collections/ready-to-ship">Ready To Ship</a></li>
431                
432              </ul>
433            </div>
434            
435          </li>
436          
437          <li class="">
438            
439            
440            <div class="has-dropdown">
441              <a href="/pages/tekstras" class="clearfix">
442                <span class="nav-label">Tekstras</span>
443              </a>
444              <ul>
445                
446                <li><a href="/collections/soft-goods">Soft Goods</a></li>
447                
448                <li><a href="/collections/stickers">Stickers</a></li>
449                
450                <li><a href="/products/gift-card">Gift Card</a></li>
451                
452              </ul>
453            </div>
454            
455          </li>
456          
457          <li class="">
458            
459            
460            <div class="has-dropdown">
461              <a href="/pages/info" class="clearfix">
462                <span class="nav-label">Info</span>
463              </a>
464              <ul>
465                
466                <li><a href="/pages/team">Our Team</a></li>
467                
468                <li><a href="/pages/faq">FAQ</a></li>
469                
470                <li><a href="/pages/colors">Colors</a></li>
471                
472              </ul>
473            </div>
474            
475          </li>
476          
477          <li class="">
478            
479            
480              <a href="/pages/wholesale">Wholesale </a>
481            
482          </li>
483          
484          <li class="last">
485            
486            
487              <a href="/blogs/tekkies">Blog</a>
488            
489          </li>
490          
491        </ul>
492
493        
494        <form id="header-search" action="/search" method="get">
495          <label for="top-search-input" class="visuallyhidden">Search</label>
496          <input type="text" id="top-search-input" name="q" class="search-input" value="" accesskey="4"  autocomplete="off" placeholder="Search" />
497          <input type="submit" id="top-search-submit" class="search-submit ir" value="Search" />
498        </form>
499        
500      </nav>
501
502      <div id="umbrella">
503        <ul>
504          
505            
506            <li>
507              <a href="/account/login" id="customer_login_link">Log in</a>
508            </li>
509             
510            <li>
511              <a href="/account/register" id="customer_register_link">Create an account</a>
512            </li>
513            
514            
515          
516
517          <li class="cart-link">
518            <a href="/cart" class="num-items-in-cart">
519              <span class="icon">
520               0 items
521              </span>
522            </a>
523          </li>
524
525          <li class="checkout-link">
526            <a href="/cart" class="btn">Check out</a>
527          </li>
528
529        </ul>
530      </div><!-- /#umbrella -->
531    </header>
532
533    <!-- Content -->
534    <div class="content-wrapper clearfix">
535	  	
536      
537      
538      
539        
540
541
542
543
544
545
546
547    
548
549        
550          <style type="text/css">
551    article.post p, h2.title, div.pagination {
552	padding-left: 10px;
553	
554} 
555   h2#page-title{
556	padding: 10px;
557	
558} 
559  article.post p{
560	width: 700px;
561	
562}
563  p.pagination-num-showing{
564    padding-right: 20px;}
565    </style>
566
567<div id="col-main" class="content">
568
569  <div id="page-header">
570    <h2 id="page-title">Tekkies</h2>
571  </div>
572
573  
574
575  
576
577  <article class="post clearfix">
578    <h2 class="title"><a href="/blogs/tekkies/standing-wave">Standing Wave</a></h2>
579
580    <p>It's been almost a year since we released our exalted Standing Wave and we thought it would be fun to show a few pics of their US and Japanese debuts earlier this year.</p>
581<p>Firstable: the Japanese Bouldering Cup. The Standing Wave and the smashing pair of Les Amis were used in both Semi and Final rounds to select the mightiest boulderer in Japan!  </p>
582<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_1067_large.JPG?v=1511981674" alt="" width="634" height="634"></p>
583<p>Above, our Japanese distributer Crux's employee and Crux Kyoto's manager, Atsushi Shimizu. Atsushi was at our Teknik vs Japan event - way back when - as a high schooler, and is still ripping with his fresh and unique climbing style.</p>
584<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_1069_large.JPG?v=1511981680" alt="" width="617" height="478"></p>
585<p>Above, two of the very, very best in the world: Tomoa Narasaki and Kokoro Fujii. How can it get any better than Standing Waves on mirrored boulder problems, with these two..?</p>
586<p>Then, it made it's North American debut at the USAC Bouldering National Championships. Here are some behind-the-scenes pics of the Standing Waves being prepped, arranged and then mounted</p>
587<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/Bouldering_Open_Nationals_Teknik_Payne_14_large.jpg?v=1511981792" alt="" width="309" height="204"><img src="//cdn.shopify.com/s/files/1/0322/1665/files/Bouldering_Open_Nationals_Teknik_Payne_6_large.jpg?v=1511981744" alt="" width="307" height="204"></p>
588<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/Bouldering_Open_Nationals_Teknik_Payne_7_large.jpg?v=1511981764" alt="" width="617" height="411"></p>
589<p> </p>
590<p>Then some in-front-of-the-scenes pics of the moves being sent upon, thusly:</p>
591<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/Bouldering_Open_Nationals_Teknik_Payne_4_large.jpg?v=1511981727" alt="" width="308" height="205"><img src="//cdn.shopify.com/s/files/1/0322/1665/files/Bouldering_Open_Nationals_Teknik_Payne_3_large.jpg?v=1511981714" alt="" width="309" height="205"></p>
592<p>Above, the magnificent Carlos Traversi and the singular Josh Larson just flying around on these things.</p>
593<p>Lastable, a pic I took of a Standing Wave at my local bouldering gym that I loved and could juuuuust about almost do.. But couldn't, and I didn't</p>
594<p><img src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_3521_large.JPG?v=1511985311" alt="" width="309" height="309"><img src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_3520_large.JPG?v=1511985320" alt="" width="309" height="309"> </p>
595<p> Until next time!</p>
596
597    <footer class="article-extras clearfix">
598      <p class="author">Written by Zoe Johnston &mdash; March 01, 2021</p> <br/>
599      <p class="comments-link">
600        
601          <span class="disabled">Comments disabled</span>
602        
603      </p>
604    </footer><!-- /.article-extras -->
605  </article>
606
607  
608
609  <article class="post clearfix">
610    <h2 class="title"><a href="/blogs/tekkies/160316743-plats-international-inauguration-at-the-japan-world-cup">Plats international inauguration at the Japan World Cup!</a></h2>
611
612    <p>Our new Overplats and Gigantiplats made their World Cup debut this past weekend at Kazo, Japan in the Men's Finals. They are the horribly challenging but beautiful white slopers on Men's 2 and 4. </p>
613<p> </p>
614<p><iframe width="560" height="315" src="https://www.youtube.com/embed/jpG7NlG4gzo" frameborder="0" allowfullscreen=""></iframe></p>
615
616    <footer class="article-extras clearfix">
617      <p class="author">Written by Zoe Johnston &mdash; March 01, 2021</p> <br/>
618      <p class="comments-link">
619        
620          <span class="disabled">Comments disabled</span>
621        
622      </p>
623    </footer><!-- /.article-extras -->
624  </article>
625
626  
627
628  <article class="post clearfix">
629    <h2 class="title"><a href="/blogs/tekkies/150810823-usac-sport-climbing-national-championships-mens-finals">USAC Sport Climbing National Championships - Men&#39;s Finals!!</a></h2>
630
631    <p>Teknik holds were used for the Men's Finals.</p>
632<p>For your viewing enjoyments, simply click the link and see it through your eyes:</p>
633<p><iframe width="560" height="315" src="https://www.youtube.com/embed/tjnPLkywgoo" frameborder="0" allowfullscreen=""></iframe></p>
634<p> </p>
635
636    <footer class="article-extras clearfix">
637      <p class="author">Written by Seth Johnston &mdash; April 11, 2016</p> <br/>
638      <p class="comments-link">
639        
640          <span class="disabled">Comments disabled</span>
641        
642      </p>
643    </footer><!-- /.article-extras -->
644  </article>
645
646  
647
648  <article class="post clearfix">
649    <h2 class="title"><a href="/blogs/tekkies/135879687-teknik-with-footless-ness">Teknik with footless-ness</a></h2>
650
651    <p>The fantastic folks at Beastmaker and the BMC kindly invited Teknik to be a part of their annual footless climbing competition - the BIFF</p>
652<p>Well, we couldn't even countenance not being involved with an event such as this! So we sent some holds, and they got used, thusly:</p>
653<p><iframe width="480" height="270" src="//embed.mediatank.io/video?id=2303&amp;token=3af2c52b1cd3a3a1462c1ae9&amp;controls=1" frameborder="0" allowfullscreen=""></iframe></p>
654<p><a href="http://tv.thebmc.co.uk/videos/the-biff-2016/">The BIFF 2016</a></p>
655
656    <footer class="article-extras clearfix">
657      <p class="author">Written by Seth Johnston &mdash; March 15, 2016</p> <br/>
658      <p class="comments-link">
659        
660          <span class="disabled">Comments disabled</span>
661        
662      </p>
663    </footer><!-- /.article-extras -->
664  </article>
665
666  
667
668  <article class="post clearfix">
669    <h2 class="title"><a href="/blogs/tekkies/129343367-teknik-handholds-as-art-in-germany">Teknik Handholds as art in Germany</a></h2>
670
671    <p>Thanks to our friends at Studio Bloc in Germany for this ridiculous image!</p>
672<p><br><img alt="" src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_2752_grande.JPG?15611761996589270328" style="float: none;"></p>
673
674    <footer class="article-extras clearfix">
675      <p class="author">Written by Seth Johnston &mdash; March 04, 2016</p> <br/>
676      <p class="comments-link">
677        
678          <span class="disabled">Comments disabled</span>
679        
680      </p>
681    </footer><!-- /.article-extras -->
682  </article>
683
684  
685
686  <article class="post clearfix">
687    <h2 class="title"><a href="/blogs/tekkies/126778503-team-tekniks-tonde-katiyo-setting-for-some-of-the-best-climbers-in-japan">Team Teknik&#39;s Tonde Katiyo setting for some of the best climbers in Japan</a></h2>
688
689    <p>Tonde was in Japan recently doing one of his routesetting clinics, watch the vid below:</p>
690<p><iframe width="560" height="315" src="https://www.youtube.com/embed/NOIqLzjFj8E" frameborder="0" allowfullscreen=""></iframe></p>
691
692    <footer class="article-extras clearfix">
693      <p class="author">Written by Seth Johnston &mdash; February 29, 2016</p> <br/>
694      <p class="comments-link">
695        
696          <span class="disabled">Comments disabled</span>
697        
698      </p>
699    </footer><!-- /.article-extras -->
700  </article>
701
702  
703
704  <article class="post clearfix">
705    <h2 class="title"><a href="/blogs/tekkies/112565703-over-plats-and-gigantiplats-added">Over Plats and Gigantiplats added</a></h2>
706
707    <p>Our new <a href="http://www.teknikhandholds.com/collections/slopers/products/over-plats" target="_blank">Over Plats</a> and <a href="http://www.teknikhandholds.com/collections/slopers/products/gigantiplats" target="_blank">Gigantiplats</a> are now online! </p>
708<p>I photographed these the other day at high noon, but ’tis the wintery season up here in Canada when the sun tends to roll across the horizon.. I may have to re-shoot when we get a more favorable trajectory from our star ;)</p>
709<p style="text-align: left;">These big boys are huge, slopey, and just plain sick. It was awesome to see America's top male climbers being challenged by these shapes on men's Finals problem #1 at the US Bouldering Nationals last weekend! You can watch the finals round <a href="http://lt11.tv/2016/01/05/2016-bouldering-national-championships-%E2%80%A2-finals/" target="_blank">here</a>. </p>
710<meta charset="utf-8">
711<p style="text-align: left;">Overplats:</p>
712<p style="text-align: left;"><img src="//cdn.shopify.com/s/files/1/0322/1665/files/OPLs_large.jpg?13357836298372259668" alt=""></p>
713<p style="text-align: left;">Gigantiplats:</p>
714<p style="text-align: left;"><img src="//cdn.shopify.com/s/files/1/0322/1665/files/GGPLs_large.jpg?13357836298372259668" alt=""></p>
715<p style="text-align: left;"> </p>
716
717    <footer class="article-extras clearfix">
718      <p class="author">Written by Zoe Johnston &mdash; February 02, 2016</p> <br/>
719      <p class="comments-link">
720        
721          <span class="disabled">Comments disabled</span>
722        
723      </p>
724    </footer><!-- /.article-extras -->
725  </article>
726
727  
728
729  <article class="post clearfix">
730    <h2 class="title"><a href="/blogs/tekkies/107299463-gigantiplat">Gigantiplat</a></h2>
731
732    <blockquote class="instagram-media" data-instgrm-captioned="" data-instgrm-version="6" style="background: #FFF; border: 0; border-radius: 3px; box-shadow: 0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width: 658px; padding: 0; width: calc(100% - 2px);">
733<div style="padding: 8px;">
734<div style="background: #F8F8F8; line-height: 0; margin-top: 40px; padding: 50.0% 0; text-align: center; width: 100%;">
735<div style="display: block; height: 44px; margin: 0px auto -44px; position: relative; top: -22px; width: 44px; text-align: left;"></div>
736</div>
737<p style="margin: 8px 0 0 0; padding: 0 4px;"><a href="https://www.instagram.com/p/BA2eTu3Q3AN/" style="color: #000; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: normal; line-height: 17px; text-decoration: none; word-wrap: break-word;" target="_blank">This is a Gigantiplat. It is one hold from the massive Gigantiplat set of 5. These, and the 5 new Overplats will debut at next week's USAC Bouldering Nationals! NKR1 and Hulk hold in photo for size reference.</a></p>
738<p style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; line-height: 17px; margin-bottom: 0; margin-top: 8px; overflow: hidden; padding: 8px 0 7px; text-align: center; text-overflow: ellipsis; white-space: nowrap;">A photo posted by Teknik Handholds (@teknikhandholds) on <time style="font-family: Arial,sans-serif; font-size: 14px; line-height: 17px;" datetime="2016-01-22T18:20:04+00:00">Jan 22, 2016 at 10:20am PST</time></p>
739</div>
740</blockquote>
741<script async="" defer src="//platform.instagram.com/en_US/embeds.js"></script>
741
742
743    <footer class="article-extras clearfix">
744      <p class="author">Written by Zoe Johnston &mdash; January 22, 2016</p> <br/>
745      <p class="comments-link">
746        
747          <span class="disabled">Comments disabled</span>
748        
749      </p>
750    </footer><!-- /.article-extras -->
751  </article>
752
753  
754
755  <article class="post clearfix">
756    <h2 class="title"><a href="/blogs/tekkies/79872199-more-plats">more Plats!</a></h2>
757
758    <p>Plats, Plats, Plats. Ooohhhh, Plats!!</p>
759<p>Gigantiplats and Overplats - molding soon to be completed and ready for you hands to grab upon </p>
760<p style="text-align: left;"><img alt="" src="//cdn.shopify.com/s/files/1/0322/1665/files/IMG_2717_00785f9f-5c8d-44b4-8b9a-87e5db81fe64_grande.JPG?12902133440436514717" style="float: none;"></p>
761
762    <footer class="article-extras clearfix">
763      <p class="author">Written by Seth Johnston &mdash; November 23, 2015</p> <br/>
764      <p class="comments-link">
765        
766          <span class="disabled">Comments disabled</span>
767        
768      </p>
769    </footer><!-- /.article-extras -->
770  </article>
771
772  
773
774  <article class="post clearfix">
775    <h2 class="title"><a href="/blogs/tekkies/55440897-gigantiplats-are-on-the-table">Gigantiplats are on the table..</a></h2>
776
777    <br>
778<blockquote class="instagram-media" data-instgrm-captioned="" data-instgrm-version="5" style="background: #FFF; border: 0; border-radius: 3px; box-shadow: 0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width: 658px; padding: 0; width: calc(100% - 2px);">
779<div style="padding: 8px;">
780<div style="background: #F8F8F8; line-height: 0; margin-top: 40px; padding: 50.0% 0; text-align: center; width: 100%;">
781<div style="background: url(data:image/png; base64,ivborw0kggoaaaansuheugaaacwaaaascamaaaapwqozaaaagfbmveuiiii9pt0ehh4gib4hibkchbwchbwchbydr+jqaaaachrstlmaba4yhyqsm5jtamwaaadfsurbvdjl7zvbegmhcaqbaf//42xcnbpaqakcm0ftumfaaibe81iqbjds3ls6zs3bipb9wed3yyxfpmhrft8sgyrcp1x8ueuxlmznwelfoycv6mhwwwmzdpekhlhlw7nwjqkhc4uizphavdza2jpzudsbzzinae2s6owh8xpmx8g7zzgkeopuoyhvgz1tbcxmkd3kwnvbu0gkhkx+izilf77iofhry1nyfnb/lqpb79drwoyjva/davg9b/rlb4cc+nqgdz/tvbbbnr6gbreqn/nrmdgaqeej7whonozjf+y2i/fzou/qaaaaaelftksuqmcc); display: block; height: 44px; margin: 0 auto -44px; position: relative; top: -22px; width: 44px;"></div>
782</div>
783<p style="margin: 8px 0 0 0; padding: 0 4px;"><a href="https://instagram.com/p/91jn4Jw3Fn/" style="color: #000; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: normal; line-height: 17px; text-decoration: none; word-wrap: break-word;" target="_blank">Gigantiplats</a></p>
784<p style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; line-height: 17px; margin-bottom: 0; margin-top: 8px; overflow: hidden; padding: 8px 0 7px; text-align: center; text-overflow: ellipsis; white-space: nowrap;">A photo posted by Teknik Handholds (@teknikhandholds) on <time style="font-family: Arial,sans-serif; font-size: 14px; line-height: 17px;" datetime="2015-11-08T20:13:05+00:00">Nov 8, 2015 at 12:13pm PST</time></p>
785</div>
786</blockquote>
787<script async="" defer src="//platform.instagram.com/en_US/embeds.js"></script>
787
788
789    <footer class="article-extras clearfix">
790      <p class="author">Written by Zoe Johnston &mdash; November 08, 2015</p> <br/>
791      <p class="comments-link">
792        
793          <span class="disabled">Comments disabled</span>
794        
795      </p>
796    </footer><!-- /.article-extras -->
797  </article>
798
799  
800
801  
802<div class="pagination">
803
804  <ul>
805    
806      <li class="prev disabled"><a href="#" onclick="return false;">&laquo; Previous</a></li>
807    
808    
809    
810      
811        
812        <li class="active"><a href="" title="">1</a></li>
813        
814      
815    
816      
817        <li><a href="/blogs/tekkies?page=2" title="">2</a></li>
818      
819         
820
821    
822      <li class="next"><a href="/blogs/tekkies?page=2" title="">Next &raquo;</a></li>
823        
824  </ul>
825
826
827  <p class="pagination-num-showing">
828  Showing: 1-10 of 14
829  </p>
830</div>
831
832
833
834  
835
836</div> <!-- /#col-main -->
837        
838      
839
840      
841        <div id="col-widgets">
842
843  
844
845  
846  <!-- Widget: list all collections -->
847  <div class="widget widget-linklist" id="widget-allcollections">
848    <div class="widget-header">
849      <h3><a href="/collections">Product Categories</a></h3>
850    </div>
851    <div class="widget-content">
852      <ul>
853      
854        <li>
855          <span class="arrow"></span>
856          <a href="/collections/all" title="All">All</a>
857        </li>
858      
859        <li>
860          <span class="arrow"></span>
861          <a href="/collections/competition-portfolio" title="Competition Portfolio">Competition Portfolio</a>
862        </li>
863      
864        <li>
865          <span class="arrow"></span>
866          <a href="/collections/edges" title="Edges">Edges</a>
867        </li>
868      
869        <li>
870          <span class="arrow"></span>
871          <a href="/collections/footholds" title="Footholds">Footholds</a>
872        </li>
873      
874        <li>
875          <span class="arrow"></span>
876          <a href="/collections/indy" title="Indy">Indy</a>
877        </li>
878      
879        <li>
880          <span class="arrow"></span>
881          <a href="/collections/jugs" title="Jugs">Jugs</a>
882        </li>
883      
884        <li>
885          <span class="arrow"></span>
886          <a href="/collections/mix-packs" title="Mix Packs">Mix Packs</a>
887        </li>
888      
889        <li>
890          <span class="arrow"></span>
891          <a href="/collections/pinches" title="Pinches">Pinches</a>
892        </li>
893      
894        <li>
895          <span class="arrow"></span>
896          <a href="/collections/pockets" title="Pockets">Pockets</a>
897        </li>
898      
899        <li>
900          <span class="arrow"></span>
901          <a href="/collections/ready-to-ship" title="Ready To Ship">Ready To Ship</a>
902        </li>
903      
904        <li>
905          <span class="arrow"></span>
906          <a href="/collections/screw-ons" title="Screw-Ons">Screw-Ons</a>
907        </li>
908      
909        <li>
910          <span class="arrow"></span>
911          <a href="/collections/slopers" title="Slopers">Slopers</a>
912        </li>
913      
914        <li>
915          <span class="arrow"></span>
916          <a href="/collections/soft-goods" title="Soft Goods">Soft Goods</a>
917        </li>
918      
919        <li>
920          <span class="arrow"></span>
921          <a href="/collections/stickers" title="Stickers">Stickers</a>
922        </li>
923      
924        <li>
925          <span class="arrow"></span>
926          <a href="/collections/tekstras" title="Tekstras">Tekstras</a>
927        </li>
928      
929        <li>
930          <span class="arrow"></span>
931          <a href="/collections/the-newest-holds" title="The Newest Holds">The Newest Holds</a>
932        </li>
933      
934      </ul>
935    </div>
936  </div><!-- /.widget -->
937  
938
939  
940
941  
942
943  
944
945  
946
947  
948  
949  
950  
951
952</div><!-- /#col-widgets -->
953      
954
955    </div><!-- /.content -->
956
957    
958    
959    
960    <!-- Footer -->
961    <footer id="bottom">
962
963      <div id="footer-right">
964        <ul id="footer-nav" class="clearfix">
965        
966          <li><a href="/pages/terms-and-conditions">Terms and Conditions</a></li>
967        
968        </ul>
969        <p >&copy; 2026 <a href="/">Teknik</a></p>
970      </div>
971      
972      <div id="footer-left">
973        <ul id="sm-icons" class="clearfix">
974          
975          <li><a href="https://www.facebook.com/teknik.handholds" title="Teknik* Handholds on Facebook" class="icon-social facebook ir">Facebook</a></li>
976          
977          
978          <li><a href="https://www.instagram.com/teknikhandholds/" title="Teknik* Handholds on Instagram" class="icon-social instagram ir">Instagram</a></li>
979          
980          
981          
982          
983        </ul>
984      </div>
985
986      
987
988    </footer>
989
990  </div><!-- /.wrapper -->
991
992  <!--[if lt IE 8]>
993  
993<script>
994    // IE 6+7 do not calculate the width of the #umbrella properly
995    $('#umbrella').width( $('#umbrella ul').width() );
996  </script>
996
997  <![endif]-->
998
999
1000  
1001
1002  
1003
1004  
1005
1006  
1006<script src="//www.teknikhandholds.com/cdn/shop/t/2/assets/enhance.jquery.js?v=172925553268100851431405919670" type="text/javascript"></script>
1006
1007  
1007<script src="//www.teknikhandholds.com/cdn/shop/t/2/assets/hoverintent.jquery.js?v=110036310040361601241387325758" type="text/javascript"></script>
1007
1008  
1008<script src="//www.teknikhandholds.com/cdn/shop/t/2/assets/radiance.js?v=141533591496063356461405921825" type="text/javascript"></script>
1008
1009
1010  
1010<script>
1011  //<![CDATA[
1012
1013  // Including api.jquery.js conditionnally.
1014  if (typeof Shopify.onCartShippingRatesUpdate === 'undefined') {
1015    document.write("\u003cscript src=\"\/\/www.teknikhandholds.com\/cdn\/shopifycloud\/storefront\/assets\/themes_support\/api.jquery-7ab1a3a4.js\" type=\"text\/javascript\"\u003e\u003c\/script\u003e");
1016  }
1017
1018  //]]>
1019  </script>
vendor: 1 bytes, line 1019
1019
1020<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
1020
1021</body>
1022</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.