CINXE.COM

Shop.BostonDynamics.com | Carhartt Watch Cap 2.0

<!DOCTYPE html> <html lang="en"> <!-- begin::Head --> <head> <base href=""> <meta charset="utf-8" /> <title>Shop.BostonDynamics.com | Carhartt Watch Cap 2.0</title> <meta name="description" content="Welcome to the Boston Dynamics Merch Store! Whether you&#x27;re looking for a great t-shirt, coffee tumbler, or a statement accessory that shows off your love for robots, you&#x27;ve come to the right place!"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="icon" type="image/png" href="/images/theme/favicon.png"> <meta property="og:site_name" content="Shop.BostonDynamics.com | Carhartt Watch Cap 2.0" /> <meta property="og:url" content="https://shop.bostondynamics.com/products/carhartt-watch-cap-2.0" /> <meta property="og:type" content="website" /> <meta property="og:image:width" content="600" /> <meta property="og:image:height" content="800" /> <meta property="og:title" content="Shop.BostonDynamics.com | Carhartt Watch Cap 2.0" /> <meta property="og:description" content="The Carhartt beanie is a stylish and comfortable way to show your support for Boston Dynamics. It is made from a soft, high-quality material that will keep you warm and looking cool." /> <meta property="og:image" content="https://shop.bostondynamics.com/images/Products/CT104597-0.jpg" /> <meta name="htmx-config" content='{"selfRequestsOnly":false,"allowScriptTags":true,"indicatorClass":"htmx-indicator","historyCacheSize":10,"withCredentials":false,"defaultFocusScroll":false,"getCacheBusterParam":false,"globalViewTransitions":false,"antiForgery":{"formFieldName":"__RequestVerificationToken","headerName":"RequestVerificationToken","requestToken":"CfDJ8DoGLwymBAFDgx5dHnZ7qY4mIH024BvsrxbSDHDzY7-YiKWPzys0Kq5eCdEABaeXUcs-ghIivHw2OvjutRpbWIxtsjmJESDquYHyLiC3YwEB3e6KVNraJLbH38W7UG_Z-O9Y08aHggCpUMIlYnnMREM"}}' /> <script src="/htmx/htmx.min.js"></script> <!--begin::Fonts --> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700"> <script src="https://kit.fontawesome.com/1651176a93.js" crossorigin="anonymous"></script> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <!--end::Fonts --> <!--begin::Global Theme Styles(used by all pages) --> <link href="/_frontend/metronic/plugins.bundle.css?v=NAhLPNm6rC31EP_BscO1ci2xnHHM-UeDEhKQwnzXD1Y" rel="stylesheet" type="text/css" /> <link href="/_frontend/metronic/style.bundle.css?v=2Il7vHL56nbjtAP0dZ__DrQWE_pFCvo43nb1l628YO4" rel="stylesheet" type="text/css" /> <!--end::Global Theme Styles --> <!-- custom theme styles --> <link href="/_frontend/style.min.css?v=CZ3l-QrQJnFXYbR2mmKiSjHoxG4ND3lzeOwTXNwLvU8" rel="stylesheet" type="text/css" /> <link href="/_theme/style.css?v=g9rqmuB99i9N5Uvuev0KEviktuZJa2dvmUzF55-2wNQ" rel="stylesheet" type="text/css" /> <script src="https://www.google.com/recaptcha/api.js"></script> <style> .btn-primary:hover {&#xD;&#xA; color: #fff;&#xD;&#xA; background-color: #046c96;&#xD;&#xA; border-color: #046c96;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;@media (prefers-reduced-motion: reduce) {&#xD;&#xA;#DiscountCode:focus {&#xD;&#xA; color: #495057;&#xD;&#xA; background-color: #fff;&#xD;&#xA; border-color: #0590c8 !important;&#xD;&#xA; outline: 0;&#xD;&#xA; -webkit-box-shadow: 0 0 0 0.2rem rgba(88, 103, 221, 0.25);&#xD;&#xA; box-shadow: 0 0 0 0.2rem rgba(88, 103, 221, 0.25);&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;.kt-header-menu .kt-menu__nav &gt; .kt-menu__item:hover {&#xD;&#xA; border-bottom: 3px solid #0590c8;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.kt-header-menu .kt-menu__nav &gt; .kt-menu__item {&#xD;&#xA; border-bottom: 3px solid #ffffff;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA; .kt-header__bottom .kt-header-menu-wrapper.kt-header-menu-wrapper--on .kt-header-menu.kt-header-menu-mobile.kt-header-menu-mobile ul.kt-menu__nav li.kt-menu__item .kt-menu__submenu ul.kt-menu__subnav li a.kt-menu__link .kt-menu__link-text{&#xD;&#xA;color: #0590c8 !important;&#xD;&#xA;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;.kt_footer {&#xD;&#xA; background-color: #ffffff;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;#kt_content &gt; div &gt; div &gt; div &gt; div.box-header.kt-ribbon.kt-ribbon--ver.kt-ribbon--bottom.kt-ribbon--shadow.kt-ribbon--round &gt; div {&#xD;&#xA; background-color: #0590c8 !important;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;ul.category-breadcrumbs, ul.category-breadcrumbs li, ul.category-breadcrumbs a, ul.category-breadcrumbs :last-of-type {&#xD;&#xA; background-color: transparent !important;&#xD;&#xA; border-left: none;&#xD;&#xA; color: #0590c8 !important;&#xD;&#xA; font-weight: 500;&#xD;&#xA;&#xD;&#xA; &amp; :hover {&#xD;&#xA; color: #00355a !important;&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;/*&#xD;&#xA;ul.category-breadcrumbs li, */ .category-nav a {&#xD;&#xA; color: #ffffff;&#xD;&#xA; background-color: #0590c8;&#xD;&#xA;&#xD;&#xA; &amp; :hover {&#xD;&#xA; color: #00355a !important;&#xD;&#xA; /* &amp;:last-of-type {&#xD;&#xA; color: #0590c8;&#xD;&#xA; }*/&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;.category-nav a:hover {&#xD;&#xA; background-color: #00355a;&#xD;&#xA; border-radius: 0% !important;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;button.btn, a.btn, .btn {&#xD;&#xA; border-radius: 100px;&#xD;&#xA; padding: 8px 15px;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;body {&#xD;&#xA; font-family: Gotham, Helvetica, sans-serif !important;&#xD;&#xA; color: #031623;&#xD;&#xA; font-weight: 400;&#xD;&#xA;&#xD;&#xA; .primary-color a {&#xD;&#xA; color: #00355a !important;&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;#kt_header_menu &gt; ul &gt; li.kt-menu__item.kt-menu__item--submenu.kt-menu__item--rel &gt; div {&#xD;&#xA; margin-top: 3px;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.kt-header__topbar .kt-header__topbar-item .kt-header__topbar-wrapper .kt-header__topbar-icon {&#xD;&#xA; border-radius: 0% !important;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;#kt_header_mobile_toggler &gt; i, #kt_header_mobile_topbar_toggler &gt; i {&#xD;&#xA; color: #00355a;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;.kt-pagination .kt-pagination__links li.kt-pagination__link--next, .kt-pagination .kt-pagination__links li.kt-pagination__link--prev {&#xD;&#xA; background-color: rgba(255, 255, 255, 0) !important;&#xD;&#xA; border-radius: 50% !important;&#xD;&#xA; color: #000000 !important;&#xD;&#xA; font-style: normal;&#xD;&#xA;&#xD;&#xA; &amp; :hover, :active :not(.kt-pagination i) {&#xD;&#xA; background-color: rgba(5, 144, 200,.25) !important;&#xD;&#xA; border-radius: 50% !important;&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.kt-pagination .kt-pagination__links li a .kt-font-brand {&#xD;&#xA; color: #000000 !important;&#xD;&#xA;&#xD;&#xA; &amp; :hover, :active {&#xD;&#xA; color: #0590c8 !important;&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.kt-pagination .kt-pagination__links li a .kt-font-brand .kt-pagination__links, .kt-pagination .kt-pagination__links {&#xD;&#xA; border-radius: 50% !important;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.kt-pagination .kt-pagination__links li.kt-pagination__link--active {&#xD;&#xA; font-style: normal;&#xD;&#xA; background-color: #0590c8 !important;&#xD;&#xA; border-radius: 50% !important;&#xD;&#xA;&#xD;&#xA; &amp; :hover {&#xD;&#xA; background-color: #6cbcdd !important;&#xD;&#xA; border-radius: 50% !important;&#xD;&#xA; }&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;#kt_footer &gt; div.kt-footer__top, .kt-footer__content {&#xD;&#xA; background-color: #fafafa !important;&#xD;&#xA; color: #000000 !important;&#xD;&#xA;}&#xD;&#xA;&#xD;&#xA;.green-text {&#xD;&#xA; color: #0590c8 !important;&#xD;&#xA;}&#xD;&#xA; </style> <script type="text/javascript">!function(T,l,y){var S=T.location,k="script",D="instrumentationKey",C="ingestionendpoint",I="disableExceptionTracking",E="ai.device.",b="toLowerCase",w="crossOrigin",N="POST",e="appInsightsSDK",t=y.name||"appInsights";(y.name||T[e])&&(T[e]=t);var n=T[t]||function(d){var g=!1,f=!1,m={initialize:!0,queue:[],sv:"5",version:2,config:d};function v(e,t){var n={},a="Browser";return n[E+"id"]=a[b](),n[E+"type"]=a,n["ai.operation.name"]=S&&S.pathname||"_unknown_",n["ai.internal.sdkVersion"]="javascript:snippet_"+(m.sv||m.version),{time:function(){var e=new Date;function t(e){var t=""+e;return 1===t.length&&(t="0"+t),t}return e.getUTCFullYear()+"-"+t(1+e.getUTCMonth())+"-"+t(e.getUTCDate())+"T"+t(e.getUTCHours())+":"+t(e.getUTCMinutes())+":"+t(e.getUTCSeconds())+"."+((e.getUTCMilliseconds()/1e3).toFixed(3)+"").slice(2,5)+"Z"}(),iKey:e,name:"Microsoft.ApplicationInsights."+e.replace(/-/g,"")+"."+t,sampleRate:100,tags:n,data:{baseData:{ver:2}}}}var h=d.url||y.src;if(h){function a(e){var t,n,a,i,r,o,s,c,u,p,l;g=!0,m.queue=[],f||(f=!0,t=h,s=function(){var e={},t=d.connectionString;if(t)for(var n=t.split(";"),a=0;a<n.length;a++){var i=n[a].split("=");2===i.length&&(e[i[0][b]()]=i[1])}if(!e[C]){var r=e.endpointsuffix,o=r?e.location:null;e[C]="https://"+(o?o+".":"")+"dc."+(r||"services.visualstudio.com")}return e}(),c=s[D]||d[D]||"",u=s[C],p=u?u+"/v2/track":d.endpointUrl,(l=[]).push((n="SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details)",a=t,i=p,(o=(r=v(c,"Exception")).data).baseType="ExceptionData",o.baseData.exceptions=[{typeName:"SDKLoadFailed",message:n.replace(/\./g,"-"),hasFullStack:!1,stack:n+"\nSnippet failed to load ["+a+"] -- Telemetry is disabled\nHelp Link: https://go.microsoft.com/fwlink/?linkid=2128109\nHost: "+(S&&S.pathname||"_unknown_")+"\nEndpoint: "+i,parsedStack:[]}],r)),l.push(function(e,t,n,a){var i=v(c,"Message"),r=i.data;r.baseType="MessageData";var o=r.baseData;return o.message='AI (Internal): 99 message:"'+("SDK LOAD Failure: Failed to load Application Insights SDK script (See stack for details) ("+n+")").replace(/\"/g,"")+'"',o.properties={endpoint:a},i}(0,0,t,p)),function(e,t){if(JSON){var n=T.fetch;if(n&&!y.useXhr)n(t,{method:N,body:JSON.stringify(e),mode:"cors"});else if(XMLHttpRequest){var a=new XMLHttpRequest;a.open(N,t),a.setRequestHeader("Content-type","application/json"),a.send(JSON.stringify(e))}}}(l,p))}function i(e,t){f||setTimeout(function(){!t&&m.core||a()},500)}var e=function(){var n=l.createElement(k);n.src=h;var e=y[w];return!e&&""!==e||"undefined"==n[w]||(n[w]=e),n.onload=i,n.onerror=a,n.onreadystatechange=function(e,t){"loaded"!==n.readyState&&"complete"!==n.readyState||i(0,t)},n}();y.ld<0?l.getElementsByTagName("head")[0].appendChild(e):setTimeout(function(){l.getElementsByTagName(k)[0].parentNode.appendChild(e)},y.ld||0)}try{m.cookie=l.cookie}catch(p){}function t(e){for(;e.length;)!function(t){m[t]=function(){var e=arguments;g||m.queue.push(function(){m[t].apply(m,e)})}}(e.pop())}var n="track",r="TrackPage",o="TrackEvent";t([n+"Event",n+"PageView",n+"Exception",n+"Trace",n+"DependencyData",n+"Metric",n+"PageViewPerformance","start"+r,"stop"+r,"start"+o,"stop"+o,"addTelemetryInitializer","setAuthenticatedUserContext","clearAuthenticatedUserContext","flush"]),m.SeverityLevel={Verbose:0,Information:1,Warning:2,Error:3,Critical:4};var s=(d.extensionConfig||{}).ApplicationInsightsAnalytics||{};if(!0!==d[I]&&!0!==s[I]){var c="onerror";t(["_"+c]);var u=T[c];T[c]=function(e,t,n,a,i){var r=u&&u(e,t,n,a,i);return!0!==r&&m["_"+c]({message:e,url:t,lineNumber:n,columnNumber:a,error:i}),r},d.autoExceptionInstrumented=!0}return m}(y.cfg);function a(){y.onInit&&y.onInit(n)}(T[t]=n).queue&&0===n.queue.length?(n.queue.push(a),n.trackPageView({})):a()}(window,document,{ src: "https://js.monitor.azure.com/scripts/b/ai.2.min.js", // The SDK URL Source crossOrigin: "anonymous", cfg: { // Application Insights Configuration connectionString: 'InstrumentationKey=3d57ddfa-29e0-483d-ab41-048d9e49d808;IngestionEndpoint=https://eastus2-3.in.applicationinsights.azure.com/;LiveEndpoint=https://eastus2.livediagnostics.monitor.azure.com/' }});</script></head> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-B0BKS73WX1"></script> <script> window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gtag('js', new Date()); gtag('config', 'G-B0BKS73WX1'); </script> <!-- end::Head --> <!-- begin::Body --> <body> <!-- begin:: Page --> <!-- begin:: Header Mobile --> <div id="kt_header_mobile" class="kt-header-mobile kt-header-mobile--fixed "> <div class="kt-header-mobile__logo"> <a href="/"> <img alt="Logo" src="/images/theme/logo-mobile.png" /> </a> </div> <div class="kt-header-mobile__toolbar"> <button class="btn" id="kt_header_mobile_toggler"><i class="fa fa-bars"></i></button> <button class="btn" id="kt_header_mobile_topbar_toggler"><i class="fa fa-caret-square-down"></i></button> </div> </div> <!-- end:: Header Mobile --> <div class="kt-grid kt-grid--hor kt-grid--root"> <div class="kt-grid__item kt-grid__item--fluid kt-grid kt-grid--ver kt-page"> <div class="kt-grid__item kt-grid__item--fluid kt-grid kt-grid--hor kt-wrapper" id="kt_wrapper"> <!-- begin:: Header --> <div id="kt_header" class="kt-header kt-grid__item kt-header--fixed " data-ktheader-minimize="on"> <div class="kt-header__top"> <div class="kt-container "> <!-- begin:: Brand --> <div class="kt-header__brand kt-grid__item" id="kt_header_brand"> <div class="kt-header__brand-logo"> <a href="/"> <img alt="Logo" src="/images/logo.png" class="kt-header__brand-logo-default" /> <img alt="Logo" src="/images/logo.png" class="kt-header__brand-logo-sticky" /> </a> </div> <div class="kt-header__brand-nav"> </div> </div> <!-- end:: Brand --> <!-- begin:: Header Topbar --> <div class="kt-header__topbar"> <!--begin: Search --> <div class="kt-header__topbar-item" id="SearchInputWrapper" style="width: 500px; max-width: 100%;"> <div class="kt-header__topbar-wrapper" style="width: 100%; position: relative;"> <i class="fas fa-search"></i> <input id="header-search-input" type="text" class="search-input" onkeyup="GetSearchResults(this)" onblur="UnfocusSearch()" placeholder="Enter Search Term..." /> <div class="spinner-border" role="status" id="search-active-spinner" style="display: none;"></div> <div class="search-result-wrap" style="display: none;">Test</div> </div> </div> <!--end: Search --> <!-- CART --> <div class="kt-header__topbar-item dropdown" id="ShoppingCartDropDown"> <div class="kt-header__topbar-wrapper" id="ShoppingCartToggle" data-toggle="dropdown" data-offset="10px,10px"> <span class="kt-header__topbar-icon"> <i class="flaticon2-shopping-cart-1"></i> <span class="kt-badge kt-badge--dark kt-badge--md cart-product-count"></span> </span> </div> <div class="dropdown-menu dropdown-menu-fit dropdown-menu-right dropdown-menu-anim dropdown-menu-xl" id="ShoppingCart"> </div> </div> <!--begin: User bar --> <div class="kt-header__topbar-item "> <div class="kt-header__topbar-wrapper"> <a class="kt-header__topbar-icon" href="/Identity/Account/Login"> <i class="flaticon2-user"></i> </a> </div> </div> <!--end: User bar --> </div> <!-- end:: Header Topbar --> </div> </div> <div class="kt-header__bottom"> <div class="kt-container "> <!-- begin: Header Menu --> <div class="kt-header-menu-wrapper" id="kt_header_menu_wrapper"> <div id="kt_header_menu" class="kt-header-menu kt-header-menu-mobile "> <ul class="kt-menu__nav"> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/all"> <span class="kt-menu__link-text">Shop All</span> </a> </li> <li class="kt-menu__item kt-menu__item--submenu kt-menu__item--rel" data-ktmenu-submenu-toggle="hover"> <span class="kt-menu__link"> <a onclick="GoToCategory('apparel')" class="kt-menu__link-text">Apparel</a> <i class="kt-menu__ver-arrow la la-angle-right kt-menu__toggle"></i> </span> <div class="kt-menu__submenu kt-menu__submenu--classic kt-menu__submenu--left"> <ul class="kt-menu__subnav"> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/hats"> <span class="kt-menu__link-text">Hats</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/t-shirts"> <span class="kt-menu__link-text">T-Shirts</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/socks"> <span class="kt-menu__link-text">Socks</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/hoodies"> <span class="kt-menu__link-text">Hoodies</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/infanttoddler"> <span class="kt-menu__link-text">Infant/Toddler</span> </a> </li> </ul> </div> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/drinkware"> <span class="kt-menu__link-text">Drinkware</span> </a> </li> <li class="kt-menu__item kt-menu__item--submenu kt-menu__item--rel" data-ktmenu-submenu-toggle="hover"> <span class="kt-menu__link"> <a onclick="GoToCategory('miscellaneous')" class="kt-menu__link-text">Miscellaneous</a> <i class="kt-menu__ver-arrow la la-angle-right kt-menu__toggle"></i> </span> <div class="kt-menu__submenu kt-menu__submenu--classic kt-menu__submenu--left"> <ul class="kt-menu__subnav"> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/games-and-recreation-1"> <span class="kt-menu__link-text">Games And Recreation</span> </a> </li> </ul> </div> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/collectibles"> <span class="kt-menu__link-text">Collectibles</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/category/atlas"> <span class="kt-menu__link-text">Atlas</span> </a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/Page/e-gift-cards"><span class="kt-menu__link-text">E-Gift Cards</span></a> </li> <li class="kt-menu__item"> <a class="kt-menu__link" href="/Page/contact-us"><span class="kt-menu__link-text">Contact Us</span></a> </li> </ul> </div> <div class="kt-header-toolbar"> </div> </div> <!-- end: Header Menu --> </div> </div> </div> <!-- end:: Header --> <div class="kt-body kt-grid__item kt-grid__item--fluid kt-grid kt-grid--hor kt-grid--stretch" id="kt_body"> <div class="kt-content kt-grid__item kt-grid__item--fluid kt-grid kt-grid--hor" id="kt_content"> <!-- begin:: Content --> <div class="kt-container kt-grid__item kt-grid__item--fluid"> <div class="mt-5"></div> <div class="row "> <div class="col-lg-6"> <modal><div class="modal fade" id="ImageZoomModal" tabindex="-1"><div class="modal-dialog modal-dialog-centered modal-xl" role="document" style="max-width: 800px;"><div class="modal-content"><div class="modal-header"><h5 class="modal-title" id="exampleModalLabel"></h5><button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button></div><div class="modal-body"> <img src="" id="ZoomedImage" class="mw-100" style="max-width:100%; max-height:100%;" /> </div></div></div></div></modal> <div class="product-image-wrap d-none d-lg-flex"> <div class="image-list-wrap"> <div class="preview-image"><img src="/images/Products/CT104597-0.jpg" class="img-responsive" onclick="SwapImage(this);" /></div> <div class="preview-image"><img src="/images/Products/CT104597-black.jpg" class="img-responsive" onclick="SwapImage(this);" /></div> <div class="preview-image"><img src="/images/Products/CT104597-carhartt_brown.jpg" class="img-responsive" onclick="SwapImage(this);" /></div> </div> <div class="current-image"> <img id="currentImage" onclick="MagnifyImage('currentImage', 3, false); moveMagnifier();" src="/images/Products/CT104597-0.jpg" class="ProductImage" /> </div> </div> <div class="mobile-image-wrap d-sm-block d-lg-none"> <div class="current-image" style="position:relative;"> <img id="currentImageMobile" onclick="MagnifyImage('currentImage', 3, true); moveMagnifier();" src="/images/Products/CT104597-0.jpg" class="ProductImage" /> </div> <div class="image-list-wrap"> <img src="/images/Products/CT104597-0.jpg" class="img-responsive" onclick="SwapImage(this);" /> <img src="/images/Products/CT104597-black.jpg" class="img-responsive" onclick="SwapImage(this);" /> <img src="/images/Products/CT104597-carhartt_brown.jpg" class="img-responsive" onclick="SwapImage(this);" /> </div> </div> <style> * { box-sizing: border-box; } .img-magnifier-glass { position: absolute; cursor: none; /*Set the size of the magnifier glass:*/ width: 200px; height: 200px; } </style> <script type="text/javascript"> function MagnifyImage(imgID, zoom, isMobile) { console.log("hit magnifier function"); //destroy all pre existing magnifiers var magnifiersToDestroy = document.getElementsByClassName("img-magnifier-glass"); var magnifyingGlassId = "magnifyingGlass"; if(isMobile == true){ magnifyingGlassId += "Mobile"; } destroyMagnifiers(magnifyingGlassId); //container for image must have position:relative; var img, glass, w, h, bw; img = document.getElementById(imgID); //create magnifier glass: glass = document.createElement("DIV"); glass.setAttribute("class", "img-magnifier-glass"); glass.setAttribute("id", magnifyingGlassId); //insert magnifier glass: img.parentElement.insertBefore(glass, img); //set background properties for the magnifier glass: glass.style.backgroundImage = "url('" + img.src + "')"; glass.style.backgroundRepeat = "no-repeat"; glass.style.backgroundSize = (img.width * zoom) + "px " + (img.height * zoom) + "px"; bw = 3; w = glass.offsetWidth / 2; h = glass.offsetHeight / 2; glass.onload = moveMagnifier(); //execute a function when someone moves the magnifier glass over the image: glass.addEventListener("mousemove", moveMagnifier); img.addEventListener("mousemove", moveMagnifier); //moveMagnifier(window.Event); //and also for touch screens: glass.addEventListener("touchmove", moveMagnifier); img.addEventListener("touchmove", moveMagnifier); function moveMagnifier(e) { console.log("hit move magnifier function"); var pos, x, y; //prevent any other actions that may occur when moving over the image //e.preventDefault(); //get the cursor's x and y positions: pos = getCursorPos(e); x = pos.x; y = pos.y; //prevent the magnifier glass from being positioned outside the image: /*if (!x > img.width - (w / zoom)) { toggleMagnifier(glass, false); } if (!x < w / zoom) { toggleMagnifier(glass, false); } if (!y > img.height - (h / zoom)) { toggleMagnifier(glass, false); } if (!y < h / zoom) { toggleMagnifier(glass, false); }*/ if (x > img.width - (w / zoom)) { destroyMagnifiers(magnifyingGlassId); /*toggleMagnifier(glass, true);*/ x = img.width - (w / zoom); } if (x < w / zoom) { destroyMagnifiers(magnifyingGlassId); /*toggleMagnifier(glass, true);*/ } if (y > img.height - (h / zoom)) { destroyMagnifiers(magnifyingGlassId); /*toggleMagnifier(glass, true);*/ y = img.height - (h / zoom); } if (y < h / zoom) { destroyMagnifiers(magnifyingGlassId); /*toggleMagnifier(glass, true);*/ } //set the position of the magnifier glass: glass.style.left = (x - w) + "px"; glass.style.top = (y - h) + "px"; //display what the magnifier glass "sees": glass.style.backgroundPosition = "-" + ((x * zoom) - w + bw) + "px -" + ((y * zoom) - h + bw) + "px"; } function getCursorPos(e) { var a, x = 0, y = 0; e = e || window.event; //get the x and y positions of the image: a = img.getBoundingClientRect(); //calculate the cursor's x and y coordinates, relative to the image: x = e.pageX - a.left; y = e.pageY - a.top; //consider any page scrolling: x = x - window.pageXOffset; y = y - window.pageYOffset; return { x: x, y: y }; } function toggleMagnifier(glass, hideGlass){ if(hideGlass == true){ glass.setAttribute("hidden", "true"); } else{ glass.removeAttribute("hidden"); } } function destroyMagnifiers(magnifyingGlassId){ var magnifiersToDestroy = document.getElementsByClassName("img-magnifier-glass"); for (var i = 0; i < magnifiersToDestroy.length; i++) { if (magnifiersToDestroy[i].id == magnifyingGlassId) { magnifiersToDestroy[i].remove(); } } } } </script> </div> <div class="col-lg-6"> <h1 class="primary-color text-center">CARHARTT WATCH CAP 2.0</h1> <div class="text-center product_description"><p style="text-align: left;">The Carhartt beanie is a stylish and comfortable way to show your support for Boston Dynamics. It is made from a soft, high-quality material that will keep you warm and looking cool.</p></div> <hr /> <form id="ProductOptions" onsubmit="AddToCart(event, this)" enctype="multipart/form-data"> <style> label.error { color: red; background: transparent; font-weight: bold; } input.error { border: 1px solid red; } .form-control.error:focus { border: 1px solid red; } .form-control.error { border: 1px solid red; } </style> <div id="ProductOptionGroup_57" class=""> <label class="font-weight-bold mb-0">Color</label> <div id="err_0"></div> <select name="Options[0].ProductOptionId" id="ProductOptionGroupInput_57" data-live-search="true" data-size="10" data-updatecal="0" class="form-control mb-4 selectOption selectpicker hidden-false" data-error="#err_0" data-required="1" required data-iteration="0" data-productid="0" data-updates_image="true" onchange="UpdateOptions(this)" data-groupid="57"> <option value="0" disabled selected>Select Color</option> <option class="product-option" id="ProductOption_274" value="274" data-label="Black"> Black </option> <option class="product-option" id="ProductOption_273" value="273" data-label="Carhartt Brown"> Carhartt Brown </option> </select> <input type="hidden" name="Options[0].OptionGroupId" data-val="true" data-val-required="The ProductOptionGroupId field is required." id="Group_ProductOptionGroupId" value="57" /> <input type="hidden" name="Options[0].ProductOptionLabel" id="Group_ProductOptionGroupLabel" value="Color" /> </div> <input type="hidden" id="IsBooking" name="IsBooking" value="False" /> <input type="hidden" id="AllowReserveLater" name="AllowReserveLater" value="False" /> <div class="row d-flex align-items-center"> <div class="col-lg-3"> <h4 class="product-page-availability"> <span class="green-text"> 145 In Stock </span> </h4> </div> <div class="col-lg-3"> <h4 class="product-page-price green-text"> <span class="green-text">$39.99</span> </h4> </div> <div class="col-lg-6"> <div class="form-inline float-lg-right"> <span class="text-danger field-validation-valid mr-2" data-valmsg-for="Quantity" data-valmsg-replace="true"></span> <input type="hidden" id="ProductMaxQuantity" value="145" /> <label for="Quantity" class="font-weight-bold mr-2">QTY: </label> <input id="QuantityInput" onchange="ValidateQuantity(this)" class="form-control mr-2" type="number" name="Quantity" value="1" min="1" max="145" step="1" style="width: 70px;" required /> <input type="hidden" name="ProductId" id="ProductId" data-val="true" data-val-required="The ProductId field is required." value="48" /> <input type="hidden" name="IsDigital" id="IsDigital" data-val="true" data-val-required="The IsDigital field is required." value="False" /> <input type="hidden" name="AlwaysChargeInternationalShipping" id="AlwaysChargeInternationalShipping" data-val="true" data-val-required="The AlwaysChargeInternationalShipping field is required." value="False" /> <input type="hidden" name="Weight" id="Weight" value="Weight" class="product-page-weight" data-val="true" data-val-number="The field Weight must be a number." data-val-required="The Weight field is required." /> <input type="hidden" name="IsFreeGift" data-val="true" data-val-required="The IsFreeGiftEligible field is required." id="IsFreeGiftEligible" value="False" /> <button id="AddToCartButton" type="submit" class="btn primary"> <i class="fa fa-cart-plus"></i> <span id="AddToCartText">Add To Cart</span> <span id="AddingToCartText" style="display: none;">Please Wait...</span> </button> </div> </div> </div> <div id="CartAlertWrap"></div> <div id="CartAlert" class="alert alert-info alert-dismissible fade show d-none mt-3" role="alert"> <span class="alert-text"></span> <button type="button" class="close" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true">&times;</span> </button> </div> <input type="hidden" class="input-validation-error" data-val="true" data-val-required="The Category field is required." id="Category" name="Category" value="" /> </form> <div id="SelectionSummary" class="mt-3 mb-3"> <input type="hidden" id="ProductSku" value="CT104597" /> </div> <span class="product-category-list"> <strong class="primary-color">CATEGORIES:</strong> <a href="/Category/apparel">Apparel, </a> <a href="/Category/hats">Hats</a> </span> </div> </div> <br /> <div class="box stacked d-none d-lg-block"> <div class="box-header"> Stock Levels </div> <div class="box-body"> <table class="table table-striped table-bordered table-hover dataTable datatable" id="InventoryTable" data-pagelength="500"> <thead> <tr> <th>Color</th> <th>QTY</th> </tr> </thead> <tr> <td class="optionList" style="vertical-align: middle;"> <span class="d-none"> 0 </span> <span class="inventory-option-value"> Carhartt Brown </span> </td> <td style="vertical-align: middle;"> 71 </td> </tr> <tr> <td class="optionList" style="vertical-align: middle;"> <span class="d-none"> 0 </span> <span class="inventory-option-value"> Black </span> </td> <td style="vertical-align: middle;"> 74 </td> </tr> </table> </div> </div> <input type="hidden" id="ProductWeightInput" value="0.35" /> <input type="hidden" id="ProductWidthInput" value="0.00" /> <input type="hidden" id="ProductLengthInput" value="0.00" /> <input type="hidden" id="ProductHeightInput" value="0.00" /> <input type="hidden" id="ProductId" value="48" /> </div> <!-- end:: Content --> </div> </div> <!-- begin:: Footer --> <div class="kt-footer kt-footer--extended kt-grid__item" id="kt_footer"> <div class="kt-footer__top"> <div class="kt-container "> <div class="row"> <div class="col"> <div class="kt-footer__section"> <h3 class="kt-footer__title">About us</h3> <div class="kt-footer__content"> <div class="row"> <div class="col-md-8"> <p>Welcome to the Boston Dynamics Merch Store! Whether you're looking for a great t-shirt, coffee tumbler, or a statement accessory that shows off your love for robots, you've come to the right place!</p> <p><a href="../../../Page/contact-us">Contact us for store and merch related questions here</a></p> </div> <div class="col-md-4"> <p style="text-align: right;">&nbsp; <a href="https://www.facebook.com/BostonDynamicsOfficial" target="blank"><img src="../../../images/theme/facebook-icon.png" width="21" height="21" /></a>&nbsp; <a href="https://www.instagram.com/bostondynamicsofficial/" target="blank"><img src="../../../images/theme/instagram-icon.png" width="20" height="20" /></a>&nbsp; <a href="https://www.youtube.com/user/BostonDynamics" target="blank"><img src="../../../images/theme/youtube-icon.png" width="30" height="20" /></a>&nbsp; <a href="https://twitter.com/BostonDynamics" target="blank"><img src="../../../images/theme/twitter-x-icon.png" width="22" height="20" /></a>&nbsp; <a href="https://www.linkedin.com/company/boston-dynamics/" target="blank"><img src="../../../images/theme/linkedin-icon.png" width="20" height="20" /></a>&nbsp; <a href="https://www.tiktok.com/@bostondynamicsofficial" target="blank"><img src="../../../images/theme/tiktok-icon.png" width="20" height="20" /></a> &nbsp;</p> </div> </div> </div> </div> </div> </div> </div> </div> <div class="kt-footer__bottom"> <div class="kt-container "> <div class="kt-footer__wrapper"> <div class="kt-footer__logo"> <div class="kt-footer__copyright"> &copy; 2025 Heavy Duty Promos - Company Stores - All Rights Reserved. </div> </div> </div> </div> </div> </div> <!-- end:: Footer --> </div> </div> </div> <!-- end:: Page --> <!-- begin::Scrolltop --> <div id="kt_scrolltop" class="kt-scrolltop"> <i class="fa fa-arrow-up"></i> </div> <!-- end::Scrolltop --> <!-- begin::Global Config(global config for global JS sciprts) --> <script> var KTAppOptions = { "colors": { "state": { "brand": "#374afb", "light": "#ffffff", "dark": "#282a3c", "primary": "#5867dd", "success": "#34bfa3", "info": "#36a3f7", "warning": "#ffb822", "danger": "#fd3995" }, "base": { "label": ["#c5cbe3", "#a1a8c3", "#3d4465", "#3e4466"], "shape": ["#f0f3ff", "#d9dffa", "#afb4d4", "#646c9a"] } } }; </script> <!-- end::Global Config --> <!--begin::Global Theme Bundle(used by all pages) --> <script src="/_frontend/metronic/plugins.bundle.js?v=J8cuXCDYKeh2uNKmvbeof0jbWaMtqXa4W3l2V2RtwvU" type="text/javascript"></script> <script src="/_frontend/metronic/scripts.bundle.js?v=o24FiNGS2cve7iDkj8p8U1xRfA6X0zcyKxqB69tdSNA" type="text/javascript"></script> <!--end::Global Theme Bundle --> <!-- CUSTOM STUFF --> <script src="/_frontend/scripts.bundle.min.js?v=xd_FZQt94hOypQ2M0wem4XceDGWyTKSHwgFEXyj-kDo" type="text/javascript"></script> <script src="/lib/jquery.serialize-object.min.js"></script> <!--end::Page Scripts --> <script type="text/javascript" src="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script> <script>document.body.attributes.__htmx_antiforgery||(document.addEventListener("htmx:configRequest",(e=>{if("GET"===e.detail.verb.toUpperCase())return;let t=htmx.config.antiForgery;if(t){if(e.detail.parameters[t.formFieldName])return;t.headerName?e.detail.headers[t.headerName]=t.requestToken:e.detail.parameters[t.formFieldName]=t.requestToken}})),document.addEventListener("htmx:afterOnLoad",(e=>{if(e.detail.boosted){const t="meta[name=htmx-config]",r=(new DOMParser).parseFromString(e.detail.xhr.responseText,"text/html").querySelector(t);if(r){const e=document.querySelector(t),a="antiForgery";htmx.config[a]=JSON.parse(r.attributes.content.value)[a],e.replaceWith(r)}}})),document.body.attributes.__htmx_antiforgery=!0);</script> <script src="/lib/jquery-validation/dist/jquery.validate.js"></script> <script src="/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script> <script> $('.mobile-images').slick({ dots: true, arrows: false, infinite: true, speed: 300, slidesToShow: 1, adaptiveHeight: true }); </script> <div id="ImageZoom"> <span class="img-zoom-wrap"> <i class="fa fa-times" onclick="UnzoomImage()"></i> <img src="" id="ZoomImg" /> </span> </div> </body> <!-- end::Body --> </html>

Pages: 1 2 3 4 5 6 7 8 9 10