1<!DOCTYPE html><html class="no-js" lang="en" dir="ltr"><head><meta id="ede-response-id" name="ede-response-id" content="f11bf09c-c733-4f55-9f3d-6714c17891c6"> 2
2<script src="/_nostra/scripts/batchScript-6ZI6XFOX.js"></script>
2 3 <!-- prepend batchScript.ts --> 4 5
5<script src="/_nostra/scripts/pageViewScript-IPZ7Z377.js"></script>
5 6 <!-- prepend pageViewScript.ts --> 7 8
8<script src="/_nostra/scripts/performanceScript-ED4CVFD4.js"></script>
8 9 <!-- prepend performanceScript.ts --> 10
10<script id="session-content-origin"> 11 (function() { 12 window.Nostra = window.Nostra || {}; 13 window.Nostra.Transform = window.Nostra.Transform || {}; 14 15 var skipCacheURL = new URL(window.location.href); 16 skipCacheURL.searchParams.set('skipCache', 'true'); 17 18 window.Nostra.Transform.originDocumentPromise = fetch(skipCacheURL.toString()) 19 .then(function(response) { 20 if (!response.ok) { 21 throw new Error('Origin fetch failed: ' + response.status); 22 } 23 24 var consent = null; 25 try { 26 var serverTimingHeader = response.headers.get('Server-Timing'); 27 if (serverTimingHeader) { 28 var match = serverTimingHeader.match(/_cmp;desc="([^"]+)"/); 29 if (match) { 30 consent = decodeURIComponent(match[1]); 31 } 32 } 33 } catch (e) {} 34 if (!consent) { 35 try { 36 var resources = performance.getEntriesByType("resource"); 37 for (var i = resources.length - 1; i >= 0; i--) { 38 if (resources[i].name.includes('skipCache=true')) { 39 var st = resources[i].serverTiming; 40 if (st) { 41 var cmp = st.find(function(e) { return e.name === "_cmp"; }); 42 if (cmp) { 43 consent = decodeURIComponent(cmp.description); 44 break; 45 } 46 } 47 } 48 } 49 } catch (e) {} 50 } 51 if (consent) { 52 try { 53 window.Nostra.Transform._cmpConsent = consent; 54 window.Nostra.Transform._cachedConsent = encodeURIComponent(consent); 55 } catch (e) {} 56 } 57 if (window.Shopify && window.Shopify.loadFeatures) { 58 window.Shopify.loadFeatures([{ 59 "name": "consent-tracking-api", 60 "version": "0.1" 61 }], function() { Nostra.flushConsentCallbacks(); }, true); 62 } 63 return response; 64 }) 65 .then(function(response) { return response.text(); }) 66 .then(function(doc) { 67 var parser = new DOMParser(); 68 return parser.parseFromString(doc, 'text/html'); 69 }) 70 .catch(function(error) { 71 console.error('Error fetching or parsing document:', error); 72 }); 73 })(); 74</script>
74<script type="text/javascript" class="nostra-shopify-analytics-shim"> 75 window.Shopify = window.Shopify || {}; 76 window.Shopify.analytics = window.Shopify.analytics || {}; 77 window.Nostra = window.Nostra || {}; 78 window.Nostra.Transform = window.Nostra.Transform || {}; 79 window.Nostra.Transform.replayQueue = window.Nostra.Transform.replayQueue || []; 80 81 if (!window.Shopify.analytics.publish) { 82 window.Shopify.analytics.publish = function (event, payload, context) { 83 window.Nostra.Transform.replayQueue.push([event, payload, context]); 84 return true; 85 }; 86 } 87 </script>
87<script id="session-content-consent-bootstrap"> 88 !function(o) { 89 var t = o.Shopify = o.Shopify || {}; 90 var pendingConsentCallbacks = []; 91 92 function n() { 93 var q = []; 94 function fn() { q.push(Array.prototype.slice.apply(arguments)); } 95 return fn.q = q, fn; 96 } 97 98 var realLoadFeatures = n(); 99 100 t.loadFeatures = function() { 101 var args = Array.prototype.slice.apply(arguments); 102 var features = args[0]; 103 var callback = args[1]; 104 var force = args[2] || false; 105 106 var wantsConsent = Array.isArray(features) && features.some(function(f) { 107 return f.name === 'consent-tracking-api'; 108 }); 109 110 if (wantsConsent && callback && !force) { 111 pendingConsentCallbacks.push(callback); 112 } else { 113 realLoadFeatures.apply(null, args); 114 } 115 }; 116 t.loadFeatures.q = realLoadFeatures.q; 117 118 t.autoloadFeatures = n(); 119 120 o.Nostra = o.Nostra || {}; 121 o.Nostra.Transform = o.Nostra.Transform || {}; 122 123 o.Nostra.flushConsentCallbacks = function(error) { 124 if (o.Nostra.Transform._cachedConsent && o.Shopify.customerPrivacy) { 125 o.Shopify.customerPrivacy.cachedConsent = o.Nostra.Transform._cachedConsent; 126 } 127 var cbs = pendingConsentCallbacks.splice(0); 128 cbs.forEach(function(cb) { 129 try { cb(error || undefined); } catch(e) { console.error(e); } 130 }); 131 }; 132 133 // Run cb once consent state is populated. Use this from per-customer 134 // configs when something must read window.Shopify.customerPrivacy 135 // (e.g., re-injecting Shopify scripts that auto-fire bannerQuery). 136 // Fires immediately if flushConsentCallbacks has already run; otherwise 137 // queues via the same intercept primitive ScriptWrapEngine uses, so 138 // it's guaranteed to fire exactly when consent-tracking-api has loaded. 139 o.Nostra.onConsentReady = function(cb) { 140 if (o.Shopify && o.Shopify.customerPrivacy && o.Shopify.customerPrivacy.cachedConsent !== undefined) { 141 try { cb(); } catch(e) { console.error(e); } 142 } else if (o.Shopify && o.Shopify.loadFeatures) { 143 o.Shopify.loadFeatures([{ name: 'consent-tracking-api', version: '0.1' }], cb); 144 } 145 }; 146 }(window); 147 </script>
147<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0"><meta name="theme-color" content="#ffffff"><title>Harney & Sons Fine Teas | Our Family Story</title><meta name="description" content="A third-generation family tea company started by John Harney in Salisbury, Connecticut. From six blends to more than 300 loose leaf teas, meet the Harneys."><link rel="canonical" href="https://www.harney.com/pages/about-us"><link rel="shortcut icon" href="//www.harney.com/cdn/shop/files/favicon_96x96.png?v=1613541291" type="image/png"><link rel="preconnect" href="https://cdn.shopify.com"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin="">
147<script> 148 !function() { 149 "use strict"; 150 151 function setDoNotTrack(flag) { 152 if ("function" == typeof nostojs) 153 nostojs(function(api) { api.visit.setDoNotTrack(flag) }); 154 else { 155 window.nostojs = window.nostojs || function(n) { 156 (window.nostojs.q = window.nostojs.q || []).push(n) 157 }; 158 window.nostojs(function(api) { api.visit.setDoNotTrack(flag) }); 159 } 160 } 161 162 function evaluateConsent() { 163 var privacy = window.Shopify && window.Shopify.customerPrivacy; 164 if (privacy && "function" == typeof privacy.currentVisitorConsent) { 165 var consent = privacy.currentVisitorConsent(); 166 167 // If analytics and marketing are both "yes", track freely 168 if ("yes" === consent.analytics && "yes" === consent.marketing) { 169 setDoNotTrack(false); 170 return; 171 } 172 173 // If visitor explicitly declined, respect that 174 if ("no" === consent.analytics || "no" === consent.marketing) { 175 setDoNotTrack(true); 176 return; 177 } 178 179 // Empty string or undefined = banner wasn't shown (no consent required) 180 // This covers the ~29 states with no privacy statute
181 setDoNotTrack(false); 182 } else { 183 // Consent API not available at all, default to allow 184 setDoNotTrack(false); 185 } 186 } 187 188 function init() { 189 if (window.Shopify && window.Shopify.loadFeatures) { 190 window.Shopify.loadFeatures( 191 [{ name: "consent-tracking-api", version: "0.1" }], 192 function(error) { 193 if (error) { 194 // Can't load consent API â no banner jurisdiction, allow tracking 195 setDoNotTrack(false); 196 } else { 197 evaluateConsent(); 198 } 199 } 200 ); 201 } else { 202 setDoNotTrack(false); 203 } 204 205 document.addEventListener("visitorConsentCollected", function() { 206 evaluateConsent(); 207 }); 208 } 209 210 init(); 211 }(); 212 </script>
212<link rel="preload" as="style" href="//www.harney.com/cdn/shop/t/390/assets/theme.css?v=15475549232296024131790128990"><link rel="preload" as="script" href="//www.harney.com/cdn/shop/t/390/assets/vendor.js?v=31715688253868339281782163754"><link rel="preload" as="script" href="//www.harney.com/cdn/shop/t/390/assets/theme.js?v=53354748631584454431789844287"><meta property="og:type" content="website"><meta property="og:title" content="Harney & Sons Fine Teas | Our Family Story"><meta property="og:image" content="http://www.harney.com/cdn/shop/files/ht-english-breakfast-tins_46.jpg?v=1722953544"><meta property="og:image:secure_url" content="https://www.harney.com/cdn/shop/files/ht-english-breakfast-tins_46.jpg?v=1722953544"><meta property="og:image:width" content="1500"><meta property="og:image:height" content="1000"><meta property="og:description" content="A third-generation family tea company started by John Harney in Salisbury, Connecticut. From six blends to more than 300 loose leaf teas, meet the Harneys."><meta property="og:url" content="https://www.harney.com/pages/about-us">
212<meta property="og:site_name" content="Harney & Sons Fine Teas"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Harney & Sons Fine Teas | Our Family Story"><meta name="twitter:description" content="A third-generation family tea company started by John Harney in Salisbury, Connecticut. From six blends to more than 300 loose leaf teas, meet the Harneys."><meta name="twitter:image" content="https://www.harney.com/cdn/shop/files/ht-english-breakfast-tins_46_1200x1200_crop_center.jpg?v=1722953544"><meta name="twitter:image:alt" content="">
212<script type="application/ld+json"> 213 { 214 "@context": "https://schema.org", 215 "@type": "Organization", 216 "@id": "https://www.harney.com/#organization", 217 "name": "Harney \u0026amp; Sons Fine Teas", 218 "url": "https:\/\/www.harney.com","logo": "https://www.harney.com/cdn/shop/files/FreeshippingHT_Logo_Horizontal-BLACK.svg?v=1722625838&width=600","hasMerchantReturnPolicy": { 219 "@type": "MerchantReturnPolicy", 220 "merchantReturnLink": "https://www.harney.com/policies/refund-policy" 221 }, 222 "sameAs": ["https:\/\/facebook.com\/harneytea","https:\/\/instagram.com\/harneytea","https:\/\/twitter.com\/harneytea","https:\/\/youtube.com\/user\/harneyteas"] 223 } 224</script>
224<script type="application/ld+json"> 225 { 226 "@context": "https://schema.org", 227 "@type": "BreadcrumbList", 228 "itemListElement": [{ 229 "@type": "ListItem", 230 "position": 1, 231 "name": "Home", 232 "item": "https://www.harney.com" 233 },{ 234 "@type": "ListItem", 235 "position": 2, 236 "name": "About Us", 237 "item": "https://www.harney.com/pages/about-us" 238 }] 239 } 240</script>
240<link rel="preload" href="//www.harney.com/cdn/fonts/cardo/cardo_n4.8d7bdd0369840597cbb62dc8a447619701d8d34a.woff2" as="font" type="font/woff2" crossorigin=""><link rel="preload" href="//www.harney.com/cdn/fonts/cardo/cardo_n4.8d7bdd0369840597cbb62dc8a447619701d8d34a.woff2" as="font" type="font/woff2" crossorigin=""><style> 241 /* Typography (heading) */ 242 @font-face { 243 font-family: Cardo; 244 font-weight: 400; 245 font-style: normal; 246 font-display: swap; 247 src: url("//www.harney.com/cdn/fonts/cardo/cardo_n4.8d7bdd0369840597cbb62dc8a447619701d8d34a.woff2") format("woff2"), 248 url("//www.harney.com/cdn/fonts/cardo/cardo_n4.23b63d1eff80cb5da813c4cccb6427058253ce24.woff") format("woff"); 249} 250 251@font-face { 252 font-family: Cardo; 253 font-weight: 400; 254 font-style: italic; 255 font-display: swap; 256 src: url("//www.harney.com/cdn/fonts/cardo/cardo_i4.0e32d2e32a36e77888e9a063b238f6034ace33a8.woff2") format("woff2"), 257 url("//www.harney.com/cdn/fonts/cardo/cardo_i4.40eb4278c959c5ae2eecf636849faa186b42d298.woff") format("woff"); 258} 259 260/* Typography (body) */ 261 @font-face { 262 font-family: Cardo; 263 font-weight: 400; 264 font-style: normal; 265 font-display: swap; 266 src: url("//www.harney.com/cdn/fonts/cardo/cardo_n4.8d7bdd0369840597cbb62dc8a447619701d8d34a.woff2") format("woff2"), 267 url("//www.harney.com/cdn/fonts/cardo/cardo_n4.23b63d1eff80cb5da813c4cccb6427058253ce24.woff") format("woff"); 268} 269 270@font-face { 271 font-family: Cardo; 272 font-weight: 400; 273 font-style: italic; 274 font-display: swap; 275 src: url("//www.harney.com/cdn/fonts/cardo/cardo_i4.0e32d2e32a36e77888e9a063b238f6034ace33a8.woff2") format("woff2"), 276 url("//www.harney.com/cdn/fonts/cardo/cardo_i4.40eb4278c959c5ae2eecf636849faa186b42d298.woff") format("woff"); 277} 278 279@font-face { 280 font-family: Cardo; 281 font-weight: 700; 282 font-style: normal; 283 font-display: swap; 284 src: url("//www.harney.com/cdn/fonts/cardo/cardo_n7.d1764502b55968f897125797ed59f6abd5dc8593.woff2") format("woff2"), 285 url("//www.harney.com/cdn/fonts/cardo/cardo_n7.b5d64d4147ade913d679fed9918dc44cbe8121d2.woff") format("woff"); 286} 287 288:root {--heading-color: 51, 51, 51; 289 --text-color: 51, 51, 51; 290 --background: 255, 255, 255; 291 --secondary-background: 245, 245, 245; 292 --border-color: 224, 224, 224; 293 --border-color-darker: 173, 173, 173; 294 --success-color: 46, 158, 123; 295 --success-background: 213, 236, 229; 296 --error-color: 222, 42, 42; 297 --error-background: 253, 240, 240; 298 --primary-button-background: 198, 169, 90; 299 --primary-button-text-color: 0, 0, 0; 300 --secondary-button-background: 155, 131, 129; 301 --secondary-button-text-color: 255, 255, 255; 302 --product-star-rating: 246, 164, 41; 303 --product-on-sale-accent: 222, 42, 42; 304 --product-sold-out-accent: 111, 113, 155; 305 --product-custom-label-background: 198, 169, 90; 306 --product-custom-label-text-color: 0, 0, 0; 307 --product-custom-label-2-background: 243, 255, 52; 308 --product-custom-label-2-text-color: 0, 0, 0; 309 --product-low-stock-text-color: 222, 42, 42; 310 --product-in-stock-text-color: 46, 158, 123; 311 --loading-bar-background: 51, 51, 51; 312 313 /* We duplicate some "base" colors as root colors, which is useful to use on drawer elements or popover without. Those should not be overridden to avoid issues */ 314 --root-heading-color: 51, 51, 51; 315 --root-text-color: 51, 51, 51; 316 --root-background: 255, 255, 255; 317 --root-border-color: 224, 224, 224; 318 --root-primary-button-background: 198, 169, 90; 319 --root-primary-button-text-color: 0, 0, 0; 320 321 --base-font-size: 18px; 322 --heading-font-family: Cardo, serif; 323 --heading-font-weight: 400; 324 --heading-font-style: normal; 325 --heading-text-transform: normal; 326 --text-font-family: Cardo, serif; 327 --text-font-weight: 400; 328 --text-font-style: normal; 329 --text-font-bold-weight: 700; 330 331 /* Typography (font size) */ 332 --heading-xxsmall-font-size: 11px; 333 --heading-xsmall-font-size: 11px; 334 --heading-small-font-size: 12px; 335 --heading-large-font-size: 36px; 336 --heading-h1-font-size: 36px; 337 --heading-h2-font-size: 30px; 338 --heading-h3-font-size: 26px; 339 --heading-h4-font-size: 24px; 340 --heading-h5-font-size: 20px; 341 --heading-h6-font-size: 16px; 342 343 /* Control the look and feel of the theme by changing radius of various elements */ 344 --button-border-radius: 2px; 345 --block-border-radius: 0px; 346 --block-border-radius-reduced: 0px; 347 --color-swatch-border-radius: 100%; 348 349 /* Button size */ 350 --button-height: 48px; 351 --button-small-height: 40px; 352 353 /* Form related */ 354 --form-input-field-height: 48px; 355 --form-input-gap: 16px; 356 --form-submit-margin: 24px; 357 358 /* Product listing related variables */ 359 --product-list-block-spacing: 32px; 360 361 /* Video related */ 362 --play-button-background: 255, 255, 255; 363 --play-button-arrow: 51, 51, 51; 364 365 /* RTL support */ 366 --transform-logical-flip: 1; 367 --transform-origin-start: left;
368 --transform-origin-end: right; 369 370 /* Other */ 371 --zoom-cursor-svg-url: url(//www.harney.com/cdn/shop/t/390/assets/zoom-cursor.svg?v=123091989385119728031782163890); 372 --arrow-right-svg-url: url(//www.harney.com/cdn/shop/t/390/assets/arrow-right.svg?v=167384739731615220301782163890); 373 --arrow-left-svg-url: url(//www.harney.com/cdn/shop/t/390/assets/arrow-left.svg?v=67347314378257995721782163890); 374 375 /* Some useful variables that we can reuse in our CSS. Some explanation are needed for some of them: 376 - container-max-width-minus-gutters: represents the container max width without the edge gutters 377 - container-outer-width: considering the screen width, represent all the space outside the container 378 - container-outer-margin: same as container-outer-width but get set to 0 inside a container 379 - container-inner-width: the effective space inside the container (minus gutters) 380 - grid-column-width: represents the width of a single column of the grid 381 - vertical-breather: this is a variable that defines the global "spacing" between sections, and inside the section 382 to create some "breath" and minimum spacing 383 */ 384 --container-max-width: 1600px; 385 --container-gutter: 24px; 386 --container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2); 387 --container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter)); 388 --container-outer-margin: var(--container-outer-width); 389 --container-inner-width: calc(100vw - var(--container-outer-width) * 2); 390 391 --grid-column-count: 10; 392 --grid-gap: 24px; 393 --grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count)); 394 395 --vertical-breather: 48px; 396 --vertical-breather-tight: 48px; 397 398 /* Shopify related variables */ 399 --payment-terms-background-color: #ffffff; 400 } 401 402 @media screen and (min-width: 741px) { 403 :root { 404 --container-gutter: 40px; 405 --grid-column-count: 20; 406 --vertical-breather: 64px; 407 --vertical-breather-tight: 64px; 408 409 /* Typography (font size) */ 410 --heading-xsmall-font-size: 12px; 411 --heading-small-font-size: 13px; 412 --heading-large-font-size: 52px; 413 --heading-h1-font-size: 48px; 414 --heading-h2-font-size: 38px; 415 --heading-h3-font-size: 32px; 416 --heading-h4-font-size: 24px; 417 --heading-h5-font-size: 20px; 418 --heading-h6-font-size: 18px; 419 420 /* Form related */ 421 --form-input-field-height: 52px; 422 --form-submit-margin: 32px; 423 424 /* Button size */ 425 --button-height: 52px; 426 --button-small-height: 44px; 427 } 428 } 429 430 @media screen and (min-width: 1200px) { 431 :root { 432 --vertical-breather: 80px; 433 --vertical-breather-tight: 64px; 434 --product-list-block-spacing: 48px; 435 436 /* Typography */ 437 --heading-large-font-size: 64px; 438 --heading-h1-font-size: 56px; 439 --heading-h2-font-size: 48px; 440 --heading-h3-font-size: 36px; 441 --heading-h4-font-size: 30px; 442 --heading-h5-font-size: 24px; 443 --heading-h6-font-size: 18px; 444 } 445 } 446 447 @media screen and (min-width: 1600px) { 448 :root { 449 --vertical-breather: 90px; 450 --vertical-breather-tight: 64px; 451 } 452 } 453</style>
453<script> 454 // This allows to expose several variables to the global scope, to be used in scripts 455 window.themeVariables = { 456 settings: { 457 direction: "ltr", 458 pageType: "page", 459 cartCount: 0, 460 moneyFormat: "$ {{amount}}", 461 moneyWithCurrencyFormat: "$ {{amount}} USD", 462 showVendor: false, 463 discountMode: "percentage", 464 currencyCodeEnabled: false, 465 cartType: "drawer", 466 cartCurrency: "USD", 467 mobileZoomFactor: 2.5 468 }, 469 470 routes: { 471 host: "www.harney.com", 472 rootUrl: "\/", 473 rootUrlWithoutSlash: '', 474 cartUrl: "\/cart", 475 cartAddUrl: "\/cart\/add", 476 cartChangeUrl: "\/cart\/change", 477 searchUrl: "\/search", 478 predictiveSearchUrl: "\/search\/suggest", 479 productRecommendationsUrl: "\/recommendations\/products" 480 }, 481 482 strings: { 483 accessibilityDelete: "Delete", 484 accessibilityClose: "Close", 485 collectionSoldOut: "Sold out", 486 collectionDiscount: "Save @savings@", 487 productSalePrice: "Sale price", 488 productRegularPrice: "Regular price", 489 productFormUnavailable: "Unavailable", 490 productFormSoldOut: "Sold out", 491 productFormPreOrder: "Pre-order", 492 productFormAddToCart: "Add to Cart", 493 searchNoResults: "No results could be found.", 494 searchNewSearch: "New search", 495 searchProducts: "Products", 496 searchArticles: "Journal", 497 searchPages: "Pages", 498 searchCollections: "Collections", 499 cartViewCart: "View cart", 500 cartItemAdded: "Item added to your cart!", 501 cartItemAddedShort: "Added to your cart!", 502 cartAddOrderNote: "Add order note", 503 cartEditOrderNote: "Edit order note", 504 shippingEstimatorNoResults: "Sorry, we do not ship to your address.", 505 shippingEstimatorOneResult: "There is one shipping rate for your address:", 506 shippingEstimatorMultipleResults: "There are several shipping rates for your address:", 507 shippingEstimatorError: "One or more error occurred while retrieving shipping rates:" 508 }, 509 510 libs: { 511 flickity: "\/\/www.harney.com\/cdn\/shop\/t\/390\/assets\/flickity.js?v=176646718982628074891782163756", 512 photoswipe: "\/\/www.harney.com\/cdn\/shop\/t\/390\/assets\/photoswipe.js?v=132268647426145925301782163757", 513 qrCode: "\/\/www.harney.com\/cdn\/shopifycloud\/storefront\/assets\/themes_support\/vendor\/qrcode-1f6c2eb7.js" 514 }, 515 516 breakpoints: { 517 phone: 'screen and (max-width: 740px)', 518 tablet: 'screen and (min-width: 741px) and (max-width: 999px)', 519 tabletAndUp: 'screen and (min-width: 741px)', 520 pocket: 'screen and (max-width: 999px)', 521 lap: 'screen and (min-width: 1000px) and (max-width: 1199px)', 522 lapAndUp: 'screen and (min-width: 1000px)', 523 desktop: 'screen and (min-width: 1200px)', 524 wide: 'screen and (min-width: 1400px)' 525 } 526 }; 527 528 window.addEventListener('pageshow', async () => { 529 const cartContent = await (await fetch(`${window.themeVariables.routes.cartUrl}.js`, {cache: 'reload'})).json(); 530 document.documentElement.dispatchEvent(new CustomEvent('cart:refresh', {detail: {cart: cartContent}})); 531 }); 532 533 if ('noModule' in HTMLScriptElement.prototype) { 534 // Old browsers (like IE) that does not support module will be considered as if not executing JS at all 535 document.documentElement.className = document.documentElement.className.replace('no-js', 'js'); 536 537 requestAnimationFrame(() => { 538 const viewportHeight = (window.visualViewport ? window.visualViewport.height : document.documentElement.clientHeight); 539 document.documentElement.style.setProperty('--window-height',viewportHeight + 'px'); 540 }); 541 }</script>
541<link rel="stylesheet" href="//www.harney.com/cdn/shop/t/390/assets/theme.css?v=15475549232296024131790128990"><link rel="stylesheet" href="//www.harney.com/cdn/shop/t/390/assets/custom.css?v=112921260860374289011790199866"><link rel="preload" href="//www.harney.com/cdn/shop/t/390/assets/design-pack-styles.css?v=173712910775263944171782163755" as="style"><link href="//www.harney.com/cdn/shop/t/390/assets/design-pack-styles.css?v=173712910775263944171782163755" rel="stylesheet" type="text/css" media="all">
541<script src="//www.harney.com/cdn/shop/t/390/assets/lazysizes.min.js?v=114800795892960918641782163754" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/jquery.min.js?v=81049236547974671631782163754" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/vendor.js?v=31715688253868339281782163754" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/theme.js?v=53354748631584454431789844287" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/custom.js?v=57067605021445323011783016603" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/flickity.min.js?v=97911163996048979671782163756" defer=""></script>
541<script src="//www.harney.com/cdn/shop/t/390/assets/postcardqr.js?v=101664587025254731371782163753" defer=""></script>
541<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
541<meta name="google-site-verification" content="OYQmKixsyBz4IbHbOdr8J51LEIpXBFDgK-h9_Kdd3Y0"><meta name="facebook-domain-verification" content="25w9dgjdctaqm645110b4eey9lvyjm"><meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/12341342/digital_wallets/dialog"><meta id="in-context-paypal-metadata" data-shop-id="12341342" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"><link rel="alternate" hreflang="x-default" href="https://www.harney.com/pages/about-us"><link rel="alternate" hreflang="en" href="https://www.harney.com/pages/about-us"><link rel="alternate" hreflang="en-AU" href="https://www.harney.com/en-au/pages/about-us"><link rel="alternate" hreflang="en-PT" href="https://www.harney.com/en-pt/pages/about-us"><link rel="alternate" hreflang="en-GB" href="https://www.harney.com/en-gb/pages/about-us"><link rel="alternate" hreflang="en-DE" href="https://www.harney.com/en-de/pages/about-us"><link rel="alternate" hreflang="en-JP" href="https://www.harney.com/en-jp/pages/about-us">
541<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=4874272839"></script>
541<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
541<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=4874272839&shop_id=12341342" crossorigin="anonymous"></script>
541<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":12341342,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/12341342","merchantName":"Harney \u0026 Sons Fine Teas","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Harney \u0026 Sons Fine Teas","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
541<script id="shopify-features" type="application/json">{"accessToken":"d477523f338a560b3bbbea4437887eb4","betas":["rich-media-storefront-analytics"],"domain":"www.harney.com","predictiveSearch":true,"shopId":12341342,"locale":"en"}</script>
541<script>var Shopify = Shopify || {}; 542Shopify.shop = "harney.myshopify.com"; 543Shopify.locale = "en"; 544Shopify.currency = {"active":"USD","rate":"1.0"}; 545Shopify.country = "US"; 546Shopify.theme = {"name":"harney-theme\/main","id":142708572231,"schema_name":"Focal","schema_version":"ð 10.1.0","theme_store_id":null,"role":"main"}; 547Shopify.theme.handle = "null"; 548Shopify.theme.style = {"id":null,"handle":null}; 549Shopify.cdnHost = "www.harney.com/cdn"; 550Shopify.routes = Shopify.routes || {}; 551Shopify.routes.root = "/"; 552Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 553Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 554Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 555Shopify.SignInWithShop.User.recognized = false;</script>
555<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
555<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>
555<script> 556 window.Shopify = window.Shopify || {}; 557 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 558 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 559 window.Shopify.SignInWithShop.eligible = true; 560</script>
560<script id="shop-js-analytics" type="application/json">{"pageType":"page"}</script>
560<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>
560<script type="module"> 561 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 562 563 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 564 565</script>
565<script> 566 window.Shopify = window.Shopify || {}; 567 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 568 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"]}; 569</script>
569<script>(function() { 570 var isLoaded = false; 571 function asyncLoad() { 572 if (isLoaded) return; 573 isLoaded = true; 574 var urls = ["\/\/cdn.ywxi.net\/js\/1.js?shop=harney.myshopify.com","\/\/cdn.ywxi.net\/js\/partner-shopify.js?shop=harney.myshopify.com","https:\/\/cdn.verifypass.com\/seller\/launcher.js?shop=harney.myshopify.com","https:\/\/str.rise-ai.com\/?shop=harney.myshopify.com","https:\/\/strn.rise-ai.com\/?shop=harney.myshopify.com","https:\/\/design-packs.herokuapp.com\/design_packs_file.js?shop=harney.myshopify.com","https:\/\/assets.dailykarma.io\/prod\/init-v3.js?v2\u0026shop=harney.myshopify.com","https:\/\/pdq-scripts.pdqprod.link\/pdq-plugins.js?shop=harney.myshopify.com","https:\/\/connect.nosto.com\/include\/script\/shopify-12341342.js?shop=harney.myshopify.com","\/\/cdn.trustedsite.com\/js\/partner-shopify.js?shop=harney.myshopify.com","https:\/\/cdn.shopify.com\/s\/files\/1\/1234\/1342\/t\/390\/assets\/instant-pixel-site_4721b400c4b3446797233be333f71a44.js?v=1790264271\u0026shop=harney.myshopify.com"]; 575 for (var i = 0; i < urls.length; i++) { 576 var s = document.createElement('script'); 577 s.type = 'text/javascript'; 578 s.async = true; 579 s.src = urls[i]; 580 var x = document.getElementsByTagName('script')[0]; 581 x.parentNode.insertBefore(s, x); 582 } 583 }; 584 if(window.attachEvent) { 585 window.attachEvent('onload', asyncLoad); 586 } else { 587 window.addEventListener('load', asyncLoad, false); 588 } 589})();</script>
589<script id="__st">var __st={"a":12341342,"offset":-14400,"reqid":"9b05d078-55fe-43e7-b4fd-86f98a45efa9-1790268932","pageurl":"www.harney.com\/pages\/about-us","s":"pages-47410774087","u":"f3f7354076a2","p":"page","rtyp":"page","rid":47410774087};</script>
589<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
589<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'])})(!1,!0)}();</script>
589<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.harney.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
589<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.harney.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>
589<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>
589<script> 590 window.Shopify = window.Shopify || {}; 591 window.Shopify.MCP = window.Shopify.MCP || {}; 592 window.Shopify.MCP.enabled = true; 593 window.Shopify.MCP.shop = "harney.myshopify.com"; 594 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.harney.com\/api\/mcp"; 595 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 596</script>
596<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.harney.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 597</script>
597<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.harney.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 598</script>
598<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 599 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); 600</script>
600<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})}})); 601</script>
601<script id="scb4127" type="text/javascript" async="" src="https://www.harney.com/cdn/shopifycloud/privacy-banner/storefront-banner.js"></script>
601<script integrity="sha256-/LA1C2Bx6899fYCos0FS9qLj2opaGFm7AXrTUvBEb4s=" data-source-attribution="shopify.remote_product_tracking" data-shopify-remote-tracking='{"publisher_shop_id":12341342,"theme_id":142708572231,"theme_published":true,"theme_store_id":0,"placement":"collection","event_data":{"handle":"about-us","page_type":"page"},"recommendations_tracking_enabled":true}' defer="defer" src="//www.harney.com/cdn/shopifycloud/storefront/assets/storefront/remote_product_tracking-91d95044.js" crossorigin="anonymous"></script>
601<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.harney.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"><style id="shopify-accelerated-checkout-cart"> 602 #shopify-buyer-consent { 603 margin-top: 1em; 604 display: inline-block; 605 width: 100%; 606} 607 608#shopify-buyer-consent.hidden { 609 display: none; 610} 611 612#shopify-subscription-policy-button { 613 background: none; 614 border: none; 615 padding: 0; 616 text-decoration: underline; 617 font-size: inherit; 618 cursor: pointer; 619} 620 621#shopify-subscription-policy-button::before { 622 box-shadow: none; 623} 624 625 </style>
625<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
625<style> 626 .stamped-launcher-button { display: none !important; } 627 </style><!-- BEGIN app block: shopify://apps/elevar-conversion-tracking/blocks/dataLayerEmbed/bc30ab68-b15c-4311-811f-8ef485877ad6 --><!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
627<script async="" src="https://static.klaviyo.com/onsite/js/CNszUC/klaviyo.js?company_id=CNszUC"></script>
627<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
627<script> 628 window.klaviyoReviewsProductDesignMode = false 629 </script>
629<!-- BEGIN app snippet: customer-hub-data -->
629<script> 630 if (!window.customerHub) { 631 window.customerHub = {}; 632 } 633 window.customerHub.storefrontRoutes = { 634 login: "https://www.harney.com/customer_authentication/redirect?locale=en®ion_country=US?return_url=%2F%23k-hub", 635 register: "https://shopify.com/12341342/account?locale=en&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJoYXJuZXkubXlzaG9waWZ5LmNvbSIsImZsYWdzIjpbXSwiZXhwIjoxNzkwODczNzMyLCJuYmYiOjE3OTAyNjg5MzJ9.vXDg1ii4aRfIrCJiU5dMeUagmWBy9vEyk6H1Swjl0fQ?return_url=%2F%23k-hub", 636 logout: "/account/logout", 637 profile: "/account", 638 addresses: "/account/addresses", 639 }; 640 641 window.customerHub.userId = null; 642 643 window.customerHub.storeDomain = "harney.myshopify.com"; 644 645 646 647 648 window.customerHub.storeLocale = { 649 currentLanguage: 'en', 650 currentCountry: 'US', 651 availableLanguages: [ 652 653 { 654 iso_code: 'en', 655 endonym_name: 'English' 656 } 657 658 ], 659 availableCountries: [ 660 661 { 662 iso_code: 'AR', 663 name: 'Argentina', 664 currency_code: 'ARS' 665 }, 666 667 { 668 iso_code: 'AM', 669 name: 'Armenia', 670 currency_code: 'USD' 671 }, 672 673 { 674 iso_code: 'AU', 675 name: 'Australia', 676 currency_code: 'USD' 677 }, 678 679 { 680 iso_code: 'AT', 681 name: 'Austria', 682 currency_code: 'USD' 683 }, 684 685 { 686 iso_code: 'BS', 687 name: 'Bahamas', 688 currency_code: 'USD' 689 }, 690 691 { 692 iso_code: 'BH', 693 name: 'Bahrain', 694 currency_code: 'USD' 695 }, 696 697 { 698 iso_code: 'BB', 699 name: 'Barbados', 700 currency_code: 'USD' 701 }, 702 703 { 704 iso_code: 'BE', 705 name: 'Belgium', 706 currency_code: 'USD' 707 }, 708 709 { 710 iso_code: 'BN', 711 name: 'Brunei', 712 currency_code: 'USD' 713 }, 714 715 { 716 iso_code: 'KH', 717 name: 'Cambodia', 718 currency_code: 'USD' 719 }, 720 721 { 722 iso_code: 'CA', 723 name: 'Canada', 724 currency_code: 'USD' 725 }, 726 727 { 728 iso_code: 'KY', 729 name: 'Cayman Islands', 730 currency_code: 'USD' 731 }, 732 733 { 734 iso_code: 'CL', 735 name: 'Chile', 736 currency_code: 'USD' 737 }, 738 739 { 740 iso_code: 'CN', 741 name: 'China', 742 currency_code: 'USD' 743 }, 744 745 { 746 iso_code: 'CO', 747 name: 'Colombia', 748 currency_code: 'USD' 749 }, 750 751 { 752 iso_code: 'CR', 753 name: 'Costa Rica', 754 currency_code: 'USD' 755 }, 756 757 { 758 iso_code: 'CY', 759 name: 'Cyprus', 760 currency_code: 'USD' 761 }, 762 763 { 764 iso_code: 'CZ', 765 name: 'Czechia', 766 currency_code: 'CZK' 767 }, 768 769 { 770 iso_code: 'DK', 771 name: 'Denmark', 772 currency_code: 'USD' 773 }, 774 775 { 776 iso_code: 'EC', 777 name: 'Ecuador', 778 currency_code: 'USD' 779 }, 780 781 { 782 iso_code: 'SV', 783 name: 'El Salvador', 784 currency_code: 'USD' 785 }, 786 787 { 788 iso_code: 'FI', 789 name: 'Finland', 790 currency_code: 'USD' 791 }, 792 793 { 794 iso_code: 'FR', 795 name: 'France', 796 currency_code: 'USD' 797 }, 798 799 { 800 iso_code: 'DE', 801 name: 'Germany', 802 currency_code: 'USD' 803 }, 804 805 { 806 iso_code: 'GR', 807 name: 'Greece', 808 currency_code: 'USD' 809 }, 810 811 { 812 iso_code: 'HK', 813 name: 'Hong Kong SAR', 814 currency_code: 'USD' 815 }, 816 817 { 818 iso_code: 'HU', 819 name: 'Hungary', 820 currency_code: 'USD' 821 }, 822 823 { 824 iso_code: 'IS', 825 name: 'Iceland', 826 currency_code: 'USD' 827 }, 828 829 { 830 iso_code: 'IE', 831 name: 'Ireland', 832 currency_code: 'USD' 833 }, 834 835 { 836 iso_code: 'IL', 837 name: 'Israel', 838 currency_code: 'USD' 839 }, 840 841 { 842 iso_code: 'IT', 843 name: 'Italy', 844 currency_code: 'USD' 845 }, 846 847 { 848 iso_code: 'JP', 849 name: 'Japan', 850 currency_code: 'USD' 851 }, 852 853 { 854 iso_code: 'JO', 855 name: 'Jordan', 856 currency_code: 'USD' 857 }, 858 859 { 860 iso_code: 'KZ', 861 name: 'Kazakhstan', 862 currency_code: 'USD' 863 }, 864 865 { 866 iso_code: 'KW', 867 name: 'Kuwait', 868 currency_code: 'USD' 869 }, 870 871 { 872 iso_code: 'MY', 873 name: 'Malaysia', 874 currency_code: 'USD' 875 }, 876 877 { 878 iso_code: 'MT', 879 name: 'Malta', 880 currency_code: 'USD' 881 }, 882 883 { 884 iso_code: 'MX', 885 name: 'Mexico', 886 currency_code: 'USD' 887 }, 888 889 { 890 iso_code: 'NA', 891 name: 'Namibia', 892 currency_code: 'USD' 893 }, 894 895 { 896 iso_code: 'NL', 897 name: 'Netherlands', 898 currency_code: 'USD' 899 }, 900 901 { 902 iso_code: 'NC', 903 name: 'New Caledonia', 904 currency_code: 'USD' 905 }, 906 907 { 908 iso_code: 'NO', 909 name: 'Norway', 910 currency_code: 'USD' 911 }, 912 913 { 914 iso_code: 'OM', 915 name: 'Oman', 916 currency_code: 'USD' 917 }, 918 919 { 920 iso_code: 'PE', 921 name: 'Peru', 922 currency_code: 'USD' 923 }, 924 925 { 926 iso_code: 'PH', 927 name: 'Philippines', 928 currency_code: 'USD' 929 }, 930 931 { 932 iso_code: 'PL', 933 name: 'Poland', 934 currency_code: 'USD' 935 }, 936 937 { 938 iso_code: 'PT', 939 name: 'Portugal', 940 currency_code: 'USD' 941 }, 942 943 { 944 iso_code: 'QA', 945 name: 'Qatar', 946 currency_code: 'USD' 947 }, 948 949 { 950 iso_code: 'RO', 951 name: 'Romania', 952 currency_code: 'USD' 953 }, 954 955 { 956 iso_code: 'SA', 957 name: 'Saudi Arabia', 958 currency_code: 'USD' 959 }, 960 961 { 962 iso_code: 'SG', 963 name: 'Singapore', 964 currency_code: 'USD' 965 }, 966 967 { 968 iso_code: 'SK', 969 name: 'Slovakia', 970 currency_code: 'USD' 971 }, 972 973 { 974 iso_code: 'ZA', 975 name: 'South Africa', 976 currency_code: 'USD' 977 }, 978 979 { 980 iso_code: 'ES', 981 name: 'Spain', 982 currency_code: 'USD' 983 }, 984 985 { 986 iso_code: 'SE', 987 name: 'Sweden', 988 currency_code: 'USD' 989 }, 990 991 { 992 iso_code: 'CH', 993 name: 'Switzerland', 994 currency_code: 'USD' 995 }, 996 997 { 998 iso_code: 'TW', 999 name: 'Taiwan', 1000 currency_code: 'USD' 1001 }, 1002 1003 { 1004 iso_code: 'TH', 1005 name: 'Thailand', 1006 currency_code: 'USD' 1007 }, 1008 1009 { 1010 iso_code: 'TR', 1011 name: 'Türkiye', 1012 currency_code: 'USD' 1013 }, 1014 1015 { 1016 iso_code: 'AE', 1017 name: 'United Arab Emirates', 1018 currency_code: 'USD' 1019 }, 1020 1021 { 1022 iso_code: 'GB', 1023 name: 'United Kingdom', 1024 currency_code: 'USD' 1025 }, 1026 1027 { 1028 iso_code: 'US', 1029 name: 'United States', 1030 currency_code: 'USD' 1031 } 1032 1033 ] 1034 }; 1035 1036</script>
1036<!-- END app snippet --><!-- BEGIN app snippet: customer-hub-replace-links -->
1036<script> 1037 function replaceAccountLinks() { 1038 const selector = 1039 'a[href$="/account/login"], a[href$="/account"], a[href^="https://shopify.com/"][href*="/account"], a[href*="/customer_identity/redirect"], a[href*="/customer_authentication/redirect"], a[href$="/account'; 1040 const accountLinksNodes = document.querySelectorAll(selector); 1041 for (const node of accountLinksNodes) { 1042 const ignore = node.dataset.kHubIgnore !== undefined && node.dataset.kHubIgnore !== 'false'; 1043 if (!ignore) { 1044 // Any login links to Shopify's account system, point them at the customer hub instead. 1045 node.href = '#k-hub'; 1046 /** 1047 * There are some themes which apply a page transition on every click of an anchor tag (usually a fade-out) that's supposed to be faded back in when the next page loads. 1048 * However, since clicking the k-hub link doesn't trigger a page load, the page gets stuck on a blank screen. 1049 * Luckily, these themes usually have a className you can add to links to skip the transition. 1050 * Let's hope that all such themes are consistent/copy each other and just proactively add those classNames when we replace the link. 1051 **/ 1052 node.classList.add('no-transition', 'js-no-transition'); 1053 } 1054 } 1055 } 1056 1057 1058 if (document.readyState === 'complete') { 1059 replaceAccountLinks(); 1060 } else { 1061 const controller = new AbortController(); 1062 document.addEventListener( 1063 'readystatechange', 1064 () => { 1065 replaceAccountLinks(); // try to replace links both during `interactive` state and `complete` state 1066 if (document.readyState === 'complete') { 1067 // readystatechange can fire with "complete" multiple times per page load, so make sure we're not duplicating effort 1068 // by removing the listener afterwards. 1069 controller.abort(); 1070 } 1071 }, 1072 { signal: controller.signal }, 1073 ); 1074 } 1075 1076</script>
1076<!-- END app snippet --><!-- END app block --><!-- BEGIN app block: shopify://apps/nosto/blocks/nosto-script-embed-block/a67c43f0-0fc3-4649-a7dc-65ac499cae31 --><!-- BEGIN app snippet: nosto-shop-id -->
1076<script type="application/json" id="nosto-market-tagging">{"shopId":"12341342","market":"290455623","locale":"en" 1077}</script>
1077<!-- END app snippet -->
1077<script> 1078 (function () { 1079 // Market/locale (when resolved) are baked in server-side above, so no DOM parsing or extra 1080 // network hop is needed to build this URL. The only thing that can't be decided server-side 1081 // is the markets-preview override, which depends on a query param/cookie only visible 1082 // client-side - so this inline check is all that's left before the script tag is created. 1083 // It's inline (not a separate asset file) so the preview check runs synchronously, before the 1084 // nosto.js fetch starts - keeping it a single request with no risk of a duplicate load. 1085 var NOSTO_MARKETS_PREVIEW_PARAM = "nostomarketspreview" 1086 1087 function getCookie(cname) { 1088 var name = cname + "=" 1089 var ca = document.cookie.split(';') 1090 for (var i = 0; i < ca.length; i++) { 1091 var c = ca[i] 1092 while (c.charAt(0) === ' ') { 1093 c = c.substring(1) 1094 } 1095 if (c.indexOf(name) === 0) { 1096 try { 1097 return decodeURIComponent(c.substring(name.length, c.length)) 1098 } catch (err) { 1099 console.warn('Failed to decode cookie value', cname, err) 1100 } 1101 } 1102 } 1103 return "" 1104 } 1105 1106 var storage = { 1107 getItem: function (key) { return sessionStorage && sessionStorage.getItem(key) }, 1108 setItem: function (key, value) { return sessionStorage && sessionStorage.setItem(key, value) }, 1109 removeItem: function (key) { return sessionStorage && sessionStorage.removeItem(key) } 1110 } 1111 1112 function isMarketsPreviewEnabled() { 1113 var urlParams = new URLSearchParams(window.location.search) 1114 var isPreviewEnabled = urlParams.get(NOSTO_MARKETS_PREVIEW_PARAM) === "true" 1115 var isPreviewEnabledFromStorage = storage.getItem(NOSTO_MARKETS_PREVIEW_PARAM) === "true" 1116 1117 if (isPreviewEnabled || isPreviewEnabledFromStorage) { 1118 !isPreviewEnabledFromStorage && storage.setItem(NOSTO_MARKETS_PREVIEW_PARAM, "true") 1119 return true 1120 } 1121 1122 if (getCookie(NOSTO_MARKETS_PREVIEW_PARAM) === "true") { 1123 storage.setItem(NOSTO_MARKETS_PREVIEW_PARAM, "true") 1124 return true 1125 } 1126 1127 storage.removeItem(NOSTO_MARKETS_PREVIEW_PARAM) 1128 return false 1129 } 1130 1131 var src = "\/apps\/proxy\/script\/shopify\/market\/nosto.js?merchant=shopify-12341342\u0026market=290455623\u0026locale=en" 1132 if (isMarketsPreviewEnabled()) { 1133 src += "&preview=true" 1134 } 1135 1136 var SCRIPT_ID = "nosto-market-script" 1137 if (document.getElementById(SCRIPT_ID)) { 1138 return 1139 } 1140 1141 var nostoMarketScript = document.createElement("script") 1142 nostoMarketScript.id = SCRIPT_ID 1143 nostoMarketScript.async = true 1144 nostoMarketScript.src = src 1145 document.head.appendChild(nostoMarketScript) 1146 })() 1147</script>
1147<!-- END app block --><!-- BEGIN app block: shopify://apps/design-packs/blocks/design_packs/1efa8e58-6fa1-4c9a-9c0a-e71446c20785 -->
1147<script> 1148 const dp_status = "" 1149 const script = "" 1150 const shop_json = "ShopDrop" 1151 console.log(`WE HAVE THE APP EMBED BLOCK ðð `, dp_status, shop_json , 'test') 1152</script>
1152<!-- END app block --><!-- BEGIN app block: shopify://apps/checkmate/blocks/checked_network/697a3444-1374-4f13-ba8c-ec03db25ebf0 -->
1152<script src="/apps/cm/v1/load?source=embed" async=""></script>
1152<!-- END app block --><link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1152<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: 12341342,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "page"};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>
1152<script> 1153 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1154</script>
1154<script> 1155 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1156 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1157 window.ShopifyAnalytics.meta.currency = 'USD'; 1158 var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":47410774087,"requestId":"9b05d078-55fe-43e7-b4fd-86f98a45efa9-1790268932"}}; 1159 for (var attr in meta) { 1160 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1161 } 1162</script>
1162<script class="analytics"> 1163 (function () { 1164 var customDocumentWrite = function(content) { 1165 var jquery = null; 1166 1167 if (window.jQuery) { 1168 jquery = window.jQuery; 1169 } else if (window.Checkout && window.Checkout.$) { 1170 jquery = window.Checkout.$; 1171 } 1172 1173 if (jquery) { 1174 jquery('body').append(content); 1175 } 1176 }; 1177 1178 var hasLoggedConversion = function(token) { 1179 if (token) { 1180 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1181 } 1182 return false; 1183 } 1184 1185 var setCookieIfConversion = function(token) { 1186 if (token) { 1187 var twoMonthsFromNow = new Date(Date.now()); 1188 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1189 1190 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1191 } 1192 } 1193 1194 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1195 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1196 if (trekkie.integrations) { 1197 return; 1198 } 1199 trekkie.methods = [ 1200 'identify', 1201 'page', 1202 'ready', 1203 'track', 1204 'trackForm', 1205 'trackLink' 1206 ]; 1207 trekkie.factory = function(method) { 1208 return function() { 1209 var args = Array.prototype.slice.call(arguments); 1210 args.unshift(method); 1211 trekkie.push(args); 1212 if (method == 'track' || method == 'page') { 1213 try { 1214 if (window.__TREKKIE_SHIM_QUEUE == null) { 1215 window.__TREKKIE_SHIM_QUEUE = []; 1216 } 1217 window.__TREKKIE_SHIM_QUEUE.push({ 1218 from: 'trekkie-stub', 1219 method: method, 1220 args: args.slice(1) 1221 }); 1222 } catch (e) { 1223 // no-op 1224 } 1225 } 1226 return trekkie; 1227 }; 1228 }; 1229 for (var i = 0; i < trekkie.methods.length; i++) { 1230 var key = trekkie.methods[i]; 1231 trekkie[key] = trekkie.factory(key); 1232 } 1233 trekkie.load = function(config) { 1234 trekkie.config = config || {}; 1235 trekkie.config.initialDocumentCookie = document.cookie; 1236 var first = document.getElementsByTagName('script')[0]; 1237var script = document.createElement('script'); 1238script.type = 'text/javascript'; 1239script.onerror = function(e) { 1240 var scriptFallback = document.createElement('script'); 1241 scriptFallback.type = 'text/javascript'; 1242 scriptFallback.onerror = function(error) { 1243 var Monorail = { 1244 produce: function produce(monorailDomain, schemaId, payload) { 1245 var currentMs = new Date().getTime(); 1246 var event = { 1247 schema_id: schemaId, 1248 payload: payload, 1249 metadata: { 1250 event_created_at_ms: currentMs, 1251 event_sent_at_ms: currentMs 1252 } 1253 }; 1254 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1255 }, 1256 sendRequest: function sendRequest(endpointUrl, payload) { 1257 // Try the sendBeacon API 1258 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1259 var blobData = new window.Blob([payload], { 1260 type: 'text/plain' 1261 }); 1262 1263 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1264 return true; 1265 } // sendBeacon was not successful 1266 1267 } // XHR beacon 1268 1269 var xhr = new XMLHttpRequest(); 1270 1271 try { 1272 xhr.open('POST', endpointUrl); 1273 xhr.setRequestHeader('Content-Type', 'text/plain'); 1274 xhr.send(payload); 1275 } catch (e) { 1276 console.log(e); 1277 } 1278 1279 return false; 1280 }, 1281 isIos12: function isIos12() { 1282 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1283 } 1284 }; 1285 Monorail.produce('monorail-edge.shopifysvc.com', 1286 'trekkie_storefront_load_errors/1.1', 1287 {shop_id: 12341342, 1288 theme_id: 142708572231, 1289 app_name: "storefront", 1290 context_url: window.location.href, 1291 source_url: "//www.harney.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"}); 1292 1293 }; 1294 scriptFallback.async = true; 1295 scriptFallback.src = '//www.harney.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 1296 first.parentNode.insertBefore(scriptFallback, first); 1297}; 1298script.async = true; 1299script.src = '//www.harney.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 1300first.parentNode.insertBefore(script, first); 1301 1302 }; 1303 trekkie.load( 1304 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":12341342,"isMerchantRequest":null,"themeId":142708572231,"themeCityHash":"8102381732208020021","contentLanguage":"en","currency":"USD","eventMetadataId":"ea64ae15-4394-4021-a540-8b999f0bb709"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 1305 ); 1306 1307 var loaded = false;
1308 trekkie.ready(function() { 1309 if (loaded) return; 1310 loaded = true; 1311 1312 window.ShopifyAnalytics.lib = window.trekkie; 1313 1314 var originalDocumentWrite = document.write; 1315 document.write = customDocumentWrite; 1316 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1317 document.write = originalDocumentWrite; 1318 1319 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1320 var token = match? match[1]: undefined; 1321 if (!hasLoggedConversion(token)) { 1322 setCookieIfConversion(token); 1323 1324 } 1325 }); 1326 1327 window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":47410774087,"requestId":"9b05d078-55fe-43e7-b4fd-86f98a45efa9-1790268932","shopifyEmitted":true}); 1328 1329 var eventsListenerScript = document.createElement('script'); 1330 eventsListenerScript.async = true; 1331 eventsListenerScript.src = "//www.harney.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1332 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1333})();</script>
1333<script defer="" src="https://www.harney.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" data-application="storefront-renderer" data-shop-id="12341342" data-render-region="gcp-europe-west1" data-page-type="page" data-theme-instance-id="142708572231" data-theme-name="Focal" data-theme-version="ð 10.1.0" data-monorail-region="shop_domain" data-resource-timing-sampling-rate="10" data-shs="true" data-shs-beacon="true" data-shs-export-with-fetch="true" data-shs-logs-sample-rate="1" data-shs-beacon-endpoint="https://www.harney.com/api/collect"></script>
1333<meta name="shopify-y" content="00000000-0000-0000-5000-000000000000" data-expiration="1821826532000"><meta name="shopify-s" content="00000000-0000-0000-5000-000000000000" data-expiration="1790270732000"><meta name="new-cookie-storage-activated" content="t"></head><body class="no-focus-outline template-page-about-us" data-instant-allow-query-string=""><svg class="visually-hidden"> <linearGradient id="rating-star-gradient-half"> <stop offset="50%" stop-color="rgb(var(--product-star-rating))"></stop> <stop offset="50%" stop-color="rgb(var(--product-star-rating))" stop-opacity="0.4"></stop> </linearGradient> </svg> <a href="#main" class="visually-hidden skip-to-content">Skip to content</a> <loading-bar class="loading-bar"></loading-bar><!-- BEGIN sections: header-group --> <div id="shopify-section-sections--19377427644487__659d627f-96a1-45bd-a910-6e5031c92c20" class="shopify-section shopify-section-group-header-group"><div class="nosto_element" id="nosto-header-banner"></div> </div><div id="shopify-section-sections--19377427644487__769ba3cc-abf3-494c-9334-82de443f6b67" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar"><style> 1334 :root { 1335 --enable-sticky-announcement-bar: 0; 1336 } 1337 1338 #shopify-section-sections--19377427644487__769ba3cc-abf3-494c-9334-82de443f6b67 { 1339 --heading-color: 255, 255, 255; 1340 --text-color: 255, 255, 255; 1341 --primary-button-background: , , ; 1342 --primary-button-text-color: , , ; 1343 --section-background: 162, 93, 24;position: relative;} 1344 1345 @media screen and (min-width: 741px) { 1346 :root { 1347 --enable-sticky-announcement-bar: 0; 1348 } 1349 1350 #shopify-section-sections--19377427644487__769ba3cc-abf3-494c-9334-82de443f6b67 {position: relative; 1351 z-index: unset;} 1352 } 1353</style><section> <announcement-bar class="announcement-bar "><div class="announcement-bar__list"><announcement-bar-item class="announcement-bar__item"><div class="announcement-bar__message text--small"><p><a href="https://www.harney.com/products/hot-cinnamon-spice-tea"><strong>GET YOUR HOT CINNAMON SPICE</strong></a></p> </div></announcement-bar-item></div></announcement-bar> </section>
1353<script> 1354 document.documentElement.style.setProperty('--announcement-bar-height', document.getElementById('shopify-section-sections--19377427644487__769ba3cc-abf3-494c-9334-82de443f6b67').clientHeight + 'px'); 1355 </script>
1355 <style> #shopify-section-sections--19377427644487__769ba3cc-abf3-494c-9334-82de443f6b67 .announcement-bar__message {padding: 7px 0; font-size: 14px;} </style></div><div id="shopify-section-sections--19377427644487__header" class="shopify-section shopify-section-group-header-group shopify-section--header"><style> 1356 :root { 1357 --enable-sticky-header: 1; 1358 --enable-transparent-header: 0; 1359 --loading-bar-background: 0, 0, 0; /* Prevent the loading bar to be invisible */ 1360 } 1361 1362 #shopify-section-sections--19377427644487__header {--header-background: 255, 255, 255; 1363 --header-text-color: 0, 0, 0; 1364 --header-border-color: 217, 217, 217; 1365 --reduce-header-padding: 1;position: -webkit-sticky; 1366 position: sticky; 1367 top: 0;z-index: 4; 1368 }.shopify-section--announcement-bar ~ #shopify-section-sections--19377427644487__header { 1369 top: calc(var(--enable-sticky-announcement-bar, 0) * var(--announcement-bar-height, 0px)); 1370 }#shopify-section-sections--19377427644487__header .header__logo-image { 1371 max-width: 180px; 1372 } 1373 1374 @media screen and (min-width: 741px) { 1375 #shopify-section-sections--19377427644487__header .header__logo-image { 1376 max-width: 175px; 1377 } 1378 } 1379 1380 @media screen and (min-width: 1200px) {/* For this navigation we have to move the logo and make sure the navigation takes the whole width */ 1381 .header__logo { 1382 order: -1; 1383 flex: 1 1 0; 1384 } 1385 1386 .header__inline-navigation { 1387 flex: 1 1 auto; 1388 justify-content: center; 1389 max-width: max-content; 1390 margin-inline: 48px; 1391 }} 1392 1393 /* 1200-1535px: 7 nav items wrapped to two rows, and the pointer path from "Shop Teas" to its mega menu crossed row 2 and closed it. Keep one row. */ 1394 @media screen and (min-width: 1200px) and (max-width: 1535px) { 1395 .header__inline-navigation { 1396 margin-inline: 24px; 1397 } 1398 1399 .header__inline-navigation .header__linklist { 1400 flex-wrap: nowrap; 1401 } 1402 1403 [dir="ltr"] .header__inline-navigation .header__linklist-item:not(:last-child) { 1404 margin-right: 20px; 1405 } 1406 1407 [dir="rtl"] .header__inline-navigation .header__linklist-item:not(:last-child) { 1408 margin-left: 20px; 1409 } 1410 1411 .header__inline-navigation .header__linklist-link { 1412 font-size: 16px; 1413 } 1414 } 1415 1416 @media screen and (min-width: 1200px) and (max-width: 1279px) { 1417 .header__secondary-links .header__phone-link { 1418 display: none; 1419 } 1420 }</style> <div class="sticky-header-trigger"></div> <store-header sticky="" class="header header--bordered " role="banner"><div class="container"> <div class="header__wrapper"> <!-- LEFT PART --> <nav class="header__inline-navigation" role="navigation"><desktop-navigation> <ul class="header__linklist list--unstyled hidden-pocket hidden-lap" role="list"><li class="header__linklist-item has-dropdown" data-item-title="Shop Teas"> <a class="header__linklist-link link--animated" href="/collections/all-loose-tea" aria-controls="desktop-menu-1" aria-expanded="false">Shop Teas</a><div hidden="" id="desktop-menu-1" class="mega-menu"> <div class="container"> <div class="mega-menu__inner"><div class="mega-menu__columns-wrapper"><div class="mega-menu__column"><a href="/collections/loose-tea" class="mega-menu__title heading heading--small">Tea Type</a><ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/collections/matcha" class="link--faded">Matcha</a> </li><li class="linklist__item"> <a href="/collections/white-tea" class="link--faded">White</a> </li><li class="linklist__item"> <a href="/pages/green-teas" class="link--faded">Green</a> </li><li class="linklist__item"> <a href="/pages/oolong-teas" class="link--faded">Oolong</a> </li><li class="linklist__item"> <a href="/pages/black-teas" class="link--faded">Black</a> </li><li class="linklist__item"> <a href="/collections/organic-tea" class="link--faded">Organic</a> </li><li class="linklist__item"> <a href="/pages/herbal-infusions" class="link--faded">Herbals</a> </li><li class="linklist__item"> <a href="/collections/jasmine-tea" class="link--faded">Jasmine</a> </li><li class="linklist__item"> <a href="/collections/decaffeinated-tea" class="link--faded">Decaf</a> </li><li class="linklist__item"> <a href="/collections/pu-erhs" class="link--faded">Pu-Erh</a> </li></ul></div><div class="mega-menu__column"><span class="mega-menu__title heading heading--small">Featured</span><ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/collections/new-arrivals" class="link--faded">New Arrivals</a> </li><li class="linklist__item"> <a href="/collections/best-selling-teas" class="link--faded">Best Sellers</a> </li><li class="linklist__item"> <a href="/collections/specialty-seasonal-teas" class="link--faded">Specialty & Seasonal</a> </li><li class="linklist__item"> <a href="/collections/the-hemp-division" class="link--faded">The Hemp Division</a> </li><li class="linklist__item"> <a href="/pages/wellness" class="link--faded">Wellness Brews</a> </li><li class="linklist__item"> <a href="/collections/fresh-brew-iced-teas" class="link--faded">Fresh Brew Iced Teas</a> </li><li class="linklist__item"> <a href="/collections/sale" class="link--faded">Sale</a> </li><li class="linklist__item"> <a href="/pages/subscription" class="link--faded">Subscribe & Savor</a> </li></ul></div><div class="mega-menu__column"><span class="mega-menu__title heading heading--small">Collections</span><ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/collections/ht-tea-blends" class="link--faded">HT Tea Blends</a> </li><li class="linklist__item"> <a href="/collections/classic-collection" class="link--faded">Classic</a> </li><li class="linklist__item"> <a href="/collections/historic-royal-palaces" class="link--faded">Historic Royal Palaces</a> </li><li class="linklist__item"> <a href="/collections/the-met-collection" class="link--faded">The Met Museum</a> </li><li class="linklist__item"> <a href="/collections/colonial-williamsburg" class="link--faded">Colonial Williamsburg</a> </li><li class="linklist__item"> <a href="/collections/mind-your-body-teas-herbs" class="link--faded">Mind Your Body</a> </li><li class="linklist__item"> <a href="/collections/agatha-christie" class="link--faded">Agatha Christie</a> </li><li class="linklist__item"> <a href="/collections/schitts-creek" class="link--faded">Schitt's Creek</a> </li><li class="linklist__item"> <a href="/collections/childrens-tea-collection" class="link--faded">Tea for Kids</a> </li></ul></div><div class="mega-menu__column"><span class="mega-menu__title heading heading--small">By Package</span><ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="https://www.harney.com/collections/all-loose-tea?products.filter.0.field=skus.customFields.packaging+type&products.filter.0.value.0=Loose" class="link--faded">Loose Tea</a> </li><li class="linklist__item"> <a href="/collections/bag-of-50-sachets" class="link--faded">Sachets: Bags of 50</a> </li><li class="linklist__item"> <a href="/collections/wrapped-sachets" class="link--faded">Sachets: Individually Wrapped</a> </li><li class="linklist__item"> <a href="/collections/tea-bundles" class="link--faded">Bundles</a> </li><li class="linklist__item"> <a href="/collections/20ct-teabags" class="link--faded">Premium Teabags</a> </li><li class="linklist__item"> <a href="/collections/50ct-teabags" class="link--faded">Wrapped Teabags</a> </li><li class="linklist__item"> <a href="/collections/bottled-beverages" class="link--faded">Bottles & Cans</a> </li><li class="linklist__item"> <a href="/collections/tagalongs" class="link--faded">Tagalongs</a> </li><li class="linklist__item"> <a href="/collections/tea-pods" class="link--faded">Tea Pods</a> </li></ul></div><div class="mega-menu__column"><span class="mega-menu__title heading heading--small">Discovery</span><ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/pages/rare-teas" class="link--faded">Rare & Remarkable Teas</a> </li><li class="linklist__item"> <a href="/pages/my-tea-collection" class="link--faded">Play The Tea Flight Shuffle</a> </li><li class="linklist__item"> <a href="/pages/monthly-tea-spotlight" class="link--faded">Monthly Tea Spotlight</a> </li><li class="linklist__item">
1420 <a href="/pages/my-personalized-shopping-page" class="link--faded">Personalized Shop</a> </li><li class="linklist__item"> <a href="/pages/tea-discovery-wheel" class="link--faded">Spin The Wheel of Tea</a> </li></ul></div></div></div> </div> </div></li><li class="header__linklist-item " data-item-title="Sachets"> <a class="header__linklist-link link--animated" href="/collections/sachets">Sachets</a></li><li class="header__linklist-item " data-item-title="Teabags"> <a class="header__linklist-link link--animated" href="/collections/teabags">Teabags</a></li><li class="header__linklist-item " data-item-title="Loose Tea"> <a class="header__linklist-link link--animated" href="/collections/all-loose-tea">Loose Tea</a></li><li class="header__linklist-item " data-item-title="Matcha"> <a class="header__linklist-link link--animated" href="/pages/find-your-matcha">Matcha</a></li><li class="header__linklist-item has-dropdown" data-item-title="Gifts & Accessories"> <a class="header__linklist-link link--animated" href="/collections/gifts" aria-controls="desktop-menu-6" aria-expanded="false">Gifts & Accessories</a><div hidden="" id="desktop-menu-6" class="mega-menu"> <div class="container"> <div class="mega-menu__inner"><div class="mega-menu__images-wrapper mega-menu__images-wrapper--tight"><a href="/collections/the-pantry" class="mega-menu__image-push image-zoom"><div class="mega-menu__image-wrapper"><img src="//www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=424" alt="" srcset="//www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=352 352w, //www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=424 424w" width="424" height="424" loading="lazy" sizes="240,480,720" class="mega-menu__image"> </div><p class="mega-menu__heading heading heading--small">The Pantry</p></a><a href="https://www.harney.com/pages/everyday-gift-guide" class="mega-menu__image-push image-zoom"><div class="mega-menu__image-wrapper"><img src="//www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=352 352w, //www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=700 700w" width="700" height="700" loading="lazy" sizes="240,480,720" class="mega-menu__image" style="object-position:50.0% 50.0%;"> </div><p class="mega-menu__heading heading heading--small">Everyday Gift Guide</p></a><a href="/collections/teaware" class="mega-menu__image-push image-zoom"><div class="mega-menu__image-wrapper"><img src="//www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=352 352w, //www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=700 700w" width="700" height="700" loading="lazy" sizes="240,480,720" class="mega-menu__image"> </div><p class="mega-menu__heading heading heading--small">Teaware</p></a><a href="/products/rise-ai-giftcard" class="mega-menu__image-push image-zoom"><div class="mega-menu__image-wrapper"><img src="//www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=2500" alt="Harney & Sons digital gift card featuring elegant logo and "Gift Card" text on a black background." srcset="//www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=352 352w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=832 832w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=1200 1200w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=1920 1920w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=2500 2500w" width="2500" height="2500" loading="lazy" sizes="240,480,720" class="mega-menu__image" style="object-position:49.902% 50.0%;"> </div><p class="mega-menu__heading heading heading--small">Gift Cards</p></a><a href="/collections/apparel" class="mega-menu__image-push image-zoom"><div class="mega-menu__image-wrapper"><img src="//www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=352 352w, //www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=700 700w" width="700" height="700" loading="lazy" sizes="240,480,720" class="mega-menu__image"> </div><p class="mega-menu__heading heading heading--small">Apparel</p></a></div></div> </div> </div></li><li class="header__linklist-item " data-item-title="Your Perfect Tea Quiz"> <a class="header__linklist-link link--animated" href="/pages/perfect-cup-of-tea-quiz">Your Perfect Tea Quiz</a></li></ul> </desktop-navigation><div class="header__icon-list "><button is="toggle-button" class="header__icon-wrapper tap-area hidden-desk" aria-controls="mobile-menu-drawer" aria-expanded="false"> <span class="visually-hidden">Navigation</span><svg focusable="false" width="18" height="14" class="icon icon--header-hamburger " viewBox="0 0 18 14"> <path d="M0 1h18M0 13h18H0zm0-6h18H0z" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg></button><a href="/search" is="toggle-link" class="header__icon-wrapper tap-area hidden-desk" aria-expanded="false" aria-label="Search"><svg focusable="false" width="18" height="18" class="icon icon--header-search " viewBox="0 0 18 18"> <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg></a> </div></nav> <!-- LOGO PART --><span class="header__logo"><a class="header__logo-link" href="/"><span class="visually-hidden">
1420Harney & Sons Fine Teas</span> <img class="header__logo-image" width="698" height="408" src="//www.harney.com/cdn/shop/files/black.Gold_Top_Logo_copy_360x.png?v=1722864299" alt=""> <img class="header__logo-image header__logo-image--mobile" width="1000" height="220" src="//www.harney.com/cdn/shop/files/HT_Logo_Horizontal-Black.Gold_copy_360x.png?v=1770585323" alt=""> <img class="header__logo-image header__logo-image--sticky" width="4000" height="880" src="//www.harney.com/cdn/shop/files/HT_Logo_Horizontal-Black.Gold_360x.png?v=1764088086" alt=""> </a></span><!-- SECONDARY LINKS PART --> <div class="header__secondary-links"> <a href="tel:+18884276398" class="header__phone-link hidden-pocket text--small" aria-label="Call Harney & Sons customer service, 1-888-427-6398">1-888-427-6398</a><div class="header__icon-list"><button is="toggle-button" class="header__icon-wrapper tap-area hidden-phone " aria-controls="newsletter-popup" aria-expanded="false"> <span class="visually-hidden">Newsletter</span><svg focusable="false" width="20" height="16" class="icon icon--header-email " viewBox="0 0 20 16"> <path d="M19 4l-9 5-9-5" fill="none" stroke="currentColor" stroke-width="1.2"></path> <path stroke="currentColor" fill="none" stroke-width="1.2" d="M1 1h18v14H1z"></path> </svg></button><a href="/search" is="toggle-link" class="header__icon-wrapper tap-area hidden-pocket hidden-lap " aria-label="Search" aria-expanded="false"><svg focusable="false" width="18" height="18" class="icon icon--header-search " viewBox="0 0 18 18"> <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg></a><a href="https://www.harney.com/customer_authentication/redirect?locale=en&region_country=US" class="header__icon-wrapper tap-area " aria-label="Login"><svg focusable="false" width="18" height="17" class="icon icon--header-customer " viewBox="0 0 18 17"> <circle cx="9" cy="5" r="4" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round"></circle> <path d="M1 17v0a4 4 0 014-4h8a4 4 0 014 4v0" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg></a> <a href="/cart" is="toggle-link" aria-controls="mini-cart" aria-expanded="false" class="header__icon-wrapper tap-area " aria-label="Cart" data-no-instant=""><svg focusable="false" width="20" height="18" class="icon icon--header-cart " viewBox="0 0 20 18"> <path d="M3 1h14l1 16H2L3 1z" fill="none" stroke="currentColor" stroke-width="1.2"></path> <path d="M7 4v0a3 3 0 003 3v0a3 3 0 003-3v0" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg><cart-count class="header__cart-count header__cart-count--floating bubble-count">0</cart-count> </a> </div></div> </div></div> </store-header><cart-notification global="" hidden="" class="cart-notification "></cart-notification><mobile-navigation append-body="" id="mobile-menu-drawer" class="drawer drawer--from-left"> <span class="drawer__overlay"></span> <div class="drawer__header drawer__header--shadowed"> <button type="button" class="drawer__close-button drawer__close-button--block tap-area" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close " viewBox="0 0 14 14"> <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path> </svg></button> </div> <div class="drawer__content"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="1"><button is="toggle-button" class="mobile-nav__link heading h5" aria-controls="mobile-menu-1" aria-expanded="false">Shop Teas<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1" class="collapsible"><ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-1-1" aria-expanded="false">Tea Type<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1-1" class="collapsible"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3"> <a href="/collections/matcha" class="mobile-nav__link"> Matcha</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/white-tea" class="mobile-nav__link"> White</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/green-teas" class="mobile-nav__link"> Green</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/oolong-teas" class="mobile-nav__link"> Oolong</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/black-teas" class="mobile-nav__link"> Black</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/organic-tea" class="mobile-nav__link"> Organic</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/herbal-infusions" class="mobile-nav__link"> Herbals</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/jasmine-tea" class="mobile-nav__link"> Jasmine</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/decaffeinated-tea" class="mobile-nav__link"> Decaf</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/pu-erhs" class="mobile-nav__link"> Pu-Erh</a> </li></ul> </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-1-2" aria-expanded="false">Featured<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1-2" class="collapsible"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3"> <a href="/collections/new-arrivals" class="mobile-nav__link"> New Arrivals</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/best-selling-teas" class="mobile-nav__link"> Best Sellers</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/specialty-seasonal-teas" class="mobile-nav__link"> Specialty & Seasonal</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/the-hemp-division" class="mobile-nav__link"> The Hemp Division</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/wellness" class="mobile-nav__link"> Wellness Brews</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/fresh-brew-iced-teas" class="mobile-nav__link"> Fresh Brew Iced Teas</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/sale" class="mobile-nav__link"> Sale</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/subscription" class="mobile-nav__link"> Subscribe & Savor</a> </li></ul> </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-1-3" aria-expanded="false">Collections<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1-3" class="collapsible"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3"> <a href="/collections/ht-tea-blends" class="mobile-nav__link"> HT Tea Blends</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/classic-collection" class="mobile-nav__link"> Classic</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/historic-royal-palaces" class="mobile-nav__link"> Historic Royal Palaces</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/the-met-collection" class="mobile-nav__link"> The Met Museum</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/colonial-williamsburg" class="mobile-nav__link"> Colonial Williamsburg</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/mind-your-body-teas-herbs" class="mobile-nav__link"> Mind Your Body</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/agatha-christie" class="mobile-nav__link"> Agatha Christie</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/schitts-creek" class="mobile-nav__link"> Schitt's Creek</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/childrens-tea-collection" class="mobile-nav__link"> Tea for Kids</a> </li></ul> </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-1-4" aria-expanded="false">By Package<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1-4" class="collapsible"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3"> <a href="https://www.harney.com/collections/all-loose-tea?products.filter.0.field=skus.customFields.packaging+type&products.filter.0.value.0=Loose" class="mobile-nav__link"> Loose Tea</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/bag-of-50-sachets" class="mobile-nav__link"> Sachets: Bags of 50</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/wrapped-sachets" class="mobile-nav__link"> Sachets: Individually Wrapped</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/tea-bundles" class="mobile-nav__link"> Bundles</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/20ct-teabags" class="mobile-nav__link"> Premium Teabags</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/50ct-teabags" class="mobile-nav__link"> Wrapped Teabags</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/bottled-beverages" class="mobile-nav__link"> Bottles & Cans</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/tagalongs" class="mobile-nav__link"> Tagalongs</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/collections/tea-pods" class="mobile-nav__link"> Tea Pods</a> </li></ul> </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-1-5" aria-expanded="false">Discovery<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-1-5" class="collapsible"> <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3"> <a href="/pages/rare-teas" class="mobile-nav__link"> Rare & Remarkable Teas</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/my-tea-collection" class="mobile-nav__link"> Play The Tea Flight Shuffle</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/monthly-tea-spotlight" class="mobile-nav__link"> Monthly Tea Spotlight</a> </li><li class="mobile-nav__item" data-level="3">
1420 <a href="/pages/my-personalized-shopping-page" class="mobile-nav__link"> Personalized Shop</a> </li><li class="mobile-nav__item" data-level="3"> <a href="/pages/tea-discovery-wheel" class="mobile-nav__link"> Spin The Wheel of Tea</a> </li></ul> </collapsible-content></li></ul></collapsible-content></li><li class="mobile-nav__item" data-level="1"><a href="/collections/sachets" data-link-title="sachets" class="mobile-nav__link heading h5">Sachets</a></li><li class="mobile-nav__item" data-level="1"><a href="/collections/teabags" data-link-title="teabags" class="mobile-nav__link heading h5">Teabags</a></li><li class="mobile-nav__item" data-level="1"><a href="/collections/all-loose-tea" data-link-title="loose-tea" class="mobile-nav__link heading h5">Loose Tea</a></li><li class="mobile-nav__item" data-level="1"><a href="/pages/find-your-matcha" data-link-title="matcha" class="mobile-nav__link heading h5">Matcha</a></li><li class="mobile-nav__item" data-level="1"><button is="toggle-button" class="mobile-nav__link heading h5" aria-controls="mobile-menu-6" aria-expanded="false">Gifts & Accessories<span class="animated-plus"></span> </button> <collapsible-content id="mobile-menu-6" class="collapsible"><div class="mobile-nav__images-wrapper mobile-nav__images-wrapper--tight hide-scrollbar"> <div class="mobile-nav__images-scroller"><a href="/collections/the-pantry" class="mobile-nav__image-push"><img src="//www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=424" alt="" srcset="//www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=352 352w, //www.harney.com/cdn/shop/files/Pantry_e32fb432-841b-442b-944e-499b8288169d.webp?v=1717016832&width=424 424w" width="424" height="424" loading="lazy" sizes="270,540,810" class="mobile-nav__image"><p class="mobile-nav__image-heading heading heading--xsmall">The Pantry</p></a><a href="https://www.harney.com/pages/everyday-gift-guide" class="mobile-nav__image-push"><img src="//www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=352 352w, //www.harney.com/cdn/shop/files/2022_Gifts_Classic_Best_Sellers_80225.jpg?v=1770855519&width=700 700w" width="700" height="700" loading="lazy" sizes="270,540,810" class="mobile-nav__image" style="object-position:50.0% 50.0%;"><p class="mobile-nav__image-heading heading heading--xsmall">Everyday Gift Guide</p></a><a href="/collections/teaware" class="mobile-nav__image-push"><img src="//www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=352 352w, //www.harney.com/cdn/shop/files/Mugs_19dad559-5cba-4b24-ad18-a4d174e1db40.webp?v=1717016986&width=700 700w" width="700" height="700" loading="lazy" sizes="270,540,810" class="mobile-nav__image"><p class="mobile-nav__image-heading heading heading--xsmall">Teaware</p></a><a href="/products/rise-ai-giftcard" class="mobile-nav__image-push"><img src="//www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=2500" alt="Harney & Sons digital gift card featuring elegant logo and "Gift Card" text on a black background." srcset="//www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=352 352w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=832 832w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=1200 1200w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=1920 1920w, //www.harney.com/cdn/shop/products/39c19237913249f5be1ee418cb9cadd3.png?v=1762276565&width=2500 2500w" width="2500" height="2500" loading="lazy" sizes="270,540,810" class="mobile-nav__image" style="object-position:49.902% 50.0%;"><p class="mobile-nav__image-heading heading heading--xsmall">Gift Cards</p></a><a href="/collections/apparel" class="mobile-nav__image-push"><img src="//www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=700" alt="" srcset="//www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=352 352w, //www.harney.com/cdn/shop/files/Apparel.webp?v=1717017018&width=700 700w" width="700" height="700" loading="lazy" sizes="270,540,810" class="mobile-nav__image"><p class="mobile-nav__image-heading heading heading--xsmall">Apparel</p></a></div> </div></collapsible-content></li><li class="mobile-nav__item" data-level="1"><a href="/pages/perfect-cup-of-tea-quiz" data-link-title="your-perfect-tea-quiz" class="mobile-nav__link heading h5">Your Perfect Tea Quiz</a></li></ul> </div><div class="drawer__footer drawer__footer--tight drawer__footer--bordered"> <div class="mobile-nav__footer" style="flex-direction: column;"><a class="icon-text mobile-nav__phone-link" href="tel:+18884276398" aria-label="Call Harney & Sons customer service, 1-888-427-6398"><svg fill="none" focusable="false" width="20" height="20" class="icon icon--picto-phone " viewBox="0 0 24 24"> <path fill-rule="evenodd" clip-rule="evenodd" d="M20.6636 16.7325L17.6844 13.7366C17.2337 13.2827 16.4999 13.2827 16.048 13.7343L13.4005 16.3802L7.62246 10.6056L10.2734 7.95613C10.7241 7.5057 10.7253 6.77463 10.2746 6.32305L7.29311 3.33869C6.84126 2.8871 6.10976 2.8871 5.65791 3.33869L3.00462 5.98927L3 5.9858C3 14.2783 9.72568 21 18.023 21L20.6613 18.3633C21.1119 17.9129 21.1131 17.1841 20.6636 16.7325Z" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"></path> </svg>1-888-427-6398</a><a class="icon-text" href="https://www.harney.com/customer_authentication/redirect?locale=en&region_country=US"><svg focusable="false" width="18" height="17" class="icon icon--header-customer " viewBox="0 0 18 17"> <circle cx="9" cy="5" r="4" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round"></circle> <path d="M1 17v0a4 4 0 014-4h8a4 4 0 014 4v0" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg>Customer Account </a> <a class="icon-text" href="https://shopify.com/12341342/account" style="margin-top: 10px;"><svg fill="none" focusable="false" width="26" height="24" class="icon icon--picto-delivery-truck " viewBox="0 0 26 24"> <path d="M17 17H8.68004C8.68004 17 8 16 7 16M17 17V8M17 17H19.32M17 8V3H1V17H5.31996M17 8H23.5L25 12.5V17H22.68C22.68 17 22 16 21 16M21 16C22 16 23 17 23 18C23 19 22 20 21 20C20 20 19 19 19 18C19 17.6527 19.1206 17.3054 19.32 17M21 16C20.3473 16 19.6946 16.426 19.32 17M7 16C8 16 9 17 9 18C9 19 8 20 7 20C6 20 5 19 5 18C5 17.6527 5.12061 17.3054 5.31996 17M7 16C6.3473 16 5.69459 16.426 5.31996 17" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"></path> </svg>Wholesale Account </a> </div> </div></mobile-navigation> <predictive-search-drawer append-body="" reverse-breakpoint="screen and (min-width: 1200px)" id="search-drawer" initial-focus-selector="#search-drawer [name='q']" class="predictive-search drawer drawer--large drawer
1420--from-left"> <span class="drawer__overlay"></span> <header class="drawer__header"> <form id="predictive-search-form" action="/search" method="get" class="predictive-search__form"><svg focusable="false" width="18" height="18" class="icon icon--header-search " viewBox="0 0 18 18"> <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path> </svg><input class="predictive-search__input" type="text" name="q" autocomplete="off" autocorrect="off" aria-label="Search" placeholder="What are you looking for?"> </form> <button type="button" class="drawer__close-button tap-area" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close " viewBox="0 0 14 14"> <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path> </svg></button> </header> <div class="drawer__content"> <div class="predictive-search__content-wrapper"> <div hidden="" class="predictive-search__loading-state"> <div class="spinner"><svg focusable="false" width="50" height="50" class="icon icon--spinner " viewBox="25 25 50 50"> <circle cx="50" cy="50" r="20" fill="none" stroke="#333333" stroke-width="4"></circle> </svg></div> </div> <div hidden="" class="predictive-search__results" aria-live="polite"></div></div> </div> <footer hidden="" class="drawer__footer drawer__footer--no-top-padding"> <button type="submit" form="predictive-search-form" class="button button--primary button--full">View all results</button> </footer> </predictive-search-drawer>
1420<script> 1421 (() => { 1422 const headerElement = document.getElementById('shopify-section-sections--19377427644487__header'), 1423 headerHeight = headerElement.clientHeight, 1424 headerHeightWithoutBottomNav = headerElement.querySelector('.header__wrapper').clientHeight; 1425 1426 document.documentElement.style.setProperty('--header-height', headerHeight + 'px'); 1427 document.documentElement.style.setProperty('--header-height-without-bottom-nav', headerHeightWithoutBottomNav + 'px'); 1428 })(); 1429</script>
1429 </div> <!-- END sections: header-group --><!-- BEGIN sections: overlay-group --> <!-- END sections: overlay-group --><div id="shopify-section-mini-cart" class="shopify-section shopify-section--mini-cart"> <cart-drawer section="mini-cart" id="mini-cart" class="mini-cart drawer drawer--large"> <div class="nosto_element" id="copy-minicart-header-inject"></div> <header class="drawer__header"> <p class="drawer__title heading h6"></p> <button type="button" class="drawer__close-button tap-area" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close " viewBox="0 0 14 14"> <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path> </svg></button> </header><div class="drawer__content drawer__content--center"> <p>Your cart is empty</p> <div class="button-wrapper"> <a href="/pages/collections" class="button button--primary">Start shopping</a> </div> </div></cart-drawer> </div><div id="main" role="main" class="anchor"><div id="shopify-section-template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc" class="shopify-section DP__image-with-text-simple"> <style>#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc { margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__sizer { padding-top: 45px; padding-bottom: 45px; width: 95%; max-width: 900px;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__background { background: ;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__background-image { position: absolute; object-fit: cover; top: 0; left: 0; width: 100%; height: 100%; z-index: -1;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__grid--main { grid-template-columns: 1fr minmax(250px, 50%);}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__text p:last-of-type { margin-bottom: 1.2rem;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__content { padding: 20px; display: flex; justify-content: center; align-items: center;background: linear-gradient(0deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 1) 100%);}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__inner-content { width: 100%; max-width: min(600px, 80%); margin: auto;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__rte p,#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__rte ul { line-height: calc(3px + 2.5ex + 3px); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__small-text p,#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__small-text ul { font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.8);}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__block { color: #000000;}#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__image__wrapper img { border-radius: 50%;padding: 10%; }/* Landscape phone to portrait tablet */@media (max-width: 767px) { #DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__grid--main { grid-template-columns: repeat(1, minmax(250px, 1fr)); }}/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__sizer { min-width: 70%; padding-top: 34px; padding-bottom: 34px; } #DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc .dsgn-pck__inner-content { max-width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc" class="DP--template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc dsgn-pck__main dsgn-pck__section"><div class="dsgn-pck__background"><div class="dsgn-pck__sizer dsgn-pck__grid dsgn-pck__grid--main "> <div class="dsgn-pck__image"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--main"> <svg class="dsgn-pck__svg-sizer" viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=2800" alt="" srcset="//www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=180 180w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=360 360w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=540 540w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=720 720w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=900 900w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=1080 1080w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=1296 1296w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=1512 1512w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=1728 1728w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=1950 1950w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=2100 2100w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=2260 2260w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=2450 2450w, //www.harney.com/cdn/shop/files/about-passion.jpg?v=1619024256&width=2700 2700w" width="2800" height="2800" sizes="(max-width: 480px) 95vw,(max-width: 767px) 95vw,50v
1429w"></div> </div> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-left" style="--dsgn-pck-animate: 1;"> <div class="dsgn-pck__inner-content"><div id="DP--template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-2" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-2 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-2 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-2 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> A Passion For Tea </h2></div><div id="DP--b6aac269-33f0-4e06-a7df-388b39f76516" class="dsgn-pck__block dsgn-pck__block-id-b6aac269-33f0-4e06-a7df-388b39f76516 dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-b6aac269-33f0-4e06-a7df-388b39f76516 { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-b6aac269-33f0-4e06-a7df-388b39f76516 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0;width: 40%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-3" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__0863a48b-c35b-4684-9586-74c0b318d5fc-1685987362532cead7-3 dsgn-pck__block--text dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><div class="dsgn-pck__text dsgn-pck__rte"> <p>Sometimes, when you follow your passion, amazing things happen. Our story is that story.</p> </div></div></div> </div> </div> </div></section>
1429<script type="application/json" data-dsgn-pck="template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc"> 1430 { 1431 "id": "template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc", 1432 "animation": "none" 1433 } 1434</script>
1434<script data-dsgn-pck-js="template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc" type="module" defer=""> 1435(function(){ 1436 1437 const designPack = { 1438 settings: {}, 1439 animateSection: function(entries, observer){ 1440 // Target the first entry available. 1441 let observedSection = entries[0]; 1442 if (observedSection.isIntersecting) { 1443 observedSection.target.classList.add('dsgn-pck__animation-applied'); 1444 } 1445 }, 1446 enableSliderBlock: function(section){ 1447 const sliderBlocks = section.querySelectorAll(`.dsgn-pck__slider-block`); 1448 1449 sliderBlocks.forEach(elem => { 1450 designPack.flkty = new Flickity( elem, { 1451 cellAlign: 'left', 1452 contain: true, 1453 wrapAround: true, 1454 adaptiveHeight: true, 1455 imagesLoaded: true, 1456 prevNextButtons: JSON.parse(getComputedStyle(elem).getPropertyValue('--show-arrows')), 1457 autoPlay: JSON.parse(getComputedStyle(elem).getPropertyValue('--autoplay')), 1458 fade: JSON.parse(getComputedStyle(elem).getPropertyValue('--slider-animation')), 1459 pageDots: JSON.parse(getComputedStyle(elem).getPropertyValue('--page-dots')), 1460 draggable: JSON.parse(getComputedStyle(elem).getPropertyValue('--draggable')), 1461 freeScrollFriction: JSON.parse(getComputedStyle(elem).getPropertyValue('--free-scroll-friction')), 1462 selectedAttraction: JSON.parse(getComputedStyle(elem).getPropertyValue('--selected-attraction')), 1463 friction: JSON.parse(getComputedStyle(elem).getPropertyValue('--friction')), 1464 dragThreshold: JSON.parse(getComputedStyle(elem).getPropertyValue('--drag-threshold')) 1465 }); 1466 }); 1467 1468 }, 1469 initializeClock(selector, endtime, section) { 1470 function updateClock() { 1471 const t = designPack.getTimeRemaining(endtime); 1472 const daysSpan = clock.querySelector('.dsgn-pck__days .dsgn-pck__number'); 1473 const hoursSpan = clock.querySelector('.dsgn-pck__hours .dsgn-pck__number'); 1474 const minutesSpan = clock.querySelector('.dsgn-pck__minutes .dsgn-pck__number'); 1475 const secondsSpan = clock.querySelector('.dsgn-pck__seconds .dsgn-pck__number'); 1476 1477 if (daysSpan.innerHTML != t.days){ 1478 daysSpan.innerHTML = t.days; 1479 } 1480 if (hoursSpan.innerHTML != t.hours){ 1481 hoursSpan.innerHTML = ('0' + t.hours).slice(-2); 1482 } 1483 if (minutesSpan.innerHTML != t.minutes){ 1484 minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); 1485 } 1486 if (secondsSpan.innerHTML != t.seconds){ 1487 secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); 1488 } 1489 1490 if (t.total <= 0) { 1491 clearInterval(timeinterval); 1492 } 1493 } 1494 1495 const clock = section.querySelector(selector); 1496 updateClock(); 1497 const timeinterval = setInterval(updateClock, 1000); 1498 }, 1499 getTimeRemaining(endtime){ 1500 const total = Date.parse(endtime) - Date.parse(new Date()); 1501 const seconds = Math.floor( (total/1000) % 60 ); 1502 const minutes = Math.floor( (total/1000/60) % 60 ); 1503 const hours = Math.floor( (total/(1000*60*60)) % 24 ); 1504 const days = Math.floor( total/(1000*60*60*24) ); 1505 1506 return { 1507 total, 1508 days, 1509 hours, 1510 minutes, 1511 seconds 1512 }; 1513 }, 1514 enableCountdownTimer: function(section){ 1515 const clock = '.dsgn-pck__clock'; 1516 const startDate = section.querySelector('[data-timer-start]').dataset.timerStart; 1517 const endDate = section.querySelector('[data-timer-end]').dataset.timerEnd; 1518 1519 const startMs = Date.parse(startDate); 1520 const endMs = Date.parse(endDate); 1521 const currentMs = Date.parse(new Date()); 1522 1523 if (endMs > currentMs && currentMs >= startMs ) { 1524 designPack.initializeClock(clock, endDate, section); 1525 } else { 1526 section.querySelector(`.dsgn-pck__clock-wrap`).style.display = 'none'; 1527 } 1528 }, 1529 load: function(section){ 1530 1531 if (this.settings.animation !== 'none'){ 1532 const options = { 1533 root: null, 1534 rootMargin: '0px', 1535 threshold: [0, 0.25, 0.5, 0.75, 1] 1536 }; 1537 // Construct Intersection Observer. 1538 const observer = new IntersectionObserver( this.animateSection, options ); 1539 // Observe if element is present. 1540 if (section) { 1541 observer.observe(section); 1542 } 1543 } 1544 1545 const countdownTimer = section.querySelector('.dsgn-pck__clock'); 1546 if (typeof countdownTimer !== 'undefined' && countdownTimer !== null){ 1547 designPack.enableCountdownTimer(section); 1548 } 1549 1550 const sliderBlock = section.querySelector('.dsgn-pck__slider-block'); 1551 if (typeof sliderBlock !== 'undefined' && sliderBlock !== null){ 1552 designPack.enableSliderBlock(section); 1553 } 1554 }, 1555 unload: function(section){ 1556 section.classList.remove('dsgn-pck__animation-applied') 1557 } 1558 } 1559 1560 window.addEventListener('shopify:section:unload', function (e) { 1561 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 1562 const sectionId = e.detail.sectionId; 1563 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 1564 if (sectionId == designPack.settings.id){ 1565 designPack.unload(section); 1566 } 1567 }); 1568 1569 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc"]').innerHTML); 1570 const sectionId = "template--19377441865799__0863a48b-c35b-4684-9586-74c0b318d5fc"; 1571 const section = document.querySelector(`#DP--${sectionId}`); 1572 1573 if (sectionId == designPack.settings.id){ 1574 designPack.load(section); 1575 } 1576})() 1577</script>
1577 </div><div id="shopify-section-template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58" class="shopify-section DP__image-with-text-simple"> <style>#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 { margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__sizer { padding-top: 45px; padding-bottom: 45px; width: 95%; max-width: 900px;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__background { background: #FFFCF5;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__background-image { position: absolute; object-fit: cover; top: 0; left: 0; width: 100%; height: 100%; z-index: -1;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__grid--main { grid-template-columns: 1fr minmax(250px, 50%);}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__text p:last-of-type { margin-bottom: 1.2rem;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__content { padding: 20px; display: flex; justify-content: center; align-items: center;background: ;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__inner-content { width: 100%; max-width: min(600px, 80%); margin: auto;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__rte p,#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__rte ul { line-height: calc(3px + 2.5ex + 3px); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__small-text p,#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__small-text ul { font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.8);}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__block { color: #000000;}#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 { border-top: thin solid; border-bottom: thin solid; border-color: #9B8381; }#DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__image__wrapper img { border-radius: 50%;padding: 10%; }/* Landscape phone to portrait tablet */@media (max-width: 767px) { #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__grid--main { grid-template-columns: repeat(1, minmax(250px, 1fr)); }}/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__sizer { min-width: 70%; padding-top: 34px; padding-bottom: 34px; } #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__inner-content { max-width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58" class="DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 dsgn-pck__main dsgn-pck__section"><div class="dsgn-pck__background"><div class="dsgn-pck__sizer dsgn-pck__grid dsgn-pck__grid--main dsgn-pck__grid-reverse"> <div class="dsgn-pck__image"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--main"> <svg class="dsgn-pck__svg-sizer" viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=2800" alt="" srcset="//www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=180 180w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=360 360w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=540 540w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=720 720w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=900 900w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=1080 1080w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=1296 1296w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=1512 1512w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=1728 1728w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=1950 1950w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=2100 2100w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=2260 2260w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=2450 2450w, //www.harney.com/cdn/shop/files/john-harney.jpg?v=1619023817&width=2700 2700w" width="2800" height="2800" sizes="(max-width: 480px) 95vw,(max-width: 767px) 95vw,50v
1577w"></div> </div> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-left" style="--dsgn-pck-animate: 1;"> <div class="dsgn-pck__inner-content"><div id="DP--f2db09dc-2f19-441c-877a-ccde38951107" class="dsgn-pck__block dsgn-pck__block-id-f2db09dc-2f19-441c-877a-ccde38951107 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-f2db09dc-2f19-441c-877a-ccde38951107 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-f2db09dc-2f19-441c-877a-ccde38951107 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> John Harney </h2></div><div id="DP--be103f48-0a59-466f-932d-f98515f381d9" class="dsgn-pck__block dsgn-pck__block-id-be103f48-0a59-466f-932d-f98515f381d9 dsgn-pck__block--text dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><div class="dsgn-pck__text dsgn-pck__rte"> <p><strong>FOUNDER & PRESIDENT</strong></p> </div></div><div id="DP--f106d8b5-7326-47f3-a391-67a1592926b4" class="dsgn-pck__block dsgn-pck__block-id-f106d8b5-7326-47f3-a391-67a1592926b4 dsgn-pck__block--divider dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><style> .dsgn-pck__block-id-f106d8b5-7326-47f3-a391-67a1592926b4 { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-f106d8b5-7326-47f3-a391-67a1592926b4 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0;width: 40%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--621840ee-5786-41ea-9468-4f3fc854f90f" class="dsgn-pck__block dsgn-pck__block-id-621840ee-5786-41ea-9468-4f3fc854f90f dsgn-pck__block--text dsgn-pck__block--4" style="--dsgn-pck-animate: 4;"><div class="dsgn-pck__text dsgn-pck__rte"> <p>For more than four decades, John Harney and his family have blended fine tea. John learned the craft from his mentor, Stanley Mason, and served his early blends to guests at his inn in Salisbury, Connecticut. In 1983 he founded Harney & Sons from his basement; the rest, as they say, is history.</p> </div></div><div id="DP--2e08cddf-f454-437e-81c1-2cc66d5ef846" class="dsgn-pck__block dsgn-pck__block-id-2e08cddf-f454-437e-81c1-2cc66d5ef846 dsgn-pck__block--spacer dsgn-pck__block--5" style="--dsgn-pck-animate: 5;"><style> #shopify-section-template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__block-id-2e08cddf-f454-437e-81c1-2cc66d5ef846, #shopify-section-template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 #DP--template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58 .dsgn-pck__block-id-2e08cddf-f454-437e-81c1-2cc66d5ef846 + .dsgn-pck__block { margin-top: 0; } .dsgn-pck__block-id-2e08cddf-f454-437e-81c1-2cc66d5ef846 .dsgn-pck__spacer { height: 25px; display: block !important; } @media (max-width: 480px) { .dsgn-pck__block-id-2e08cddf-f454-437e-81c1-2cc66d5ef846 .dsgn-pck__spacer { height: 19px; } } </style> <div class="dsgn-pck__spacer" aria-hidden="true"></div></div><div id="DP--693309f5-dea4-4472-8f90-8747416a915b" class="dsgn-pck__block dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b dsgn-pck__block--buttons dsgn-pck__block--6" style="--dsgn-pck-animate: 6;"><style>.dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button-area { display: grid; grid-gap: 1.3em;grid-template-columns: 1fr; max-width: 200px;max-width: 100%; width: fit-content; } .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button { display: flex; justify-content: center; align-items: center; text-align: center; text-decoration: none; padding: 0.5em 1.2em; margin-top: 0; border: thin solid; transition: all 0.3s ease-in-out; border-radius: 0px; line-height: calc(3px + 2ex + 3px); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);} .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button-primary { color: #ffffff; border-color:#9b8381; background-color: #9b8381; } .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button-secondary { color: #ffffff; border-color:#121212; background-color: #121212; } .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button-primary:hover { opacity: 1;background-color: #826967; border-color: transparent;; } .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b .dsgn-pck__button-secondary:hover { opacity: 1;background-color: #000000; border-color: transparent;; } @media (max-width: 480px) { .dsgn-pck__block-id-693309f5-dea4-4472-8f90-8747416a915b div.dsgn-pck__button-area { grid-template-columns: 1fr; width: 100%; gap: 10px; } } </style> <div class="dsgn-pck__button-area"><a class="dsgn-pck__button dsgn-pck__button-primary" href="#about-john">Learn more</a></div></div></div> </div> </div> </div></section>
1577<script type="application/json" data-dsgn-pck="template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58"> 1578 { 1579 "id": "template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58", 1580 "animation": "none" 1581 } 1582</script>
1582<script data-dsgn-pck-js="template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58" type="module" defer=""> 1583(function(){ 1584 1585 const designPack = { 1586 settings: {}, 1587 animateSection: function(entries, observer){ 1588 // Target the first entry available. 1589 let observedSection = entries[0]; 1590 if (observedSection.isIntersecting) { 1591 observedSection.target.classList.add('dsgn-pck__animation-applied'); 1592 } 1593 }, 1594 enableSliderBlock: function(section){ 1595 const sliderBlocks = section.querySelectorAll(`.dsgn-pck__slider-block`); 1596 1597 sliderBlocks.forEach(elem => { 1598 designPack.flkty = new Flickity( elem, { 1599 cellAlign: 'left', 1600 contain: true, 1601 wrapAround: true, 1602 adaptiveHeight: true, 1603 imagesLoaded: true, 1604 prevNextButtons: JSON.parse(getComputedStyle(elem).getPropertyValue('--show-arrows')), 1605 autoPlay: JSON.parse(getComputedStyle(elem).getPropertyValue('--autoplay')), 1606 fade: JSON.parse(getComputedStyle(elem).getPropertyValue('--slider-animation')), 1607 pageDots: JSON.parse(getComputedStyle(elem).getPropertyValue('--page-dots')), 1608 draggable: JSON.parse(getComputedStyle(elem).getPropertyValue('--draggable')), 1609 freeScrollFriction: JSON.parse(getComputedStyle(elem).getPropertyValue('--free-scroll-friction')), 1610 selectedAttraction: JSON.parse(getComputedStyle(elem).getPropertyValue('--selected-attraction')), 1611 friction: JSON.parse(getComputedStyle(elem).getPropertyValue('--friction')), 1612 dragThreshold: JSON.parse(getComputedStyle(elem).getPropertyValue('--drag-threshold')) 1613 }); 1614 }); 1615 1616 }, 1617 initializeClock(selector, endtime, section) { 1618 function updateClock() { 1619 const t = designPack.getTimeRemaining(endtime); 1620 const daysSpan = clock.querySelector('.dsgn-pck__days .dsgn-pck__number'); 1621 const hoursSpan = clock.querySelector('.dsgn-pck__hours .dsgn-pck__number'); 1622 const minutesSpan = clock.querySelector('.dsgn-pck__minutes .dsgn-pck__number'); 1623 const secondsSpan = clock.querySelector('.dsgn-pck__seconds .dsgn-pck__number'); 1624 1625 if (daysSpan.innerHTML != t.days){ 1626 daysSpan.innerHTML = t.days; 1627 } 1628 if (hoursSpan.innerHTML != t.hours){ 1629 hoursSpan.innerHTML = ('0' + t.hours).slice(-2); 1630 } 1631 if (minutesSpan.innerHTML != t.minutes){ 1632 minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); 1633 } 1634 if (secondsSpan.innerHTML != t.seconds){ 1635 secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); 1636 } 1637 1638 if (t.total <= 0) { 1639 clearInterval(timeinterval); 1640 } 1641 } 1642 1643 const clock = section.querySelector(selector); 1644 updateClock(); 1645 const timeinterval = setInterval(updateClock, 1000); 1646 }, 1647 getTimeRemaining(endtime){ 1648 const total = Date.parse(endtime) - Date.parse(new Date()); 1649 const seconds = Math.floor( (total/1000) % 60 ); 1650 const minutes = Math.floor( (total/1000/60) % 60 ); 1651 const hours = Math.floor( (total/(1000*60*60)) % 24 ); 1652 const days = Math.floor( total/(1000*60*60*24) ); 1653 1654 return { 1655 total, 1656 days, 1657 hours, 1658 minutes, 1659 seconds 1660 }; 1661 }, 1662 enableCountdownTimer: function(section){ 1663 const clock = '.dsgn-pck__clock'; 1664 const startDate = section.querySelector('[data-timer-start]').dataset.timerStart; 1665 const endDate = section.querySelector('[data-timer-end]').dataset.timerEnd; 1666 1667 const startMs = Date.parse(startDate); 1668 const endMs = Date.parse(endDate); 1669 const currentMs = Date.parse(new Date()); 1670 1671 if (endMs > currentMs && currentMs >= startMs ) { 1672 designPack.initializeClock(clock, endDate, section); 1673 } else { 1674 section.querySelector(`.dsgn-pck__clock-wrap`).style.display = 'none'; 1675 } 1676 }, 1677 load: function(section){ 1678 1679 if (this.settings.animation !== 'none'){ 1680 const options = { 1681 root: null, 1682 rootMargin: '0px', 1683 threshold: [0, 0.25, 0.5, 0.75, 1] 1684 }; 1685 // Construct Intersection Observer. 1686 const observer = new IntersectionObserver( this.animateSection, options ); 1687 // Observe if element is present. 1688 if (section) { 1689 observer.observe(section); 1690 } 1691 } 1692 1693 const countdownTimer = section.querySelector('.dsgn-pck__clock'); 1694 if (typeof countdownTimer !== 'undefined' && countdownTimer !== null){ 1695 designPack.enableCountdownTimer(section); 1696 } 1697 1698 const sliderBlock = section.querySelector('.dsgn-pck__slider-block'); 1699 if (typeof sliderBlock !== 'undefined' && sliderBlock !== null){ 1700 designPack.enableSliderBlock(section); 1701 } 1702 }, 1703 unload: function(section){ 1704 section.classList.remove('dsgn-pck__animation-applied') 1705 } 1706 } 1707 1708 window.addEventListener('shopify:section:unload', function (e) { 1709 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 1710 const sectionId = e.detail.sectionId; 1711 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 1712 if (sectionId == designPack.settings.id){ 1713 designPack.unload(section); 1714 } 1715 }); 1716 1717 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58"]').innerHTML); 1718 const sectionId = "template--19377441865799__c531cb56-6e6c-408b-b101-10cb130f4d58"; 1719 const section = document.querySelector(`#DP--${sectionId}`); 1720 1721 if (sectionId == designPack.settings.id){ 1722 designPack.load(section); 1723 } 1724})() 1725</script>
1725 </div><div id="shopify-section-template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f" class="shopify-section DP__modal-popup"> <style>#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f { z-index: 2000;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__overlay { display: none;position: fixed; inset: 0; z-index: 2000;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__overlay-background { content: ''; display: block; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18, 18, 18, 0.9), rgba(18, 18, 18, 0.9) 100%);}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__modal { position: relative; margin: auto; width: 70%; max-width: px; box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px; pointer-events: auto; overflow: auto; max-height: 94vh; padding-top: 60px; padding-bottom: 60px; background: linear-gradient(0deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 1) 100%);}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__close-modal { position: absolute; right: 0; top: 0; background: none; border: none; padding: 20px; cursor: pointer; z-index: 1;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__close-modal svg path { fill: #000000;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__content { padding: 2em;color: #000000;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__inner-content { max-width: 100%;}:focus-visible { box-shadow: 0 0 0 3px rgba(21, 156, 228, 0.4);}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__rte p,#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__rte ul { line-height: calc(3px + 2.5ex + 3px); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__small-text p,#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__small-text ul { font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.8);}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__block { color: #000000;}#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f [style*="--dsgn-pck-animate"] { opacity: 1; }/* Landscape phone to portrait tablet */@media (max-width: 767px) { #DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__content { padding: 1.5rem; }}/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f .dsgn-pck__sizer { padding-top: 30px; padding-bottom: 30px; }}</style><section id="DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f" class="DP--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f dsgn-pck__section"> <div class="dsgn-pck__background dsgn-pck__overlay dsgn-pck__overlay--template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f" role="dialog" aria-modal="true" aria-live="assertive" aria-labelledby="modal-title"> <div class="dsgn-pck__overlay-background"></div> <div class="dsgn-pck__sizer dsgn-pck__modal"> <button class="dsgn-pck__close-modal" aria-label="Close"> <svg viewBox="0 0 20 20" style="width: 20px; height: 20px;"><path d="M16.707 4.707a1 1 0 0 0-1.414-1.414l-5.293 5.293-5.293-5.293a1 1 0 0 0-1.414 1.414l5.293 5.293-5.293 5.293a1 1 0 1 0 1.414 1.414l5.293-5.293 5.293 5.293a1 1 0 0 0 1.414-1.414l-5.293-5.293 5.293-5.293Z"></path></svg> </button> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-left" style="--dsgn-pck-animate: 1;"> <div class="dsgn-pck__inner-content"><div id="DP--template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-0" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-0 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-0 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-0 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> John Harney </h2></div><div id="DP--66e57bec-54f2-4461-91c3-83e0cab742b0" class="dsgn-pck__block dsgn-pck__block-id-66e57bec-54f2-4461-91c3-83e0cab742b0 dsgn-pck__block--text dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-66e57bec-54f2-4461-91c3-83e0cab742b0 p, .dsgn-pck__block-id-66e57bec-54f2-4461-91c3-83e0cab742b0 ul { line-height: calc(3px + 2.5ex + 3px); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}</style><div class="dsgn-pck__text dsgn-pck__rte"> <p><strong>FOUNDER & PRESIDENT</strong></p> </div></div><div id="DP--fcc3d5a8-1ae4-4589-ab7d-9de1e11a9784" class="dsgn-pck__block dsgn-pck__block-id-fcc3d5a8-1ae4-4589-ab7d-9de1e11a9784 dsgn-pck__block--divider dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><style> .dsgn-pck__block-id-fcc3d5a8-1ae4-4589-ab7d-9de1e11a9784 { padding-top: 20px; padding-bottom: 20px; } .dsgn-pck__block-id-fcc3d5a8-1ae4-4589-ab7d-9de1e11a9784 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0;width: 20%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-1" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-1 dsgn-pck__block--text dsgn-pck__block--4" style="--dsgn-pck-animate: 4;"><style> .dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-1 p, .dsgn-pck__block-id-template--14572466110535__d612048a-0345-46af-876b-7efec3aabf9f-168598804157ced18c-1 ul { line-height: calc(3px + 2.5ex + 3px); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}</style><div class="dsgn-pck__text dsgn-pck__rte"> <p>For more than four decades, Harney & Sons has been a family tea company. Our founder, John Harney, came to tea through his mentor, Stanley Mason, the owner of Sarum Teas in Salisbury, Connecticut. As the managing partner of the townâs White Hart Inn, John served his own blends to guests long before they reached a wider audience. In 1983 he bought Sarum Teas and founded Harney & Sons, blending from his basement.</p><p>Today, Michael and Paul Harney carry on what their father built, with the third generation now part of the work. With a bottling plant, warehouse, two stores, and a thriving international e-commerce business, Johnâs passion lives on in his family.</p> </div></div></div> </div> </div> </div></section>
1725<script type="application/json" data-dsgn-pck="template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f"> 1726 { 1727 "id": "template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f", 1728 "animation": "none", 1729 "popup_delay": 3000, 1730 "popup_dismiss_days": "1", 1731 "anchor_id": "#about-john", 1732 "modal_action": "option_1" 1733 } 1734</script>
1734<script data-dsgn-pck-js="template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f"> 1735(function(){ 1736 1737 const designPack = { 1738 settings: {}, 1739 animateSection: function(entries, observer){ 1740 // Target the first entry available. 1741 let observedSection = entries[0]; 1742 if (observedSection.isIntersecting) { 1743 observedSection.target.classList.add('dsgn-pck__animation-applied'); 1744 } 1745 }, 1746 initializeClock(selector, endtime, section) { 1747 function updateClock() { 1748 const t = designPack.getTimeRemaining(endtime); 1749 const daysSpan = clock.querySelector('.dsgn-pck__days .dsgn-pck__number'); 1750 const hoursSpan = clock.querySelector('.dsgn-pck__hours .dsgn-pck__number'); 1751 const minutesSpan = clock.querySelector('.dsgn-pck__minutes .dsgn-pck__number'); 1752 const secondsSpan = clock.querySelector('.dsgn-pck__seconds .dsgn-pck__number'); 1753 1754 if (daysSpan.innerHTML != t.days){ 1755 daysSpan.innerHTML = t.days; 1756 } 1757 if (hoursSpan.innerHTML != t.hours){ 1758 hoursSpan.innerHTML = ('0' + t.hours).slice(-2); 1759 } 1760 if (minutesSpan.innerHTML != t.minutes){ 1761 minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); 1762 } 1763 if (secondsSpan.innerHTML != t.seconds){ 1764 secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); 1765 } 1766 1767 if (t.total <= 0) { 1768 clearInterval(timeinterval); 1769 } 1770 } 1771 1772 const clock = section.querySelector(selector); 1773 updateClock(); 1774 const timeinterval = setInterval(updateClock, 1000); 1775 }, 1776 getTimeRemaining(endtime){ 1777 const total = Date.parse(endtime) - Date.parse(new Date()); 1778 const seconds = Math.floor( (total/1000) % 60 ); 1779 const minutes = Math.floor( (total/1000/60) % 60 ); 1780 const hours = Math.floor( (total/(1000*60*60)) % 24 ); 1781 const days = Math.floor( total/(1000*60*60*24) ); 1782 1783 return { 1784 total, 1785 days, 1786 hours, 1787 minutes, 1788 seconds 1789 }; 1790 }, 1791 enableCountdownTimer: function(section){ 1792 const clock = '.dsgn-pck__clock'; 1793 const startDate = section.querySelector('[data-timer-start]').dataset.timerStart; 1794 const endDate = section.querySelector('[data-timer-end]').dataset.timerEnd; 1795 1796 const startMs = Date.parse(startDate); 1797 const endMs = Date.parse(endDate); 1798 const currentMs = Date.parse(new Date()); 1799 1800 if (endMs > currentMs && currentMs >= startMs ) { 1801 designPack.initializeClock(clock, endDate, section); 1802 } else { 1803 section.querySelector(`.dsgn-pck__clock-wrap`).style.display = 'none'; 1804 } 1805 }, 1806 attachEventListener(openButtons, closeButtons, overlay) { 1807 openButtons.forEach(button => { 1808 button.addEventListener('click', designPack.modal.callOpen) 1809 }); 1810 closeButtons.forEach(button => { 1811 button.addEventListener('click', designPack.modal.callClose) 1812 }); 1813 overlay.addEventListener('click', designPack.handleOverlayClick) 1814 window.addEventListener('keydown', designPack.callIfEscPress) 1815 }, 1816 modal: { 1817 callOpen: () => { 1818 designPack.modal.opener = document.activeElement 1819 designPack.openModal() 1820 }, 1821 callClose: () => { 1822 designPack.closeModal(designPack.modal.opener) 1823 }, 1824 handleOverlayClick: (event) => { 1825 if(event.target.className === 'dsgn-pck__overlay-background'){ 1826 designPack.closeModal(designPack.modal.opener) 1827 } 1828 } 1829 }, 1830 handleOverlayClick: (event) => { 1831 if(event.target.className === 'dsgn-pck__overlay-background'){ 1832 designPack.closeModal(designPack.opener) 1833 } 1834 }, 1835 setVisible(visible) { 1836 const display = visible? 'flex' : 'none' 1837 document.querySelector(`.dsgn-pck__overlay--${designPack.settings.id}`).style.display = display 1838 }, 1839 callIfEscPress(event){ 1840 if(event.key === 'Escape') { 1841 designPack.modal.callClose() 1842 } 1843 }, 1844 setFocus() { 1845 document.querySelectorAll('.dsgn-pck__modal button, .dsgn-pck__modal input, .dsgn-pck__modal textarea, .dsgn-pck__modal select')[0].focus() 1846 }, 1847 openModal: function(){ 1848 designPack.setVisible(true) 1849 designPack.setFocus() 1850 }, 1851 closeModal: function(opener){ 1852 designPack.setVisible(false) 1853 localStorage.setItem(`popup${designPack.settings.id}Shown`, Date.now().toString());
1854 //opener.focus() 1855 }, 1856 load: function(section){ 1857 1858 if (this.settings.animation !== 'none'){ 1859 const options = { 1860 root: null, 1861 rootMargin: '0px', 1862 threshold: [0, 0.25, 0.5, 0.75, 1] 1863 }; 1864 // Construct Intersection Observer. 1865 const observer = new IntersectionObserver( this.animateSection, options ); 1866 // Observe if element is present. 1867 if (section) { 1868 observer.observe(section); 1869 } 1870 } 1871 1872 /* Modal */ 1873 let openButtons; 1874 if (designPack.settings.modal_action == 'option_1') { 1875 openButtons = document.querySelectorAll(`a[href="${designPack.settings.anchor_id}"]`); 1876 } else { 1877 openButtons = section.querySelectorAll('.dsgn-pck__open-modal'); 1878 } 1879 const closeButtons = section.querySelectorAll('.dsgn-pck__close-modal'); 1880 const overlay = section.querySelector('.dsgn-pck__overlay'); 1881 designPack.attachEventListener(openButtons, closeButtons, overlay); 1882 1883 if (designPack.settings.modal_action == 'option_2'){ 1884 const popupShown = localStorage.getItem(`popup${designPack.settings.id}Shown`); 1885 if (!popupShown) { 1886 // Popup has not been shown before 1887 setTimeout(function(){ 1888 designPack.modal.callOpen(); 1889 }, this.settings.popup_delay); 1890 } else { 1891 // Popup has been shown before, check if enough days have passed 1892 const daysPassed = Math.floor((Date.now() - parseInt(popupShown)) / (24 * 60 * 60 * 1000)); 1893 const daysToHide = this.settings.popup_dismiss_days; // Number of days to hide the popup 1894 if (daysPassed >= daysToHide){ 1895 setTimeout(function(){ 1896 designPack.modal.callOpen(); 1897 }, this.settings.popup_delay); 1898 } 1899 } 1900 } 1901 1902 /* Countdown timer */ 1903 const countdownTimer = section.querySelector('.dsgn-pck__clock'); 1904 if (typeof countdownTimer !== 'undefined' && countdownTimer !== null){ 1905 designPack.enableCountdownTimer(section); 1906 } 1907 1908 }, 1909 unload: function(section){ 1910 section.classList.remove('dsgn-pck__animation-applied') 1911 } 1912 } 1913 1914 window.addEventListener('shopify:section:unload', function (e) { 1915 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 1916 const sectionId = e.detail.sectionId; 1917 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 1918 if (sectionId == designPack.settings.id){ 1919 designPack.unload(section); 1920 } 1921 }); 1922 1923 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f"]').innerHTML); 1924 const sectionId = "template--19377441865799__d612048a-0345-46af-876b-7efec3aabf9f"; 1925 const section = document.querySelector(`#DP--${sectionId}`); 1926 1927 if (sectionId == designPack.settings.id){ 1928 designPack.load(section); 1929 } 1930})() 1931</script>
1931 </div><div id="shopify-section-template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da" class="shopify-section DP__heading-simple"> <style>#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da { background: ; margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__sizer { width: 90%; margin: auto; max-width: 1000px; padding-top: 60px; padding-bottom: 20px;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__background { width: 100%;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__image__wrapper::before { content: ''; display: block; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 1; background: ;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__image__wrapper img { object-position: ;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__grid { height: 100%;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__content { z-index: 2; height: 100%; grid-template-columns: 1fr; grid-area: 1 / 1 / 2 / 2;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__inner-content { z-index: 2; max-width: ; width: 100%; padding:; background: ;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__block { color: #121212;}#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da [style*="--dsgn-pck-animate"] { opacity: 1; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__sizer { padding-top: 45px; padding-bottom: 15px; } #DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da .dsgn-pck__inner-content { width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da" class="DP--template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da dsgn-pck__heading-simple dsgn-pck__section"><div class="dsgn-pck__background"> <div class="dsgn-pck__sizer dsgn-pck__grid"> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-center dsgn-pck__align-center dsgn-pck__text-alignment-center"> <div class="dsgn-pck__inner-content dsgn-pck__relative"><div id="DP--template--14572466110535__d4e24115-6bc9-4a11-8134-47c11fba75da-168598874554a97284-0" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__d4e24115-6bc9-4a11-8134-47c11fba75da-168598874554a97284-0 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-template--14572466110535__d4e24115-6bc9-4a11-8134-47c11fba75da-168598874554a97284-0 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-template--14572466110535__d4e24115-6bc9-4a11-8134-47c11fba75da-168598874554a97284-0 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> Hello, Harneys </h2></div><div id="DP--8822f3ec-ebdc-46ab-82b5-87d1f5e265a9" class="dsgn-pck__block dsgn-pck__block-id-8822f3ec-ebdc-46ab-82b5-87d1f5e265a9 dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-8822f3ec-ebdc-46ab-82b5-87d1f5e265a9 { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-8822f3ec-ebdc-46ab-82b5-87d1f5e265a9 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0 auto;width: 25%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--967ffd2a-295b-432c-9afb-46e2d2aedee4" class="dsgn-pck__block dsgn-pck__block-id-967ffd2a-295b-432c-9afb-46e2d2aedee4 dsgn-pck__block--text dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><style> .dsgn-pck__block-id-967ffd2a-295b-432c-9afb-46e2d2aedee4 .dsgn-pck__text p, .dsgn-pck__block-id-967ffd2a-295b-432c-9afb-46e2d2aedee4 .dsgn-pck__text ul { line-height: calc(3px + 2ex + 3px); color: #121212; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}.dsgn-pck__block-id-967ffd2a-295b-432c-9afb-46e2d2aedee4 .dsgn-pck__text ul { display: table; margin: 0 auto; text-align: left; }</style><div class="dsgn-pck__text dsgn-pck__rte dsgn-pck__text-alignment-center"> <p>From its humble beginnings to todayâs international reputation, Harney & Sons has stayed true to its simple promise to deliver customers the finest quality tea possible. As the third generation of Harneys continues to carry out that mission, including educating tea lovers about fascinating tea traditions and types of tea found around the world, Harney & Sons customers are discovering their own passion for tea through the products and experiences we offer.</p> </div></div></div> </div> </div> </div></section>
1931<script type="application/json" data-dsgn-pck="template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da"> 1932 { 1933 "id": "template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da", 1934 "animation": "none" 1935 } 1936</script>
1936<script data-dsgn-pck-js="template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da" type="module" defer=""> 1937(function(){ 1938 1939 const designPack = { 1940 settings: {}, 1941 animateSection: function(entries, observer){ 1942 // Target the first entry available. 1943 let observedSection = entries[0]; 1944 if (observedSection.isIntersecting) { 1945 observedSection.target.classList.add('dsgn-pck__animation-applied'); 1946 } 1947 }, 1948 load: function(section){ 1949 1950 if (this.settings.animation !== 'none'){ 1951 const options = { 1952 root: null, 1953 rootMargin: '0px', 1954 threshold: [0, 0.25, 0.5, 0.75, 1] 1955 }; 1956 // Construct Intersection Observer. 1957 const observer = new IntersectionObserver( this.animateSection, options ); 1958 // Observe if element is present. 1959 if (section) { 1960 observer.observe(section); 1961 } 1962 } 1963 }, 1964 unload: function(section){ 1965 section.classList.remove('dsgn-pck__animation-applied') 1966 } 1967 } 1968 1969 window.addEventListener('shopify:section:unload', function (e) { 1970 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 1971 const sectionId = e.detail.sectionId; 1972 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 1973 if (sectionId == designPack.settings.id){ 1974 designPack.unload(section); 1975 } 1976 }); 1977 1978 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da"]').innerHTML); 1979 const sectionId = "template--19377441865799__d4e24115-6bc9-4a11-8134-47c11fba75da"; 1980 const section = document.querySelector(`#DP--${sectionId}`); 1981 1982 if (sectionId == designPack.settings.id){ 1983 designPack.load(section); 1984 } 1985})() 1986</script>
1986 </div><div id="shopify-section-template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248" class="shopify-section DP__columns-simple"> <style>#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 { background: ; margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__sizer { padding-top: 40px; padding-bottom: 40px; width: 95%; max-width: 1000px; z-index: 2; position: relative;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__background::before { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 1; background: ;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__header { width: 100%; max-width: 1000px; margin: auto; margin-bottom: 30px;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__header .dsgn-pck__header-block { margin-top: 15px;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns { justify-content: center; flex-wrap: wrap; --flex-gap: 20px; gap: var(--flex-gap);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__flex-item { --flex-items: 3; flex: 0 1 calc((100% / var(--flex-items)) - (((var(--flex-items) - 1) / var(--flex-items)) * var(--flex-gap))); width: calc((100% / var(--flex-items)) - (((var(--flex-items) - 1) / var(--flex-items)) * var(--flex-gap))); align-self: stretch; display: flex; flex-direction: column; justify-content: center;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__inner-content { display: flex; flex-direction: column; position: relative; flex: 1 0 auto;border-radius: 8px; background: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 1) 100%);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image__wrapper { margin: auto; width: 90%;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image__wrapper { display: block; padding: 0; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image__wrapper--offset { aspect-ratio: 1000/500; margin: auto; flex: 0 0 auto; z-index: -1; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image-absolute { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--none img { object-fit: contain; }#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__item img { width: 100%; overflow: hidden;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--circle .dsgn-pck__image__wrapper img { border-radius: 50%;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--rounded .dsgn-pck__image__wrapper img { border-radius: 5px;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--circle svg,#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--rounded svg,#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__image--square svg { width: 100%;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__text-content { padding: 1.2em 1.2em 2em; display: flex; flex-direction: column; justify-content: space-between; height: 100%; grid-gap: 1.2em;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__small-heading + .dsgn-pck__text,#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__small-heading + .dsgn-pck__button,#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__small-heading ~ .dsgn-pck__read-more-container { margin-top: calc(100px * 0.15);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__text + .dsgn-pck__button { margin-top: calc(100px * 0.2);}
1986#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__small-heading { margin: 0; line-height: var(--dp-g-heading-line-height, var(--dp-heading-line-height, calc(3px + 2ex + 3px))); color: #000000; font-size: calc(var(--dp-g-small-heading-size, var(--dp-small-heading-size, 24px)) * 1.2);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__small-heading a { color: inherit; text-decoration: none;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__text { margin: 0; color: #000000; line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__rte p,#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__rte ul { line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__rte ul { display: table; margin-left: auto; margin-right: auto; text-align: left; }#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 ul.dsgn-pck__list { width: 100%; margin-top: 10px; color: #000000; line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);list-style: inherit;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__button { border-color: transparent; display: inline-block; text-decoration: none; padding: 0.5em 1.2em; transition: all 0.3s ease-in-out; border: thin solid; border-radius: 0px; border-color:#4b4949; line-height: var(--dp-g-button-line-height, var(--dp-button-line-height, calc(3px + 2ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0); color: #4b4949; background-color: rgba(0,0,0,0);width: max-content;}#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__button:hover { opacity: 1;background-color: rgba(75, 73, 73, 0.1);}/* Animation */#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 [style*="--dsgn-pck-animate"] { opacity: 1; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__sizer { min-width: 70%; padding-top: 20px; padding-bottom: 20px; }#DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__sizer { min-width: 100%; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns { flex-wrap: nowrap; -webkit-overflow-scrolling: touch; overflow-x: scroll; justify-content: flex-start; scroll-snap-type: x mandatory; margin: 0; gap: 0; padding-bottom: 20px; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__flex-item { min-width: 75vw; scroll-snap-align: start; position: relative; padding-left: 20px; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__flex-item:last-child { margin-right: 20px; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns::-webkit-scrollbar { -webkit-appearance: none; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns::-webkit-scrollbar:vertical { width: 50%; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns::-webkit-scrollbar:horizontal { height: 4px; } #DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 .dsgn-pck__columns::-webkit-scrollbar-thumb { border-radius: 8px; background-color: rgba(255, 255, 255, 0.8); }}</style><section id="DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5d
1986a49248" class="DP--template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248 dsgn-pck__columns-simple dsgn-pck__section"><div class="dsgn-pck__background dsgn-pck__parallax"><div class="dsgn-pck__sizer"><div class="dsgn-pck__columns dsgn-pck__flex"><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-template--14572466110535__0060b11e-b1f5-41f5-b07d-503c5da49248-1686239712d78c7291-0 dsgn-pck__column dsgn-pck__column--1 dsgn-pck__image--circle" style="--dsgn-pck-animate: 1;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=180 180w, //www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=360 360w, //www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=540 540w, //www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=720 720w, //www.harney.com/cdn/shop/files/mike-harney.jpg?v=1619023957&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Mike Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>VICE PRESIDENT</strong></p><p>Mike is the master tea buyer and blender of Harney & Sons. Like his father, John, Mike is a published author as well as an educator who loves to scour the globe meeting with tea producers from all the major tea regions, looking for the best teas to deliver to his customers. His years of exploring and tasting fine wines have also served him well as a tea taster with a discriminating palate.</p></div></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-f112eeb7-36b2-453e-9c2d-a2cba05147c6 dsgn-pck__column dsgn-pck__column--2 dsgn-pck__image--circle" style="--dsgn-pck-animate: 2;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=180 180w, //www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=360 360w, //www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=540 540w, //www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=720 720w, //www.harney.com/cdn/shop/files/Paul_Harney.jpg?v=1614294058&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Paul Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>VICE PRESIDENT</strong></p><p>Paul is the mastermind behind our signature sachet teas and our line of organic ready-to-drink teas and juices. A true innovator, he is responsible for the ongoing efforts to develop new ideas and blends for the good of the customer and in keeping with the Harney tradition. His latest innovation, along with his brother, Mike, is the creation of The Hemp Division and CBD teas.</p></div></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-e388035b-2e31-46df-baaf-704b2c116afb dsgn-pck__column dsgn-pck__column--3 dsgn-pck__image--circle" style="--dsgn-pck-animate: 3;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=180 180w, //www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=360 360w, //www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=540 540w, //www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=720 720w, //www.harney.com/cdn/shop/files/elyse-harney.jpg?v=1619024024&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Elyse Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>OWNER, ELYSE HARNEY REAL ESTATE</strong></p><p>The matriarch of the Harney clan, Elyse pursued her own passion of pairing families with their dream homes in the tri-state region of northwest Connecticut, the Hudson Valley of New York and the Berkshires of western Massachusetts. Together, she and John built the
1986ir individual businesses while raising a family.</p></div></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-276d76c6-8d70-4edf-a72f-396fd25fdd96 dsgn-pck__column dsgn-pck__column--4 dsgn-pck__image--circle" style="--dsgn-pck-animate: 4;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=180 180w, //www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=360 360w, //www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=540 540w, //www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=720 720w, //www.harney.com/cdn/shop/files/brigitte-harney.jpg?v=1619024074&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Brigitte Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>MANAGER & BUYER</strong></p><p>Brigitte was born and raised in France, as youâll discover when she greets you with a warm smile and lovely accent at the Harney & Sons Millerton shop. A retail veteran, her style and expertise are recognizable in the careful selection of the tea accessories we offer, including gifts and other elegant home goods. Brigitte also enjoys traveling to international tea territories with her husband, Mike.</p></div></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-a52afe3c-3df2-46ed-9285-0e586b6fef49 dsgn-pck__column dsgn-pck__column--5 dsgn-pck__image--circle" style="--dsgn-pck-animate: 5;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=180 180w, //www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=360 360w, //www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=540 540w, //www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=720 720w, //www.harney.com/cdn/shop/files/emeric-harney.jpg?v=1619024093&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Emeric Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>MARKETING DIRECTOR</strong></p><p>Emeric started in tea at a young age, blending some of our best-selling teas like SoHo & White Christmas. He opened and still supervises the Harney & Sons SoHo store, where we continue the family tradition of making great tea an everyday luxury for New Yorkers and tourists alike. Emeric has a superior knowledge of the intricacies and characteristics of many varieties of tea grown all over the world.</p></div></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-9f58141d-618d-4eaf-9f61-ba5a99c9f8c8 dsgn-pck__column dsgn-pck__column--6 dsgn-pck__image--circle" style="--dsgn-pck-animate: 6;"> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=180 180w, //www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=360 360w, //www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=540 540w, //www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=720 720w, //www.harney.com/cdn/shop/files/alex-harney.jpg?v=1619024124&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> </div> <div class="dsgn-pck__image__wrapper dsgn-pck__image__wrapper--offset"> <svg viewBox="0 0 1000 500"></svg> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> Alex Harney </h2><div class="dsgn-pck__text dsgn-pck__rte"><p><strong>MILLERTON CAFà MANAGER</strong></p><p>Alex is the founder and executive chef/manager of the Harney & Sons Café in Millerton, New York. He enjoys cooking great food and sharing his passion and knowledge of tea with others. Alex has traveled all over the world including China, Taiwan, Japan and India searching for the finest teas. As director of film and photography for the companyâs image and style, he can always be seen traveling with camera in hand.</p></div></div></div></div> </div></div> </div> </div></section>
1986<script type="application/json" data-dsgn-pck="template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248"> 1987 { 1988 "id": "template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248", 1989 "animation": "none", 1990 "enable_parallax": false 1991 } 1992</script>
1992<script data-dsgn-pck-js="template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248" type="module" defer=""> 1993(function(){ 1994 const designPack = { 1995 settings: {}, 1996 animateSection: function(entries, observer){ 1997 // Target the first entry available. 1998 let observedSection = entries[0]; 1999 if (observedSection.isIntersecting) { 2000 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2001 } 2002 }, 2003 enableParallax: function(section){ 2004 const image = section.querySelector(`.dsgn-pck__parallax-img`); 2005 jarallax(section, { 2006 speed: 0.2, 2007 imgElement: image 2008 }); 2009 }, 2010 setReadMore: function(section, readMoreContainer){ 2011 console.log(readMoreContainer) 2012 function isScrollable(elementSelector, readMoreContainer) { 2013 const element = readMoreContainer.querySelector(elementSelector); 2014 2015 console.log(element) 2016 console.log(elementSelector) 2017 2018 if (element) { 2019 const scrollHeight = element.scrollHeight; 2020 const clientHeight = element.clientHeight; 2021 2022 return scrollHeight > clientHeight; 2023 } 2024 2025 // Return false if the element is not found 2026 return false; 2027 } 2028 2029 const isContainerScrollable = isScrollable('.dsgn-pck__read-more-container-inner', readMoreContainer); 2030 console.log(isContainerScrollable) 2031 const readMoreToggle = readMoreContainer.querySelector('.dsgn-pck__read-more-text'); 2032 2033 if (readMoreToggle != null && typeof readMoreToggle != 'undefined'){ 2034 if (isContainerScrollable) { 2035 readMoreToggle.style.display = 'inline-block'; 2036 } else { 2037 readMoreToggle.style.display = 'none'; 2038 } 2039 } 2040 }, 2041 disableParallax: function(section){ 2042 jarallax(section, 'destroy'); 2043 }, 2044 load: function(section){ 2045 if (this.settings.animation !== 'none'){ 2046 const options = { 2047 root: null, 2048 rootMargin: '0px', 2049 threshold: [0, 0.25, 0.5, 0.75, 1] 2050 }; 2051 // Construct Intersection Observer. 2052 const observer = new IntersectionObserver( this.animateSection, options ); 2053 // Observe if element is present. 2054 if (section) { 2055 observer.observe(section); 2056 } 2057 } 2058 2059 if (this.settings.enable_parallax == true){ 2060 this.enableParallax(section); 2061 } 2062 2063 const readMore = section.querySelectorAll('.dsgn-pck__read-more-container'); 2064 if (typeof readMore !== 'undefined' && readMore !== null){ 2065 readMore.forEach(function(readMore){ 2066 designPack.setReadMore(section, readMore); 2067 }); 2068 2069 } 2070 2071 }, 2072 unload: function(section){ 2073 section.classList.remove('dsgn-pck__animation-applied') 2074 if (this.settings.enable_parallax == true){ 2075 this.disableParallax(section); 2076 } 2077 } 2078 } 2079 window.addEventListener('shopify:section:unload', function (e) { 2080 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2081 const sectionId = e.detail.sectionId; 2082 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2083 if (sectionId == designPack.settings.id){ 2084 designPack.unload(section); 2085 } 2086 }); 2087 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248"]').innerHTML); 2088 const sectionId = "template--19377441865799__0060b11e-b1f5-41f5-b07d-503c5da49248"; 2089 const section = document.querySelector(`#DP--${sectionId}`); 2090 if (sectionId == designPack.settings.id){ 2091 designPack.load(section); 2092 } 2093})() 2094</script>
2094 </div><div id="shopify-section-template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1" class="shopify-section DP__heading-simple"> <style>#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 { background: ; margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__sizer { width: 90%; margin: auto; max-width: 800px; padding-top: 70px; padding-bottom: 70px;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__background { width: 100%;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__image__wrapper::before { content: ''; display: block; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 1; background: ;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__image__wrapper img { object-position: ;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__grid { height: 100%;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__content { z-index: 2; height: 100%; grid-template-columns: 1fr; grid-area: 1 / 1 / 2 / 2;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__inner-content { z-index: 2; max-width: ; width: 100%; padding:; background: ;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__block { color: #121212;}#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 { border-top: thin solid; border-bottom: thin solid; border-color: #9B8381; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__sizer { padding-top: 53px; padding-bottom: 53px; } #DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 .dsgn-pck__inner-content { width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1" class="DP--template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1 dsgn-pck__heading-simple dsgn-pck__section"><div class="dsgn-pck__background"> <div class="dsgn-pck__sizer dsgn-pck__grid"> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-center dsgn-pck__align-center dsgn-pck__text-alignment-center"> <div class="dsgn-pck__inner-content dsgn-pck__relative"><div id="DP--1e807830-d098-4be3-93ba-affc50bed2a1" class="dsgn-pck__block dsgn-pck__block-id-1e807830-d098-4be3-93ba-affc50bed2a1 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-1e807830-d098-4be3-93ba-affc50bed2a1 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-1e807830-d098-4be3-93ba-affc50bed2a1 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> Our Teas </h2></div><div id="DP--fd83750c-9d78-45cd-90e5-6753837c6487" class="dsgn-pck__block dsgn-pck__block-id-fd83750c-9d78-45cd-90e5-6753837c6487 dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-fd83750c-9d78-45cd-90e5-6753837c6487 { padding-top: 10px; padding-bottom: 55px; } .dsgn-pck__block-id-fd83750c-9d78-45cd-90e5-6753837c6487 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0 auto;width: 20%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--56265c67-208f-4336-aae1-9cc9aaf12a6b" class="dsgn-pck__block dsgn-pck__block-id-56265c67-208f-4336-aae1-9cc9aaf12a6b dsgn-pck__block--inset_image dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><style> .dsgn-pck__block-id-56265c67-208f-4336-aae1-9cc9aaf12a6b .dsgn-pck__image__wrapper { width: 100%; display: inline-block; } .dsgn-pck__block-id-56265c67-208f-4336-aae1-9cc9aaf12a6b .dsgn-pck__image__wrapper svg { width: 100%; } .dsgn-pck__block-id-56265c67-208f-4336-aae1-9cc9aaf12a6b .dsgn-pck__image__wrapper path { fill: #121212; } .dsgn-pck__block-id-56265c67-208f-4336-aae1-9cc9aaf12a6b .dsgn-pck__item img { width: 100%; object-fit: contain; } </style><div class="dsgn-pck__image__wrapper"> <svg viewBox="0 0 2046 760"></svg><img src="//www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=180 180w, //www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=360 360w, //www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=540 540w, //www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=720 720w, //www.harney.com/cdn/shop/files/our-teas_d7476c57-9739-4f9c-a9d0-1cebfac2f287.jpg?v=1619024598&width=900 900w" width="1000" height="371" loading="lazy" sizes="(max-width: 480px) 100v
2094w,(max-width: 767px) 100vw, 50vw"> </div></div></div> </div> </div> </div></section>
2094<script type="application/json" data-dsgn-pck="template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1"> 2095 { 2096 "id": "template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1", 2097 "animation": "none" 2098 } 2099</script>
2099<script data-dsgn-pck-js="template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1" type="module" defer=""> 2100(function(){ 2101 2102 const designPack = { 2103 settings: {}, 2104 animateSection: function(entries, observer){ 2105 // Target the first entry available. 2106 let observedSection = entries[0]; 2107 if (observedSection.isIntersecting) { 2108 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2109 } 2110 }, 2111 load: function(section){ 2112 2113 if (this.settings.animation !== 'none'){ 2114 const options = { 2115 root: null, 2116 rootMargin: '0px', 2117 threshold: [0, 0.25, 0.5, 0.75, 1] 2118 }; 2119 // Construct Intersection Observer. 2120 const observer = new IntersectionObserver( this.animateSection, options ); 2121 // Observe if element is present. 2122 if (section) { 2123 observer.observe(section); 2124 } 2125 } 2126 }, 2127 unload: function(section){ 2128 section.classList.remove('dsgn-pck__animation-applied') 2129 } 2130 } 2131 2132 window.addEventListener('shopify:section:unload', function (e) { 2133 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2134 const sectionId = e.detail.sectionId; 2135 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2136 if (sectionId == designPack.settings.id){ 2137 designPack.unload(section); 2138 } 2139 }); 2140 2141 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1"]').innerHTML); 2142 const sectionId = "template--19377441865799__cf3a9470-7e57-48de-9873-a85d02a6d7e1"; 2143 const section = document.querySelector(`#DP--${sectionId}`); 2144 2145 if (sectionId == designPack.settings.id){ 2146 designPack.load(section); 2147 } 2148})() 2149</script>
2149 </div><div id="shopify-section-template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a" class="shopify-section DP__richtext"> <style>#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a { margin-top: 0px; margin-bottom: 0px; background: ;}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__sizer { margin: auto; width: 80%; max-width: 1100px; padding-top: 40px; padding-bottom: 40px;}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__content { display: flex; justify-content: center; align-items: center;}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__inner-content { z-index: 2; width: 100%; margin: auto;}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__block .dsgn-pck__small-heading { font-size: calc(var(--dp-g-small-heading-size, var(--dp-small-heading-size, 24px)) * 1.0);}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__rte p,#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__rte ul { line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); color: #121212; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__small-text p,#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__small-text ul { font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.8);}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__rte ul { display: table; margin: 0 auto; text-align: left; }#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__block { color: #121212;}#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a [style*="--dsgn-pck-animate"] { opacity: 1; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__sizer { padding-top: 30px; padding-bottom: 30px; } #DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a .dsgn-pck__inner-content { max-width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a" class="DP--template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a dsgn-pck__richtext dsgn-pck__section"><div class="dsgn-pck__background"> <div class="dsgn-pck__sizer dsgn-pck__grid"> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-center dsgn-pck__align-center dsgn-pck__text-alignment-center"> <div class="dsgn-pck__inner-content dsgn-pck__relative"><div id="DP--template--14572466110535__1a685276-321b-4afc-b45a-ed83a463441a-1686244657d24b9cc0-0" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__1a685276-321b-4afc-b45a-ed83a463441a-1686244657d24b9cc0-0 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-template--14572466110535__1a685276-321b-4afc-b45a-ed83a463441a-1686244657d24b9cc0-0 .dsgn-pck__heading { margin: 0; line-height: var(--dp-g-heading-line-height, var(--dp-heading-line-height, calc(3px + 2ex + 3px)));color: ;font-size: calc(20px * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-template--14572466110535__1a685276-321b-4afc-b45a-ed83a463441a-1686244657d24b9cc0-0 .dsgn-pck__heading {font-size: min(20px, 50px);} } </style><h2 class="dsgn-pck__heading"> CLASSIC TO EXOTIC </h2></div><div id="DP--bcf31f52-26f1-4456-9092-53797ab47b9a" class="dsgn-pck__block dsgn-pck__block-id-bcf31f52-26f1-4456-9092-53797ab47b9a dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-bcf31f52-26f1-4456-9092-53797ab47b9a { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-bcf31f52-26f1-4456-9092-53797ab47b9a .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0 auto;width: 30%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--template--14572466110535__1a685276-321b-4afc-b45a-ed83a4
214963441a-1686244657d24b9cc0-1" class="dsgn-pck__block dsgn-pck__block-id-template--14572466110535__1a685276-321b-4afc-b45a-ed83a463441a-1686244657d24b9cc0-1 dsgn-pck__block--text dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><div class="dsgn-pck__text dsgn-pck__rte"> <p>Harney & Sons offers over 300 varieties of the highest quality teas, sourced from the finest tea regions around the world. Our blends include classics like Earl Grey, our signature flavors like Hot Cinnamon Spice and Paris, several varieties of Matcha, more adventurous teas like Bamboo and everything in between. No matter which tea you choose, our expertise and commitment to quality are brewed into each cup.</p> </div></div></div> </div> </div> </div></section>
2149<script type="application/json" data-dsgn-pck="template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a"> 2150 { 2151 "id": "template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a", 2152 "section_width": null, 2153 "animation": "none" 2154 } 2155</script>
2155<script data-dsgn-pck-js="template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a" type="module" defer=""> 2156(function(){ 2157 2158 const designPack = { 2159 settings: {}, 2160 animateSection: function(entries, observer){ 2161 // Target the first entry available. 2162 let observedSection = entries[0]; 2163 if (observedSection.isIntersecting) { 2164 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2165 } 2166 }, 2167 initializeAndEnableClock(section) { 2168 const clockSelector = '.dsgn-pck__clock'; 2169 const startDate = section.querySelector('[data-timer-start]').dataset.timerStart; 2170 const endDate = section.querySelector('[data-timer-end]').dataset.timerEnd; 2171 const resetDaily = section.querySelector('[data-timer-reset-daily]').dataset.timerResetDaily === "true"; // Ensure it's a boolean 2172 const timezone = section.querySelector('[data-timer-timezone]').dataset.timerTimezone; // Assuming timezone is in a similar dataset 2173 const startMs = Date.parse(startDate); 2174 const endMs = Date.parse(endDate); 2175 2176 // Function to extract UTC offset from timezone string (e.g., "-05:00 ~ (GMT-05:00) Eastern Time (US & Canada)") 2177 function getTimezoneOffset(timezone) { 2178 const offsetMatch = timezone.match(/([-+]\d{2}):(\d{2})/); 2179 if (offsetMatch) { 2180 const hoursOffset = parseInt(offsetMatch[1], 10); 2181 const minutesOffset = parseInt(offsetMatch[2], 10); 2182 return hoursOffset * 60 + (hoursOffset < 0 ? -minutesOffset : minutesOffset); // Convert to minutes 2183 } 2184 return 0; // Default to UTC if no match 2185 } 2186 2187 const timezoneOffset = getTimezoneOffset(timezone); 2188 2189 // Adjust current time to account for timezone offset 2190 function getCurrentMsWithTimezone() { 2191 const now = new Date(); 2192 const localTime = now.getTime(); 2193 const localOffset = now.getTimezoneOffset(); // In minutes 2194 const totalOffset = localOffset + timezoneOffset; 2195 return localTime + totalOffset * 60 * 1000; // Adjusted time in ms 2196 } 2197 2198 const currentMs = getCurrentMsWithTimezone(); 2199 2200 // If current time is before the start, hide the clock 2201 if (endMs <= currentMs || currentMs < startMs) { 2202 section.querySelector(`.dsgn-pck__clock-wrap`).style.display = 'none'; 2203 return; 2204 } 2205 2206 const clock = section.querySelector(clockSelector); 2207 let timeinterval; // Declare timeinterval for global access 2208 2209 // Function to update the clock display 2210 function updateClockDisplay(hours, minutes, seconds, days = null) { 2211 if (days !== null) { 2212 const daysSpan = clock.querySelector('.dsgn-pck__days .dsgn-pck__number'); 2213 if (resetDaily == true){ 2214 daysSpan.innerHTML = 0; 2215 } else { 2216 if (daysSpan.innerHTML != days) daysSpan.innerHTML = days; 2217 } 2218 } 2219 2220 const hoursSpan = clock.querySelector('.dsgn-pck__hours .dsgn-pck__number'); 2221 const minutesSpan = clock.querySelector('.dsgn-pck__minutes .dsgn-pck__number'); 2222 const secondsSpan = clock.querySelector('.dsgn-pck__seconds .dsgn-pck__number'); 2223 2224 if (hoursSpan.innerHTML != hours) hoursSpan.innerHTML = ('0' + hours).slice(-2); 2225 if (minutesSpan.innerHTML != minutes) minutesSpan.innerHTML = ('0' + minutes).slice(-2); 2226 if (secondsSpan.innerHTML != seconds) secondsSpan.innerHTML = ('0' + seconds).slice(-2); 2227 } 2228 2229 // Function to calculate time left 2230 function calculateTimeLeft(targetTime) { 2231 const total = targetTime - getCurrentMsWithTimezone(); 2232 const days = Math.floor(total / (1000 * 60 * 60 * 24)); 2233 const hours = Math.floor((total / (1000 * 60 * 60)) % 24); 2234 const minutes = Math.floor((total / (1000 * 60)) % 60); 2235 const seconds = Math.floor((total / 1000) % 60); 2236 return { total, days, hours, minutes, seconds }; 2237 } 2238 2239 // Function to handle the timer logic based on 24-hour reset or default countdown 2240 function updateClockLogic(timeLeft) { 2241 updateClockDisplay(timeLeft.hours, timeLeft.minutes, timeLeft.seconds, timeLeft.days); 2242 2243 if (timeLeft.total <= 0) { 2244 clearInterval(timeinterval); 2245 if (resetDaily) { 2246 initializeAndEnableClock(section); // Reset the clock 2247 } 2248 } 2249 } 2250 2251 // Main logic for the countdown 2252 if (resetDaily) { 2253 const resetInterval = 24 * 60 * 60 * 1000; // 24 hours in milliseconds 2254 2255 function getNextResetTime() { 2256 const lastResetTime = new Date(endMs); // Assuming endMs is when the time should be reset 2257 const timeSinceLastReset = currentMs - endMs; 2258 const timeUntilNextReset = resetInterval - (timeSinceLastReset % resetInterval); 2259 return currentMs + timeUntilNextReset; 2260 } 2261 2262 function updateClock() { 2263 const nextResetTime = getNextResetTime(); 2264 const timeLeft = calculateTimeLeft(nextResetTime); 2265 updateClockLogic(timeLeft); 2266 } 2267 2268 updateClock(); 2269 timeinterval = setInterval(updateClock, 1000); // Assign interval to the declared timeinterval 2270 2271 } else { 2272 function updateClock() { 2273 const timeLeft = calculateTimeLeft(Date.parse(endDate)); 2274 updateClockLogic(timeLeft); 2275 } 2276 2277 updateClock(); 2278 timeinterval = setInterval(updateClock, 1000); // Assign interval to the declared timeinterval 2279 } 2280 }, 2281 toggleVideo: function(playToggle){ 2282 const videoWrapper = playToggle.closest('.dsgn-pck__video-wrapper'); 2283 const video = videoWrapper.querySelector('video'); 2284 if (video.paused) { 2285 video.play(); 2286 playToggle.classList.add('dsgn-pck__playing'); 2287 } else { 2288 video.pause(); 2289 playToggle.classList.remove('dsgn-pck__playing'); 2290 } 2291 2292 video.addEventListener("ended", () => { 2293 playToggle.classList.remove('dsgn-pck__playing'); 2294 }); 2295 }, 2296 load: function(section){ 2297 2298 if (this.settings.animation !== 'none'){ 2299 const options = { 2300 root: null, 2301 rootMargin: '0px', 2302 threshold: [0, 0.25, 0.5, 0.75, 1] 2303 }; 2304 // Construct Intersection Observer. 2305 const observer = new IntersectionObserver( this.animateSection, options ); 2306 // Observe if element is present. 2307 if (section) { 2308 observer.observe(section); 2309 } 2310 } 2311 2312 const countdownTimer = section.querySelector('.dsgn-pck__clock'); 2313 if (typeof countdownTimer !== 'undefined' && countdownTimer !== null){ 2314 designPack.initializeAndEnableClock(section); 2315 } 2316
2317 const playToggles = section.querySelectorAll(`[data-play-trigger]`); 2318 if (typeof playToggles !== 'undefined' && playToggles != null) { 2319 playToggles.forEach((playToggle) => { 2320 playToggle.addEventListener('click', (e) => { 2321 this.toggleVideo(e.target) 2322 }); 2323 }); 2324 } 2325 2326 }, 2327 unload: function(section){ 2328 section.classList.remove('dsgn-pck__animation-applied') 2329 } 2330 } 2331 2332 window.addEventListener('shopify:section:unload', function (e) { 2333 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2334 const sectionId = e.detail.sectionId; 2335 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2336 if (sectionId == designPack.settings.id){ 2337 designPack.unload(section); 2338 } 2339 }); 2340 2341 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a"]').innerHTML); 2342 const sectionId = "template--19377441865799__1a685276-321b-4afc-b45a-ed83a463441a"; 2343 const section = document.querySelector(`#DP--${sectionId}`); 2344 2345 if (sectionId == designPack.settings.id){ 2346 designPack.load(section); 2347 } 2348})() 2349</script>
2349 </div><div id="shopify-section-template--19377441865799__design_pack_value_proposition_slider_DaAnWj" class="shopify-section DP__value-prop-slider"> <style>/*! Flickity v2.2.2https://flickity.metafizzy.co---------------------------------------------- */.flickity-enabled{position:relative}.flickity-enabled:focus{outline:0;box-shadow: none;}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}.flickity-button{position:absolute;background:hsla(0,0%,100%,.75);border:none;color:#333}.flickity-button:hover{background:#fff;cursor:pointer}.flickity-button:focus{outline:0;box-shadow:0 0 0 5px #19f}.flickity-button:active{opacity:.6}.flickity-button:disabled{opacity:.3;cursor:auto;pointer-events:none}.flickity-button-icon{fill:currentColor}.flickity-prev-next-button{top:50%;width:44px;height:44px;border-radius:50%;transform:translateY(-50%)}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj { background: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(255, 255, 255, 1) 100%); margin-top: 0px; margin-bottom: 0px; overflow-x: hidden;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__sizer { padding-top: 25px; padding-bottom: 25px; width: 95%; max-width: 1400px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__small-heading { color: #000000; line-height: calc(3px + 2ex + 3px); font-size: calc(var(--dp-g-small-heading-size, var(--dp-small-heading-size, 24px)) * 0.95);}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__small-heading + .dsgn-pck__text { margin-top: 10px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__text p { line-height: calc(3px + 2ex + 3px); color: #c6a95a; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.95);}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icons { display: block; max-width: calc(100% - 100px); margin-left: auto; margin-right: auto;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__flex-item { height: auto; margin-right: calc( (3 * 30px) / (3 - 1)); width: calc(100% / 3 - 30px);}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__stretch-height .dsgn-pck__flex-item { height: 100%;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__flex-item > a { text-decoration: none;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__image__wrapper { display: block; align-self: center; margin: auto; flex: 1 0 100%; max-width: 100%;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__image__wrapper svg { width: 100%; fill: #c6a95a;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__item img { width: 100%; object-fit: contain;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__inner-content { height: 100%; display: flex; gap: 10px; padding: 15.0; position: relative; overflow: hidden;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-left { align-items: center;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-left .dsgn-pck__inner-content { gap: 20px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-left .dsgn-pck__text-wrapper { text-align: left; flex: 1 1 auto;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-center { flex-direction: column; justify-content: center;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-center .dsgn-pck__text-wrapper { text-align: center; flex: 1 1 100%; padding: 10px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icon-alignment-center .dsgn-pck__image__wrapper { width: 100%; flex: none;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-button { background: transparent; color: #c6a95a; transition: all 0.3s ease-in-out;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj button svg.flickity-button-icon path { fill: currentColor;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.next { right: -40px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.previous { left: -40px;}#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-page-dots { display: none; bottom: -12px;}/* Animation */#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj {--dp-body-size: 15px; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__image__wrapper {border-radius: 50%;aspect-ratio: 1 / 1;overflow: hidden; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__image__wrapper img {object-fit: cover; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj a {text-decoration: none; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__text-wrapper { padding-left: 0; padding-right: 0; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.previous { left: -60px; }#DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.next { right: -60px; }/* Landscape phone to portrait tablet */@media (max-width: 767px) { #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__icons { max-width: calc(100% - 40px); } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__item { width: calc(100% / 1); } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__mobile-icon-alignment-left { align-items: center; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__mobile-icon-alignment-left .dsgn-pck__text-wrapper { text-align: left; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__mobile-icon-alignment-center { flex-direction: column; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__mobile-icon-alignment-center .dsgn-pck__text-wrapper { text-align: center; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__mobile-icon-alignment-center .dsgn-pck__image__wrapper { width: 78%; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__image__wrapper { display: block; align-self: center; margin: auto; flex: 1 0 78%; max-width: 78%; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__inner-content { padding: 1em 0; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-button { display: none; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.next { right: -20px; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-prev-next-button.previous { left: -20px; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .flickity-page-dots { display: block; }}/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj .dsgn-pck__sizer { min-width: 100%; padding-top: 12px; padding-bottom: 12px; }}</style><section id="DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj" class="DP--template--19377441865799__design_pack_value_proposition_slider_DaAnWj dsgn-pck__value-prop-horizontal dsgn-pck__section"> <div class="dsgn-pck__sizer dsgn-pck__sizer--value-prop-horizontal"> <div id="slider-template--19377441865799__design_pack_value_proposition_slider_DaAnWj" class="dsgn-pck__icons dsgn-pck__flex--3-per-row"><div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-icon_HLTAFw" style="--dsgn-pck-animate: 1;"><a aria-label="Historic Royal Palaces Collection" href="/collections/hrp-tin-of-30"></a><div class="dsgn-pck__inner-content dsgn-pck__icon-alignment-center dsgn-pck__mobile-icon-alignment-center"><a aria-label="Historic Royal Palaces Collection" href="/collections/hrp-tin-of-30"></a><div class="dsgn-pck__image__wrapper"><a aria-label="Historic Royal Palaces Collection" href="/collections/hrp-tin-of-30"></a><a aria-label="Historic Royal Palaces Collection" href="/collections/hrp-tin-of-30"><svg viewBox="0 0 1330 1330"></svg><img src="//www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=180 180w, //www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=360 360w, //www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=540 540w, //www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=720 720w, //www.harney.com/cdn/shop/files/S7A0253.jpg?v=1632409148&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 47vw, 15vw"></a></div><div class="dsgn-pck__text-wrapper"><h3 class="dsgn-pck__small-heading"> Historic Royal Palaces Collection </h3><div class="dsgn-pck__text dsgn-pck__rte"> <p><a href="/collections/hrp-tin-of-30" title="Historic Royal Palaces Collection"><strong>VIEW COLLECTION</strong></a></p> </div></div> </div></div><div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-icon_UkMnVB" style="--dsgn-pck-animate: 2;"><a aria-label="Bag of 50 Sachets" href="/collections/bag-of-50-sachets"></a><div class="dsgn-pck__inner-content dsgn-pck__icon-alignment-center dsgn-pck__mobile-icon-alignment-center"><a aria-label="Bag of 50 Sachets" href="/collections/bag-of-50-sachets"></a><div class="dsgn-pck__image__wrapper"><a aria-label="Bag of 50 Sachets" href="/collections/bag-of-50-sachets"></a><a aria-label="Bag of 50 Sachets" href="/collections/bag-of-50-sachets"><svg viewBox="0 0 1000 1000"></svg><img src="//www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=1000" alt="Cherry Blossom, Bag of 50 Sachets mood image." srcset="//www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=180 180w, //www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=360 360w, //www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=540 540w, //www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=720 720w, //www.harney.com/cdn/shop/files/Cherry_Blossom_Bag_of_50_Homepage.jpg?v=1732039561&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 47vw, 15vw"></a></div><div class="dsgn-pck__text-wrapper"><h3 class="dsgn-pck__small-heading"> Bag of 50 Sachets </h3><div class="dsgn-pck__text dsgn-pck__rte"> <p><a href="/collections/bag-of-50-sachets" title="Bag of 50 Sachets"><strong>VIEW COLLECTION</strong></a></p> </div></div> </div></div><div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-icon_PPwPDT" style="--dsgn-pck-animate: 3;"><a aria-label="Classic Collection" href="/collections/classic-collection"></a><div class="dsgn-pck__inner-content dsgn-pck__icon-alignment-center dsgn-pck__mobile-icon-alignment-center"><a aria-label="Classic Collection" href="/collections/classic-collection"></a><div class="dsgn-pck__image__wrapper"><a aria-label="Classic Collection" href="/collections/classic-collection"></a><a aria-label="Classic Collection" href="/collections/classic-collection"><svg viewBox="0 0 2000 2000"></svg><img src="//www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=180 180w, //www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=360 360w, //www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=540 540w, //www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=720 720w, //www.harney.com/cdn/shop/files/Harney_Teas_Allegra_Anderson_August_2019_21.jpg?v=1632409916&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 47vw, 15vw"></a></div><div class="dsgn-pck__text-wrapper"><h3 class="dsgn-pck__small-heading"> Classic Collection </h3><div class="dsgn-pck__text dsgn-pck__rte"> <p><a href="/collections/classic-collection" title="Classic Collection"><strong>VIEW COLLECTION</strong></a></p> </div></div> </div></div><div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-icon_e3M4zj" style="--dsgn-pck-animate: 4;"><a aria-label="Herbal Infusions" href="/collections/all-herbal-infusions"></a><div class="dsgn-pck__inner-content dsgn-pck__icon-alignment-center dsgn-pck__mobile-icon-alignment-center"><a aria-label="Herbal Infusions" href="/collections/all-herbal-infusions"></a><div class="dsgn-pck__image__wrapper"><a aria-label="Herbal Infusions" href="/collections/all-herbal-infusions"></a><a aria-label="Herbal Infusions" href="/collections/all-herbal-infusions"><svg viewBox="0 0 900 600"></svg><img src="//www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=180 180w, //www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=360 360w, //www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=540 540w, //www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=720 720w, //www.harney.com/cdn/shop/files/collections-types-herbal-hero_6c0c276f-36ff-47f8-9715-502dce00a980.jpg?v=1619809579&width=900 900w" width="1000" height="667" loading="lazy" sizes="(max-width: 480px) 47vw, 15vw"></a></div><div class="dsgn-pck__text-wrapper"><h3 class="dsgn-pck__small-heading"> Herbal Infusions </h3><div class="dsgn-pck__text dsgn-pck__rte"> <p><a href="/collections/herbal-infusions" title="Herbal Infusions"><strong>VIEW COLLECTION</strong></a></p> </div></div> </div></div></div> </div></section>
2349<script type="application/json" data-dsgn-pck="template--19377441865799__design_pack_value_proposition_slider_DaAnWj"> 2350 { 2351 "id": "template--19377441865799__design_pack_value_proposition_slider_DaAnWj", 2352 "animation": "none", 2353 "show_arrows": true, 2354 "show_dots": null, 2355 "autoplay": 0, 2356 "enable_slider": true 2357 } 2358</script>
2358<script data-dsgn-pck-external-js="template--19377441865799__design_pack_value_proposition_slider_DaAnWj" src="https://cdn.shopify.com/s/files/1/0577/7673/4361/files/flickity-2.3.0.pkgd.min.js?v=1671485005" defer=""></script>
2358<script data-dsgn-pck-js="template--19377441865799__design_pack_value_proposition_slider_DaAnWj" type="module" defer=""> 2359(function(){ 2360 2361 const designPack = { 2362 settings: {}, 2363 animateSection: function(entries, observer){ 2364 // Target the first entry available. 2365 let observedSection = entries[0]; 2366 if (observedSection.isIntersecting) { 2367 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2368 } 2369 }, 2370 load: function(section){ 2371 if (this.settings.animation !== 'none'){ 2372 const options = { 2373 root: null, 2374 rootMargin: '0px', 2375 threshold: 0 2376 }; 2377 // Construct Intersection Observer. 2378 const observer = new IntersectionObserver( this.animateSection, options ); 2379 // Observe if element is present. 2380 if (section) { 2381 observer.observe(section); 2382 } 2383 } 2384 2385 const elem = section.querySelector(`#slider-${designPack.settings.id}`); 2386 designPack.flkty = new Flickity( elem, { 2387 cellAlign: 'left', 2388 groupCells: true, 2389 selectedAttraction: 0.2, 2390 friction: 0.8, 2391 autoPlay: this.settings.autoplay, 2392 draggable: this.settings.enable_slider, 2393 contain: true, 2394 wrapAround: true, 2395 adaptiveHeight: false, 2396 imagesLoaded: true, 2397 prevNextButtons: this.settings.show_arrows, 2398 pageDots: true, 2399 on: { 2400 select: function () { this.cells.forEach(c => c.element.toggleAttribute('inert', c.element.getAttribute('aria-hidden') === 'true')); }, 2401 ready: () => { 2402 elem.classList.add('dsgn-pck__stretch-height'); 2403 } 2404 } 2405 }); 2406 }, 2407 unload: function(section){ 2408 section.classList.remove('dsgn-pck__animation-applied') 2409 } 2410 } 2411 2412 window.addEventListener('shopify:section:unload', function (e) { 2413 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2414 const sectionId = e.detail.sectionId; 2415 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2416 if (sectionId == designPack.settings.id){ 2417 designPack.unload(section); 2418 } 2419 }); 2420 2421 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__design_pack_value_proposition_slider_DaAnWj"]').innerHTML); 2422 const sectionId = "template--19377441865799__design_pack_value_proposition_slider_DaAnWj"; 2423 const section = document.querySelector(`#DP--${sectionId}`); 2424 2425 if (sectionId == designPack.settings.id){ 2426 designPack.load(section); 2427 } 2428})() 2429</script>
2429 </div><div id="shopify-section-template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30" class="shopify-section DP__richtext"> <style>#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 { margin-top: 0px; margin-bottom: 0px; background: ;}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__sizer { margin: auto; width: 80%; max-width: 1100px; padding-top: 40px; padding-bottom: 40px;}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__content { display: flex; justify-content: center; align-items: center;}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__inner-content { z-index: 2; width: 100%; margin: auto;}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__block .dsgn-pck__small-heading { font-size: calc(var(--dp-g-small-heading-size, var(--dp-small-heading-size, 24px)) * 1.0);}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__rte p,#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__rte ul { line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); color: #121212; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 1.0);}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__small-text p,#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__small-text ul { font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.8);}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__rte ul { display: table; margin: 0 auto; text-align: left; }#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__block { color: #121212;}#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 { border-left: thin solid #9B8381; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__sizer { padding-top: 30px; padding-bottom: 30px; } #DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 .dsgn-pck__inner-content { max-width: min(400px, 100%); }#DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 { border-top: thin solid; border-left: none; }}</style><section id="DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30" class="DP--template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30 dsgn-pck__richtext dsgn-pck__section"><div class="dsgn-pck__background"> <div class="dsgn-pck__sizer dsgn-pck__grid"> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-center dsgn-pck__align-center dsgn-pck__text-alignment-center"> <div class="dsgn-pck__inner-content dsgn-pck__relative"><div id="DP--e02d53c4-fae3-431e-a676-75e8e5505da5" class="dsgn-pck__block dsgn-pck__block-id-e02d53c4-fae3-431e-a676-75e8e5505da5 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-e02d53c4-fae3-431e-a676-75e8e5505da5 .dsgn-pck__heading { margin: 0; line-height: var(--dp-g-heading-line-height, var(--dp-heading-line-height, calc(3px + 2ex + 3px)));color: ;font-size: calc(20px * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-e02d53c4-fae3-431e-a676-75e8e5505da5 .dsgn-pck__heading {font-size: min(20px, 50px);} } </style><h2 class="dsgn-pck__heading"> DO-GOOD TEA </h2></div><div id="DP--f8b08699-810c-47fe-8ae6-c13076e57ef4" class="dsgn-pck__block dsgn-pck__block-id-f8b08699-810c-47fe-8ae6-c13076e57ef4 dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-f8b08699-810c-47fe-8ae6-c13076e57ef4 { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-f8b08699-810c-47fe-8ae6-c13076e57ef4 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0 auto;width: 30%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div><div id="DP--f6f2a944-d198-4767-9984-3d8585feea28" class="dsgn-pck__block dsgn-pck__block-id-f6f2a944-d198-4767-9984-3d8585feea28 dsgn-pck__block--text dsgn-pck__block--3" style="--dsgn-pck-animate: 3;"><div class="dsgn-pck__text dsgn-pck__rte"> <p>We are proud to carry Fair Trade Certified⢠teas, supporting fair trade practices around the world that promote sustainable livelihoods, safe working conditions, protection of the environment and strong, transparent supply chains. In addition, we have partnered for over 10 years with 1% for the Planet, donating 1% of our sales to environmental organizations across the globe. Thank y
2429ou for helping us support these efforts.</p> </div></div></div> </div> </div> </div></section>
2429<script type="application/json" data-dsgn-pck="template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30"> 2430 { 2431 "id": "template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30", 2432 "section_width": null, 2433 "animation": "none" 2434 } 2435</script>
2435<script data-dsgn-pck-js="template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30" type="module" defer=""> 2436(function(){ 2437 2438 const designPack = { 2439 settings: {}, 2440 animateSection: function(entries, observer){ 2441 // Target the first entry available. 2442 let observedSection = entries[0]; 2443 if (observedSection.isIntersecting) { 2444 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2445 } 2446 }, 2447 initializeAndEnableClock(section) { 2448 const clockSelector = '.dsgn-pck__clock'; 2449 const startDate = section.querySelector('[data-timer-start]').dataset.timerStart; 2450 const endDate = section.querySelector('[data-timer-end]').dataset.timerEnd; 2451 const resetDaily = section.querySelector('[data-timer-reset-daily]').dataset.timerResetDaily === "true"; // Ensure it's a boolean 2452 const timezone = section.querySelector('[data-timer-timezone]').dataset.timerTimezone; // Assuming timezone is in a similar dataset 2453 const startMs = Date.parse(startDate); 2454 const endMs = Date.parse(endDate); 2455 2456 // Function to extract UTC offset from timezone string (e.g., "-05:00 ~ (GMT-05:00) Eastern Time (US & Canada)") 2457 function getTimezoneOffset(timezone) { 2458 const offsetMatch = timezone.match(/([-+]\d{2}):(\d{2})/); 2459 if (offsetMatch) { 2460 const hoursOffset = parseInt(offsetMatch[1], 10); 2461 const minutesOffset = parseInt(offsetMatch[2], 10); 2462 return hoursOffset * 60 + (hoursOffset < 0 ? -minutesOffset : minutesOffset); // Convert to minutes 2463 } 2464 return 0; // Default to UTC if no match 2465 } 2466 2467 const timezoneOffset = getTimezoneOffset(timezone); 2468 2469 // Adjust current time to account for timezone offset 2470 function getCurrentMsWithTimezone() { 2471 const now = new Date(); 2472 const localTime = now.getTime(); 2473 const localOffset = now.getTimezoneOffset(); // In minutes 2474 const totalOffset = localOffset + timezoneOffset; 2475 return localTime + totalOffset * 60 * 1000; // Adjusted time in ms 2476 } 2477 2478 const currentMs = getCurrentMsWithTimezone(); 2479 2480 // If current time is before the start, hide the clock 2481 if (endMs <= currentMs || currentMs < startMs) { 2482 section.querySelector(`.dsgn-pck__clock-wrap`).style.display = 'none'; 2483 return; 2484 } 2485 2486 const clock = section.querySelector(clockSelector); 2487 let timeinterval; // Declare timeinterval for global access 2488 2489 // Function to update the clock display 2490 function updateClockDisplay(hours, minutes, seconds, days = null) { 2491 if (days !== null) { 2492 const daysSpan = clock.querySelector('.dsgn-pck__days .dsgn-pck__number'); 2493 if (resetDaily == true){ 2494 daysSpan.innerHTML = 0; 2495 } else { 2496 if (daysSpan.innerHTML != days) daysSpan.innerHTML = days; 2497 } 2498 } 2499 2500 const hoursSpan = clock.querySelector('.dsgn-pck__hours .dsgn-pck__number'); 2501 const minutesSpan = clock.querySelector('.dsgn-pck__minutes .dsgn-pck__number'); 2502 const secondsSpan = clock.querySelector('.dsgn-pck__seconds .dsgn-pck__number'); 2503 2504 if (hoursSpan.innerHTML != hours) hoursSpan.innerHTML = ('0' + hours).slice(-2); 2505 if (minutesSpan.innerHTML != minutes) minutesSpan.innerHTML = ('0' + minutes).slice(-2); 2506 if (secondsSpan.innerHTML != seconds) secondsSpan.innerHTML = ('0' + seconds).slice(-2); 2507 } 2508 2509 // Function to calculate time left 2510 function calculateTimeLeft(targetTime) { 2511 const total = targetTime - getCurrentMsWithTimezone(); 2512 const days = Math.floor(total / (1000 * 60 * 60 * 24)); 2513 const hours = Math.floor((total / (1000 * 60 * 60)) % 24); 2514 const minutes = Math.floor((total / (1000 * 60)) % 60); 2515 const seconds = Math.floor((total / 1000) % 60); 2516 return { total, days, hours, minutes, seconds }; 2517 } 2518 2519 // Function to handle the timer logic based on 24-hour reset or default countdown 2520 function updateClockLogic(timeLeft) { 2521 updateClockDisplay(timeLeft.hours, timeLeft.minutes, timeLeft.seconds, timeLeft.days); 2522 2523 if (timeLeft.total <= 0) { 2524 clearInterval(timeinterval); 2525 if (resetDaily) { 2526 initializeAndEnableClock(section); // Reset the clock 2527 } 2528 } 2529 } 2530 2531 // Main logic for the countdown 2532 if (resetDaily) { 2533 const resetInterval = 24 * 60 * 60 * 1000; // 24 hours in milliseconds 2534 2535 function getNextResetTime() { 2536 const lastResetTime = new Date(endMs); // Assuming endMs is when the time should be reset 2537 const timeSinceLastReset = currentMs - endMs; 2538 const timeUntilNextReset = resetInterval - (timeSinceLastReset % resetInterval); 2539 return currentMs + timeUntilNextReset; 2540 } 2541 2542 function updateClock() { 2543 const nextResetTime = getNextResetTime(); 2544 const timeLeft = calculateTimeLeft(nextResetTime); 2545 updateClockLogic(timeLeft); 2546 } 2547 2548 updateClock(); 2549 timeinterval = setInterval(updateClock, 1000); // Assign interval to the declared timeinterval 2550 2551 } else { 2552 function updateClock() { 2553 const timeLeft = calculateTimeLeft(Date.parse(endDate)); 2554 updateClockLogic(timeLeft); 2555 } 2556 2557 updateClock(); 2558 timeinterval = setInterval(updateClock, 1000); // Assign interval to the declared timeinterval 2559 } 2560 }, 2561 toggleVideo: function(playToggle){ 2562 const videoWrapper = playToggle.closest('.dsgn-pck__video-wrapper'); 2563 const video = videoWrapper.querySelector('video'); 2564 if (video.paused) { 2565 video.play(); 2566 playToggle.classList.add('dsgn-pck__playing'); 2567 } else { 2568 video.pause(); 2569 playToggle.classList.remove('dsgn-pck__playing'); 2570 } 2571 2572 video.addEventListener("ended", () => { 2573 playToggle.classList.remove('dsgn-pck__playing'); 2574 }); 2575 }, 2576 load: function(section){ 2577 2578 if (this.settings.animation !== 'none'){ 2579 const options = { 2580 root: null, 2581 rootMargin: '0px', 2582 threshold: [0, 0.25, 0.5, 0.75, 1] 2583 }; 2584 // Construct Intersection Observer. 2585 const observer = new IntersectionObserver( this.animateSection, options ); 2586 // Observe if element is present. 2587 if (section) { 2588 observer.observe(section); 2589 } 2590 } 2591 2592 const countdownTimer = section.querySelector('.dsgn-pck__clock'); 2593 if (typeof countdownTimer !== 'undefined' && countdownTimer !== null){ 2594 designPack.initializeAndEnableClock(section); 2595 } 2596
2597 const playToggles = section.querySelectorAll(`[data-play-trigger]`); 2598 if (typeof playToggles !== 'undefined' && playToggles != null) { 2599 playToggles.forEach((playToggle) => { 2600 playToggle.addEventListener('click', (e) => { 2601 this.toggleVideo(e.target) 2602 }); 2603 }); 2604 } 2605 2606 }, 2607 unload: function(section){ 2608 section.classList.remove('dsgn-pck__animation-applied') 2609 } 2610 } 2611 2612 window.addEventListener('shopify:section:unload', function (e) { 2613 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2614 const sectionId = e.detail.sectionId; 2615 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2616 if (sectionId == designPack.settings.id){ 2617 designPack.unload(section); 2618 } 2619 }); 2620 2621 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30"]').innerHTML); 2622 const sectionId = "template--19377441865799__f95ea01b-3686-4357-a451-7f7d71b98d30"; 2623 const section = document.querySelector(`#DP--${sectionId}`); 2624 2625 if (sectionId == designPack.settings.id){ 2626 designPack.load(section); 2627 } 2628})() 2629</script>
2629 </div><div id="shopify-section-template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d" class="shopify-section DP__heading-simple"> <style>#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d { background: #FFFCF5; margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__sizer { width: 90%; margin: auto; max-width: px; padding-top: 60px; padding-bottom: 60px;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__background { width: 100%;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__image__wrapper::before { content: ''; display: block; position: absolute; top: 0; bottom: 0; right: 0; left: 0; z-index: 1; background: ;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__image__wrapper img { object-position: ;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__grid { height: 100%;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__content { z-index: 2; height: 100%; grid-template-columns: 1fr; grid-area: 1 / 1 / 2 / 2;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__inner-content { z-index: 2; max-width: 600px; width: 100%; padding:; background: ;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__block { color: #121212;}#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__block + .dsgn-pck__block { margin-top: 15px;}/* Animation */#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__sizer {padding-bottom: 0; }#DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d { outline: thin solid #9B8381; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__sizer { padding-top: 45px; padding-bottom: 45px; } #DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d .dsgn-pck__inner-content { width: min(400px, 100%); }}</style><section id="DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d" class="DP--template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d dsgn-pck__heading-simple dsgn-pck__section"><div class="dsgn-pck__background"> <div class="dsgn-pck__sizer dsgn-pck__grid"> <div class="dsgn-pck__content dsgn-pck__flex dsgn-pck__justify-center dsgn-pck__align-center dsgn-pck__text-alignment-center"> <div class="dsgn-pck__inner-content dsgn-pck__relative"><div id="DP--8f9f3095-7e43-4e70-8b5c-d2d7fc6e35e2" class="dsgn-pck__block dsgn-pck__block-id-8f9f3095-7e43-4e70-8b5c-d2d7fc6e35e2 dsgn-pck__block--heading dsgn-pck__block--1" style="--dsgn-pck-animate: 1;"><style>.dsgn-pck__block-id-8f9f3095-7e43-4e70-8b5c-d2d7fc6e35e2 .dsgn-pck__heading { margin: 0; line-height: calc(3px + 2ex + 3px);color: ;font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);} @media (max-width: 480px) { .dsgn-pck__block-id-8f9f3095-7e43-4e70-8b5c-d2d7fc6e35e2 .dsgn-pck__heading {} } </style><h2 class="dsgn-pck__heading"> Our Locations </h2></div><div id="DP--a0b1c7cd-f620-4b73-93f5-efc292f0daa1" class="dsgn-pck__block dsgn-pck__block-id-a0b1c7cd-f620-4b73-93f5-efc292f0daa1 dsgn-pck__block--divider dsgn-pck__block--2" style="--dsgn-pck-animate: 2;"><style> .dsgn-pck__block-id-a0b1c7cd-f620-4b73-93f5-efc292f0daa1 { padding-top: 10px; padding-bottom: 10px; } .dsgn-pck__block-id-a0b1c7cd-f620-4b73-93f5-efc292f0daa1 .dsgn-pck__divider { height: 0; border: none; background: transparent;margin: 0 auto;width: 25%; border-top: 2px solid #c6a95a; } </style> <hr class="dsgn-pck__divider" aria-hidden="true"></div></div> </div> </div> </div></section>
2629<script type="application/json" data-dsgn-pck="template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d"> 2630 { 2631 "id": "template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d", 2632 "animation": "none" 2633 } 2634</script>
2634<script data-dsgn-pck-js="template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d" type="module" defer=""> 2635(function(){ 2636 2637 const designPack = { 2638 settings: {}, 2639 animateSection: function(entries, observer){ 2640 // Target the first entry available. 2641 let observedSection = entries[0]; 2642 if (observedSection.isIntersecting) { 2643 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2644 } 2645 }, 2646 load: function(section){ 2647 2648 if (this.settings.animation !== 'none'){ 2649 const options = { 2650 root: null, 2651 rootMargin: '0px', 2652 threshold: [0, 0.25, 0.5, 0.75, 1] 2653 }; 2654 // Construct Intersection Observer. 2655 const observer = new IntersectionObserver( this.animateSection, options ); 2656 // Observe if element is present. 2657 if (section) { 2658 observer.observe(section); 2659 } 2660 } 2661 }, 2662 unload: function(section){ 2663 section.classList.remove('dsgn-pck__animation-applied') 2664 } 2665 } 2666 2667 window.addEventListener('shopify:section:unload', function (e) { 2668 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2669 const sectionId = e.detail.sectionId; 2670 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2671 if (sectionId == designPack.settings.id){ 2672 designPack.unload(section); 2673 } 2674 }); 2675 2676 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d"]').innerHTML); 2677 const sectionId = "template--19377441865799__3512bad5-c450-45fe-b851-afd04e48d05d"; 2678 const section = document.querySelector(`#DP--${sectionId}`); 2679 2680 if (sectionId == designPack.settings.id){ 2681 designPack.load(section); 2682 } 2683})() 2684</script>
2684 </div><div id="shopify-section-template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78" class="shopify-section DP__columns-simple"> <style>#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 { background: #FFFCF5; margin-top: 0px; margin-bottom: 0px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__sizer { padding-top: 40px; padding-bottom: 40px; width: 95%; max-width: 800px; z-index: 2; position: relative;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__background::before { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: 1; background: #FFFCF5;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__header { width: 100%; max-width: 800px; margin: auto; margin-bottom: 30px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__header .dsgn-pck__header-block { margin-top: 15px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__columns { justify-content: center; flex-wrap: wrap; --flex-gap: 20px; gap: var(--flex-gap);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__flex-item { --flex-items: 3; flex: 0 1 calc((100% / var(--flex-items)) - (((var(--flex-items) - 1) / var(--flex-items)) * var(--flex-gap))); width: calc((100% / var(--flex-items)) - (((var(--flex-items) - 1) / var(--flex-items)) * var(--flex-gap))); align-self: stretch; display: flex; flex-direction: column; justify-content: center;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__inner-content { display: flex; flex-direction: column; position: relative; flex: 1 0 auto;overflow: hidden; gap: 10px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image__wrapper { margin: auto; width: 100%;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__item img { width: 100%; overflow: hidden;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image--circle .dsgn-pck__image__wrapper img { border-radius: 50%;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image--rounded .dsgn-pck__image__wrapper img { border-radius: 5px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image--circle svg,#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image--rounded svg,#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__image--square svg { width: 100%;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__text-content { padding: 1.2em 1.2em 2em; display: flex; flex-direction: column; justify-content: space-between; height: 100%; grid-gap: 1.2em;background: ; border-radius: 8px;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading + .dsgn-pck__text,#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading + .dsgn-pck__button,#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading ~ .dsgn-pck__read-more-container { margin-top: calc(60px * 0.15);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__text + .dsgn-pck__button { margin-top: calc(60px * 0.2);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading { margin: 0; line-height: var(--dp-g-heading-line-height, var(--dp-heading-line-height, calc(3px + 2ex + 3px))); color: #000000; font-size: calc(var(--dp-g-small-heading-size, var(--dp-small-heading-size, 24px)) * 0.72);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading a { color: inherit; text-decoration: none;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__text { margin: 0; color: #000000; line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.6);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__rte p,#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__rte ul { line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); color: #000000; font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.6);}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__rte ul { display: table; margin-left: auto; margin-right: auto; text-align: left; }#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 ul.dsgn-pck__list { width: 100%; margin-top: 10px; color: #000000; line-height: var(--dp-g-body-line-height, var(--dp-body-line-height, calc(3px + 2.5ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.6);list-style: inherit;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__button { border-color: transparent; display: inline-block; text-decoration: none; padding: 0.5em 1.2em; transition: all 0.3s ease-in-out; border: thin solid; border-radius: 0px; border-color:#4b4949; line-height: var(--dp-g-button-line-height, var(--dp-button-line-height, calc(3px + 2ex + 3px))); font-size: calc(var(--dp-g-body-size, var(--dp-body-size, 18px)) * 0.6); color: #4b4949; background-color: rgba(0,0,0,0);width: max-content;}#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__button:hover { opacity: 1;background-color: rgba(75, 73, 73, 0.1);}/* Animation */#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 [style*="--dsgn-pck-animate"] { opacity: 1; }#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__small-heading {text-transform: uppercase; }/* Landscape phones and down */@media (max-width: 480px) { #DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 { margin-top: 0px; margin-bottom: 0px; } #DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__sizer { min-width: 70%; padding-top: 20px; padding-bottom: 20px; }#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__flex-item { min-width: 100%; }#DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 .dsgn-pck__flex-item { flex: 0 0 45%; width: 50%; min-width: auto; }}</style><section id="DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78" class="DP--template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78 dsgn-pck__columns-simple dsgn-pck__section"><div class="dsgn-pck__background dsgn-pck__parallax"><div class="dsgn-pck__sizer"><div class="dsgn-pck__columns dsgn-pck__flex"><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-template--14572466110535__3418f683-020f-4107-83e0-dbe71ccebd78-168598871109a4d352-0 dsgn-pck__column dsgn-pck__column--1 dsgn-pck__image--none" style="--dsgn-pck-animate: 1;"><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 534 534"></svg><img src="//www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=180 180w, //www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=360 360w, //www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=540 540w, //www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=720 720w, //www.harney.com/cdn/shop/files/millerton.png?v=1619024652&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> <a class="dsgn-pck__absolute-link" href="/pages/the-millerton-shop"></a> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> <a href="/pages/the-millerton-shop"> Millerton </a> </h2></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-template--14572466110535__3418f683-020f-4107-83e0-dbe71ccebd78-168598871109a4d352-1 dsgn-pck__column dsgn-pck__column--2 dsgn-pck__image--none" style="--dsgn-pck-animate: 2;"><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 536 534"></svg><img src="//www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=180 180w, //www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=360 360w, //www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=540 540w, //www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=720 720w, //www.harney.com/cdn/shop/files/soho.jpg?v=1619024667&width=900 900w" width="1000" height="996" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> <a class="dsgn-pck__absolute-link" href="/pages/the-soho-shop"></a> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> <a href="/pages/the-soho-shop">
2684 Soho </a> </h2></div></div></div> </div><style></style> <div class="dsgn-pck__flex-item dsgn-pck__item dsgn-pck__block-template--14572466110535__3418f683-020f-4107-83e0-dbe71ccebd78-168598871109a4d352-2 dsgn-pck__column dsgn-pck__column--3 dsgn-pck__image--none" style="--dsgn-pck-animate: 3;"><div class="dsgn-pck__inner-content"><div class="dsgn-pck__image__wrapper dsgn-pck__image-absolute"> <svg viewBox="0 0 534 534"></svg><img src="//www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=1000" alt="" srcset="//www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=180 180w, //www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=360 360w, //www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=540 540w, //www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=720 720w, //www.harney.com/cdn/shop/files/online.jpg?v=1619024676&width=900 900w" width="1000" height="1000" loading="lazy" sizes="(max-width: 480px) 90vw, 31vw"> <a class="dsgn-pck__absolute-link" href="/pages/contact-us"></a> </div><div class="dsgn-pck__text-content dsgn-pck__justify-center"> <div class="dsgn-pck__text-content__wrapper"><h2 class="dsgn-pck__small-heading"> <a href="/pages/contact-us"> Millerton </a> </h2></div></div></div> </div></div> </div> </div></section>
2684<script type="application/json" data-dsgn-pck="template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78"> 2685 { 2686 "id": "template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78", 2687 "animation": "none", 2688 "enable_parallax": false 2689 } 2690</script>
2690<script data-dsgn-pck-js="template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78" type="module" defer=""> 2691(function(){ 2692 const designPack = { 2693 settings: {}, 2694 animateSection: function(entries, observer){ 2695 // Target the first entry available. 2696 let observedSection = entries[0]; 2697 if (observedSection.isIntersecting) { 2698 observedSection.target.classList.add('dsgn-pck__animation-applied'); 2699 } 2700 }, 2701 enableParallax: function(section){ 2702 const image = section.querySelector(`.dsgn-pck__parallax-img`); 2703 jarallax(section, { 2704 speed: 0.2, 2705 imgElement: image 2706 }); 2707 }, 2708 setReadMore: function(section, readMoreContainer){ 2709 console.log(readMoreContainer) 2710 function isScrollable(elementSelector, readMoreContainer) { 2711 const element = readMoreContainer.querySelector(elementSelector); 2712 2713 console.log(element) 2714 console.log(elementSelector) 2715 2716 if (element) { 2717 const scrollHeight = element.scrollHeight; 2718 const clientHeight = element.clientHeight; 2719 2720 return scrollHeight > clientHeight; 2721 } 2722 2723 // Return false if the element is not found 2724 return false; 2725 } 2726 2727 const isContainerScrollable = isScrollable('.dsgn-pck__read-more-container-inner', readMoreContainer); 2728 console.log(isContainerScrollable) 2729 const readMoreToggle = readMoreContainer.querySelector('.dsgn-pck__read-more-text'); 2730 2731 if (readMoreToggle != null && typeof readMoreToggle != 'undefined'){ 2732 if (isContainerScrollable) { 2733 readMoreToggle.style.display = 'inline-block'; 2734 } else { 2735 readMoreToggle.style.display = 'none'; 2736 } 2737 } 2738 }, 2739 disableParallax: function(section){ 2740 jarallax(section, 'destroy'); 2741 }, 2742 load: function(section){ 2743 if (this.settings.animation !== 'none'){ 2744 const options = { 2745 root: null, 2746 rootMargin: '0px', 2747 threshold: [0, 0.25, 0.5, 0.75, 1] 2748 }; 2749 // Construct Intersection Observer. 2750 const observer = new IntersectionObserver( this.animateSection, options ); 2751 // Observe if element is present. 2752 if (section) { 2753 observer.observe(section); 2754 } 2755 } 2756 2757 if (this.settings.enable_parallax == true){ 2758 this.enableParallax(section); 2759 } 2760 2761 const readMore = section.querySelectorAll('.dsgn-pck__read-more-container'); 2762 if (typeof readMore !== 'undefined' && readMore !== null){ 2763 readMore.forEach(function(readMore){ 2764 designPack.setReadMore(section, readMore); 2765 }); 2766 2767 } 2768 2769 }, 2770 unload: function(section){ 2771 section.classList.remove('dsgn-pck__animation-applied') 2772 if (this.settings.enable_parallax == true){ 2773 this.disableParallax(section); 2774 } 2775 } 2776 } 2777 window.addEventListener('shopify:section:unload', function (e) { 2778 const settings = document.querySelector(`[data-dsgn-pck="${e.detail.sectionId}"]`); 2779 const sectionId = e.detail.sectionId; 2780 const section = document.querySelector(`#DP--${e.detail.sectionId}`); 2781 if (sectionId == designPack.settings.id){ 2782 designPack.unload(section); 2783 } 2784 }); 2785 designPack.settings = JSON.parse(document.querySelector('[data-dsgn-pck="template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78"]').innerHTML); 2786 const sectionId = "template--19377441865799__3418f683-020f-4107-83e0-dbe71ccebd78"; 2787 const section = document.querySelector(`#DP--${sectionId}`); 2788 if (sectionId == designPack.settings.id){ 2789 designPack.load(section); 2790 } 2791})() 2792</script>
2792 </div> </div><!-- BEGIN sections: footer-group --> <div id="shopify-section-sections--19377427611719__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer"><style> 2793 #shopify-section-sections--19377427611719__footer .footer {--background: 255, 255, 255; 2794 --heading-color: 0, 0, 0; 2795 --text-color: 0, 0, 0; 2796 --border-color: 217, 217, 217; 2797 }#shopify-section-sections--19377427611719__footer .footer__item-list { 2798 --footer-link-columns: 4; 2799 --footer-link-columns-narrow: 2; 2800 --footer-link-rows-narrow: 2; 2801 } 2802 2803 /* ------- CUSTOM STYLING ------- */ 2804 2805 #shopify-section-sections--19377427611719__footer .footer__item.footer__item--logos { 2806 max-width: 195px; 2807 } 2808 2809 @media screen and (max-width: 740px) { 2810 2811 #shopify-section-sections--19377427611719__footer .footer__item.footer__item--newsletter { 2812 max-width: 100%; 2813 } 2814 2815 #shopify-section-sections--19377427611719__footer .footer__item.footer__item--logos { 2816 max-width: 100%; 2817 width: 100%; 2818 grid-column: span 2; 2819 } 2820 2821 #shopify-section-sections--19377427611719__footer .footer__item.footer__item--logos .family { 2822 display: flex; 2823 gap: 15px; 2824 } 2825 2826 #shopify-section-sections--19377427611719__footer .footer__item.footer__item--logos .family a { 2827 margin-top: 0; 2828 } 2829 2830 } 2831</style> <footer class="footer footer--bordered"> <div class="container"> <div class="footer__inner"> <div class="footer__item-list"><div class="footer__item footer__item--links is-first"><p role="heading" aria-level="2" class="footer__item-title heading heading--small">Tea</p> <div class="footer__item-content"> <ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/pages/collections" class="link--faded">Our Teas</a> </li><li class="linklist__item"> <a href="/pages/the-soho-shop" class="link--faded">SoHo Store</a> </li><li class="linklist__item"> <a href="/pages/the-millerton-shop" class="link--faded">Millerton Store</a> </li><li class="linklist__item"> <a href="/pages/this-is-tea" class="link--faded">Tea 101</a> </li><li class="linklist__item"> <a href="/pages/monthly-tea-spotlight" class="link--faded">Monthly Tea Spotlight</a> </li><li class="linklist__item"> <a href="/pages/hemp-division" class="link--faded">The Hemp Division</a> </li></ul> </div></div><div class="footer__item footer__item--links "><p role="heading" aria-level="2" class="footer__item-title heading heading--small">Service</p> <div class="footer__item-content"> <ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/account/" class="link--faded">My Account</a> </li><li class="linklist__item"> <a href="https://www.harney.com/pages/rewards-program-page" class="link--faded">Rewards & Referrals</a> </li><li class="linklist__item"> <a href="/pages/returns-exchanges" class="link--faded">Returns</a> </li><li class="linklist__item"> <a href="/pages/shipping" class="link--faded">Shipping Policy</a> </li><li class="linklist__item"> <a href="/collections/corporate-gifts" class="link--faded">Corporate Gifting</a> </li><li class="linklist__item"> <a href="/pages/customer-faqs" class="link--faded">FAQs</a> </li><li class="linklist__item"> <a href="https://www.harney.com/pages/manage-e-mail-preferences" class="link--faded">Manage Your E-mail Preferences</a> </li><li class="linklist__item"> <a href="/pages/data-sharing-opt-out" class="link--faded">Your Privacy Choices</a> </li></ul> </div></div><div class="footer__item footer__item--links "><p role="heading" aria-level="2" class="footer__item-title heading heading--small">About</p> <div class="footer__item-content"> <ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/pages/about-us" class="link--faded">Who We Are</a> </li><li class="linklist__item"> <a href="/pages/all-reviews" class="link--faded">Reviews</a> </li><li class="linklist__item"> <a href="/pages/global-footprint" class="link--faded">Global Footprint</a> </li><li class="linklist__item"> <a href="/pages/diversity" class="link--faded">Diversity</a> </li><li class="linklist__item"> <a href="/blogs/news" class="link--faded">Blog</a> </li><li class="linklist__item"> <a href="/pages/military-discount" class="link--faded">Military Discount</a> </li></ul> </div></div><div class="footer__item footer__item--links "><p role="heading" aria-level="2" class="footer__item-title heading heading--small">Contact</p> <div class="footer__item-content"> <ul class="linklist list--unstyled" role="list"><li class="linklist__item"> <a href="/pages/request-a-catalog" class="link--faded">View Our Catalog </a> </li><li class="linklist__item"> <a href="/pages/wholesale" class="link--faded">Become a Wholesaler</a> </li><li class="linklist__item"> <a href="/pages/media-inquiries" class="link--faded">PR & Media</a> </li><li class="linklist__item"> <a href="/pages/contact-us" class="link--faded">Contact</a> </li><li class="linklist__item">
2831 <a href="https://www.harney.com/pages/check-gift-card-balance" class="link--faded">Check Gift Card Balances</a> </li><li class="linklist__item"> <a href="/pages/careers" class="link--faded">Careers</a> </li></ul> </div></div><div class="footer__service"><div class="footer__item footer__item--service footer__item--service-phone"> <div class="footer__item-content"><p><a href="tel:+18884276398">Call 1-888-427-6398</a>, Monday to Friday, 9am to 5pm EST.</p></div> </div><div class="footer__item footer__item--service footer__item--service-military"> <div class="footer__item-content"><p>Military discount for active-duty service members, veterans, and retirees. <a href="/pages/military-discount">Learn More</a>.</p></div> </div></div><div class="footer__item footer__item--newsletter "><p role="heading" aria-level="2" class="footer__item-title heading heading--small">IT'S TEATIME</p><div class="footer__item-content"><p>Sign up to get the latest on sales, new releases and more!</p><div class="klaviyo-form-XuHmxN"></div> <ul class="social-media social-media--no-radius list--unstyled" role="list"> <li class="social-media__item social-media__item--facebook"> <a href="https://facebook.com/harneytea" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on Facebook"><svg focusable="false" width="9" height="17" class="icon icon--facebook " viewBox="0 0 9 17"> <path fill-rule="evenodd" clip-rule="evenodd" d="M2.486 16.2084L2.486 8.81845H0L0 5.93845L2.486 5.93845L2.486 3.81845C2.38483 2.79982 2.73793 1.78841 3.45107 1.05407C4.16421 0.319722 5.16485 -0.0628415 6.186 0.00844868C6.9284 0.00408689 7.67039 0.0441585 8.408 0.128449V2.69845L6.883 2.69845C6.4898 2.61523 6.08104 2.73438 5.79414 3.01585C5.50724 3.29732 5.3803 3.70373 5.456 4.09845L5.456 5.93845H8.308L7.936 8.81845H5.46L5.46 16.2084H2.486Z" fill="currentColor"></path> </svg></a> </li><li class="social-media__item social-media__item--twitter"> <a href="https://twitter.com/harneytea" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on Twitter"><svg focusable="false" width="24" height="24" class="icon icon--twitter " viewBox="0 0 24 24"> <path d="M16.94 4h2.715l-5.93 6.777L20.7 20h-5.462l-4.278-5.593L6.065 20H3.35l6.342-7.25L3 4h5.6l3.868 5.113L16.94 4Zm-.952 14.375h1.504L7.784 5.54H6.17l9.818 12.836Z" fill="currentColor"></path> </svg></a> </li><li class="social-media__item social-media__item--instagram"> <a href="https://instagram.com/harneytea" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on Instagram"><svg focusable="false" width="16" height="16" class="icon icon--instagram " viewBox="0 0 16 16"> <path fill-rule="evenodd" clip-rule="evenodd" d="M8 0C5.827 0 5.555.01 4.702.048 3.85.087 3.269.222 2.76.42a3.921 3.921 0 00-1.417.923c-.445.444-.719.89-.923 1.417-.198.509-.333 1.09-.372 1.942C.01 5.555 0 5.827 0 8s.01 2.445.048 3.298c.039.852.174 1.433.372 1.942.204.526.478.973.923 1.417.444.445.89.719 1.417.923.509.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.445-.01 3.298-.048c.852-.039 1.433-.174 1.942-.372a3.922 3.922 0 001.417-.923c.445-.444.719-.89.923-1.417.198-.509.333-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.298c-.039-.852-.174-1.433-.372-1.942a3.922 3.922 0 00-.923-1.417A3.921 3.921 0 0013.24.42c-.509-.198-1.09-.333-1.942-.372C10.445.01 10.173 0 8 0zm0 1.441c2.136 0 2.39.009 3.233.047.78.036 1.203.166 1.485.276.374.145.64.318.92.598.28.28.453.546.598.92.11.282.24.705.276 1.485.038.844.047 1.097.047 3.233s-.009 2.39-.047 3.233c-.036.78-.166 1.203-.276 1.485-.145.374-.318.64-.598.92-.28.28-.546.453-.92.598-.282.11-.705.24-1.485.276-.844.038-1.097.047-3.233.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.479 2.479 0 01-.92-.598 2.478 2.478 0 01-.598-.92c-.11-.282-.24-.705-.276-1.485-.038-.844-.047-1.097-.047-3.233s.009-2.39.047-3.233c.036-.78.166-1.203.276-1.485.145-.374.318-.64.598-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.844-.038 1.097-.047 3.233-.047zm0 9.226a2.667 2.667 0 110-5.334 2.667 2.667 0 010 5.334zm0-6.775a4.108 4.108 0 100 8.216 4.108 4.108 0 000-8.216zm5.23-.162a.96.96 0 11-1.92 0 .96.96 0 011.92 0z" fill="currentColor"></path> </svg></a> </li><li class="social-media__item social-media__item--youtube"> <a href="https://youtube.com/user/harneyteas" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on YouTube"><svg fill="none" focusable="false" width="18" height="13" class="icon icon--youtube " viewBox="0 0 18 13"> <path fill-rule="evenodd" clip-rule="evenodd" d="M16.0325 0.369454C16.807 0.572743 17.4168 1.17173 17.6238 1.9324C18 3.31101 18 6.1875 18 6.1875C18 6.1875 18 9.06389 17.6238 10.4427C17.4168 11.2033 16.807 11.8023 16.0325 12.0056C14.6288 12.375 9 12.375 9 12.375C9 12.375 3.37122
283112.375 1.96752 12.0056C1.19311 11.8023 0.583159 11.2033 0.376159 10.4427C0 9.06389 0 6.1875 0 6.1875C0 6.1875 0 3.31101 0.376159 1.9324C0.583159 1.17173 1.19311 0.572743 1.96752 0.369454C3.37122 0 9 0 9 0C9 0 14.6288 0 16.0325 0.369454ZM11.8636 6.1876L7.1591 8.79913V3.57588L11.8636 6.1876Z" fill="currentColor"></path> </svg></a> </li> </ul></div></div><div class="footer__item footer__item--logos "><div class="footer__item-content"> <div class="family"> <a href="https://harneyrealestate.com/" target="_blank"><img src="//www.harney.com/cdn/shop/files/Elyse-Harney-Real-Estate-Logo_1024x768.jpg?v=9254905835842552030" alt="Harney Real Estate Logo" width="325px" height="151px"></a> <a href="https://www.salisburycthousing.org/about-salisbury-housing-trust" target="_blank"><img src="//www.harney.com/cdn/shop/files/salisburycthousting_400x.jpg?v=516816696765076507" alt="Salisbury Housing Trust" width="325px" height="240px"></a> </div> </div></div></div> <div class="footer__aside"> </div> </div> </div> </footer> <style> #shopify-section-sections--19377427611719__footer .footer {padding-bottom: 0; background-color: #fefefe;} #shopify-section-sections--19377427611719__footer .footer__aside {display: none;} </style></div><div id="shopify-section-sections--19377427611719__custom_liquid_qQ8MYW" class="shopify-section shopify-section-group-footer-group shopify-section--custom-liquid"><style> 2832 #shopify-section-sections--19377427611719__custom_liquid_qQ8MYW {--heading-color: 51, 51, 51; 2833 --text-color: 51, 51, 51; 2834 2835 --section-background: 255, 255, 255; 2836 } 2837</style> <section class=" "> <div> <div class="section__color-wrapper "> <div class="container "><div class="liquid"> </div></div> </div> </div> </section> </div><div id="shopify-section-sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a" class="shopify-section shopify-section-group-footer-group DP__html-embed-widget"> <style>#DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a { background-size: cover; background-repeat: no-repeat; position: relative; background-image: ; background-position: center center; margin-top: 20px; margin-bottom: 20px;}#DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a::before { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; z-index: -1; background: ;}#DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a .dsgn-pck__sizer { z-index: 2; padding-top: 15px; padding-bottom: 15px; width: 85%; max-width: px;}#DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a .dsgn-pck__heading { margin: 0 0 1em; line-height: calc(3px + 2ex + 3px); color: #ffffff; font-size: calc(var(--dp-g-heading-size, var(--dp-heading-size, 35px)) * 1.0);}#DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a iframe { margin: auto; display: block;}.dsgn-pck__iframe__wrapper { display: grid; position: relative; margin: 0;}.dsgn-pck__iframe__wrapper > * { grid-area: 1 / 1 / 2 / 2;}.dsgn-pck__iframe__wrapper iframe { object-fit: cover; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; position: absolute;}/* Landscape phones and down */@media (max-width: 480px) { #DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a { margin-top: 10px; margin-bottom: 10px; } #DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a .dsgn-pck__sizer { padding-top: 7px; padding-bottom: 7px; }}</style><section id="DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a" class="DP--sections--19377427611719__3941adb3-1c94-4d91-8160-540094275b3a dsgn-pck__html-embed-widget dsgn-pck__section"> <div class="dsgn-pck__sizer"><div class="dsgn-pck__widget "><p>© 2026 <a style="text-decoration:underline!important;" href="/" title="">Harney & Sons Fine Teas</a>. All Rights Reserved. <span>|</span> <a style="text-decoration:underline!important;" href="/policies/terms-of-service">TOS</a> <span>|</span> <a style="text-decoration:underline!important;" href="/policies/privacy-policy">Privacy</a> <span>|</span> <a style="text-decoration:underline!important;" href="/pages/accessibility-statement">Accessibility</a> <span>|</span> <span>|</span> <a style="text-decoration:underline!important;" href="#" onclick="event.preventDefault(); if(typeof privacyBanner!=='undefined' && privacyBanner.showPreferences){privacyBanner.showPreferences();}else if(window.Shopify && window.Shopify.customerPrivacy && window.Shopify.customerPrivacy.showPreferences){window.Shopify.customerPrivacy.showPreferences();}">Cookie Preferences</a> </p></div> </div></section> </div> <!-- END sections: footer-group --><!-- Fix for RISE gift card product -->
2837<script type="text/javascript" src="https://pdq-scripts.pdqprod.link/shopify-scripts.js" defer=""></script>
2837 <!--<style> 2838 #DP--template--14615024861255__24004c02-763c-46a0-9fdd-a2ba6106815c li:first-child { 2839 2840 font-size: 0px; 2841 } 2842 #DP--template--14615024861255__24004c02-763c-46a0-9fdd-a2ba6106815c li:first-child:after { 2843 content: 'Proceed to Checkout' !important; 2844 font-size: 18px !important; 2845 </style>--> <!-- End Fix -->
2845<script> 2846 (() => { 2847 // Accessible name for the product-card variant <select> (Nosto renders these after load). 2848 const name = (sel) => { 2849 if (sel.hasAttribute('aria-label')) return; 2850 const card = sel.closest('product-item, .product-item, .nosto-product'); 2851 const t = card && card.querySelector('.product-item-meta__title, .nosto-product-name'); 2852 sel.setAttribute('aria-label', t ? `Choose an option for ${t.textContent.trim()}` : 'Choose a product option'); 2853 }; 2854 const scan = () => document.querySelectorAll('select.product-item__cta--options:not([aria-label])').forEach(name); 2855 const start = () => { scan(); new MutationObserver(scan).observe(document.body, { childList: true, subtree: true }); }; 2856 if (document.body) start(); else document.addEventListener('DOMContentLoaded', start); 2857 })(); 2858 </script>
2858 <style> #product-subtitle {display: none;} div#homepage-above-collections,div#frontpage-nosto-4 {height: 600px;} @media (max-width: 768px) {#frontpage-nosto-4 {height: 430px; } div#homepage-above-collections {height: 500px; }} </style> <div id="shopify-block-ATEE3ZkFQcUtzdnBXZ__6990797075511561578" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: nosto-tagging --> <div class="nosto_page_type" style="display:none">other</div> <div class="nosto_market" style="display:none"> <span class="id">290455623</span> <span class="locale">en</span> <span class="b2b">false</span> </div> <div class="nosto_shopify_shop" style="display: none"> <span class="id">12341342</span> </div> <div class="nosto_cart" style="display:none"></div> <!-- END app snippet --> </div><div id="shopify-block-AUXN2dmh4bjVQQ0hBY__2046743146925785077" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: nosto-variation --> <div class="nosto_variation" style="display: none;">USD</div> <!-- END app snippet --> </div>
2858<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2858 </body>
2858<script id="session-content"> 2859 // Ensure the global namespace exists 2860 window.Nostra = window.Nostra || {}; 2861 window.Nostra.Transform = window.Nostra.Transform || {}; 2862 2863 window.Nostra.Transform.originDocumentPromise.then((result) => { 2864 window.Nostra.Transform.originDocument = result; 2865 var elementContainer; 2866 var elementOriginContainer; 2867 2868 window.Nostra.Transform.originDocument.querySelectorAll("script").forEach((el, index) => { 2869 if (el.innerHTML.includes(`var wpmLoader`)) { 2870 let newElement = document.createElement("script"); 2871 Array.from(el.attributes).forEach(attr => { 2872 newElement.setAttribute(attr.name, attr.value); 2873 }); 2874 newElement.innerHTML = el.innerHTML; 2875 document.getElementsByTagName('head')[0].append(newElement); 2876 } 2877 }); 2878 2879 window.setTimeout(function () { 2880 if ( 2881 window.Shopify && 2882 window.Shopify.analytics && 2883 window.Shopify.analytics.replayQueue && 2884 window.Nostra && 2885 window.Nostra.Transform && 2886 window.Nostra.Transform.replayQueue && 2887 window.Nostra.Transform.replayQueue.length 2888 ) { 2889 for (var i = 0; i < window.Nostra.Transform.replayQueue.length; i++) { 2890 var e = window.Nostra.Transform.replayQueue[i]; 2891 var d = e[0], n = e[1], o = e[2]; 2892 Shopify.analytics.publish(d, n, o); 2893 } 2894 } 2895 }, 0); 2896 2897 window.Nostra.Transform.originDocument.querySelectorAll("script").forEach((el, index) => { 2898 if (el.innerHTML.includes(`window.ShopifyPay =`)) { 2899 let newElement = document.createElement("script"); 2900 Array.from(el.attributes).forEach(attr => { 2901 newElement.setAttribute(attr.name, attr.value); 2902 }); 2903 newElement.innerHTML = el.innerHTML; 2904 document.getElementsByTagName('head')[0].append(newElement); 2905 } 2906 }); 2907 2908 elementOriginContainer = window.Nostra.Transform.originDocument.querySelector(`script[src*="shopify_pay"]`); 2909 if (elementOriginContainer) { 2910 let newElement = document.createElement(elementOriginContainer.tagName); 2911 Array.from(elementOriginContainer.attributes).forEach(attr => { 2912 newElement.setAttribute(attr.name, attr.value); 2913 }); 2914 newElement.innerHTML = elementOriginContainer.innerHTML; 2915 document.getElementsByTagName('head')[0].append(newElement); 2916 } 2917 elementOriginContainer = undefined; 2918 window.Nostra.Transform.originDocument.querySelectorAll("script").forEach((el, index) => { 2919 if (el.innerHTML.includes(`elevar/static/configs`)) { 2920 let newElement = document.createElement("script"); 2921 Array.from(el.attributes).forEach(attr => { 2922 newElement.setAttribute(attr.name, attr.value); 2923 }); 2924 newElement.innerHTML = el.innerHTML; 2925 document.getElementsByTagName('head')[0].append(newElement); 2926 } 2927 }); 2928 2929 elementOriginContainer = [...window.Nostra.Transform.originDocument.querySelectorAll('script')].find(element => element.textContent.includes('window.themeVariables = {') && !element.id.startsWith('session-content')) 2930 if(elementOriginContainer) { 2931 const newElementContainer = elementOriginContainer.cloneNode(true); 2932 [...document.querySelectorAll('script')].filter(element => 2933 element.textContent.includes('window.themeVariables = {') && !element.i
2933d.startsWith('session-content') 2934 ).forEach(element => 2935 element.replaceWith(newElementContainer) 2936 ); 2937 } 2938 elementOriginContainer = undefined; 2939 (function () { 2940 const elementOriginReg = new RegExp('(
2940<script>[^<]*?cartCount:.)([^<]*?)(,[^<]*?<.script>)'); 2941 const elementOriginMatch = window.Nostra.Transform.originDocument.querySelector('html').outerHTML.match(elementOriginReg); 2942 if(elementOriginMatch) { 2943 const newScript = document.createElement('script'); 2944 newScript.innerHTML = 'window.themeVariables.cartCount = ' + elementOriginMatch[2] + ';'; 2945 document.body.appendChild(newScript); 2946 } 2947 })(); 2948 2949 elementContainer = document.querySelectorAll(`cart-count.bubble-count`); 2950 if (elementContainer) { 2951 const elementOriginContainer = window.Nostra.Transform.originDocument.querySelectorAll(`cart-count.bubble-count`); 2952 elementContainer.forEach((element, index) => { 2953 element.innerHTML = elementOriginContainer[index].innerHTML; 2954 }); 2955 } 2956 elementContainer = undefined; 2957 elementContainer = document.querySelectorAll(`p.drawer__title`); 2958 if (elementContainer) { 2959 const elementOriginContainer = window.Nostra.Transform.originDocument.querySelectorAll(`p.drawer__title`); 2960 elementContainer.forEach((element, index) => { 2961 element.innerHTML = elementOriginContainer[index].innerHTML; 2962 }); 2963 } 2964 elementContainer = undefined; 2965 elementContainer = document.querySelectorAll(`div.nosto_cart`); 2966 if (elementContainer) { 2967 const elementOriginContainer = window.Nostra.Transform.originDocument.querySelectorAll(`div.nosto_cart`); 2968 elementContainer.forEach((element, index) => { 2969 element.innerHTML = elementOriginContainer[index].innerHTML; 2970 }); 2971 } 2972 elementContainer = undefined; 2973 }); 2974 </script>
2974</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.