1<!doctype html> 2 3<html lang="en" dir="ltr"> 4 <head> 5 <meta charset="utf-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0"> 7 8 <title> 9 Stockman's Ridge Wines | Orange, Australia 10 </title><meta name="description" content="An Orange Winery and Vineyard with Cool Climate wines, offering wine tastings, food and live music. Taste and Enjoy Gruner Veltliner, Sauvignon Blanc, Pinot Gris, Chardonnay, Pinot Noir, Merlot, Cabernet Sauvignon, Zinfandel and Shiraz."><link rel="canonical" href="https://stockmansridge.com.au/"><link rel="shortcut icon" href="//stockmansridge.com.au/cdn/shop/files/Untitled_design_7.png?v=1764810578&width=96"> 11 <link rel="apple-touch-icon" href="//stockmansridge.com.au/cdn/shop/files/Untitled_design_7.png?v=1764810578&width=180"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><link rel="preload" href="//stockmansridge.com.au/cdn/fonts/instrument_sans/instrumentsans_n4.db86542ae5e1596dbdb28c279ae6c2086c4c5bfa.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="//stockmansridge.com.au/cdn/fonts/outfit/outfit_n4.387c2e2715c484a1f1075eb90d64808f1b37ac58.woff2" as="font" type="font/woff2" crossorigin><meta property="og:type" content="website"> 12 <meta property="og:title" content="Stockman's Ridge Wines | Orange, Australia"><meta property="og:description" content="An Orange Winery and Vineyard with Cool Climate wines, offering wine tastings, food and live music. Taste and Enjoy Gruner Veltliner, Sauvignon Blanc, Pinot Gris, Chardonnay, Pinot Noir, Merlot, Cabernet Sauvignon, Zinfandel and Shiraz."><meta property="og:url" content="https://stockmansridge.com.au/"> 13<meta property="og:site_name" content="Stockman's Ridge Wines"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Stockman's Ridge Wines | Orange, Australia"> 14 <meta name="twitter:description" content="An Orange Winery and Vineyard with Cool Climate wines, offering wine tastings, food and live music. Taste and Enjoy Gruner Veltliner, Sauvignon Blanc, Pinot Gris, Chardonnay, Pinot Noir, Merlot, Cabernet Sauvignon, Zinfandel and Shiraz.">
14<script type="application/ld+json"> 15 { 16 "@context": "https://schema.org", 17 "@type": "BreadcrumbList", 18 "itemListElement": [{ 19 "@type": "ListItem", 20 "position": 1, 21 "name": "Home", 22 "item": "https://stockmansridge.com.au" 23 }] 24 } 25</script>
25<script type="application/ld+json"> 26 [ 27 { 28 "@context": "https://schema.org", 29 "@type": "WebSite", 30 "name": "Stockman\u0026#39;s Ridge Wines", 31 "url": "https:\/\/stockmansridge.com.au", 32 "potentialAction": { 33 "@type": "SearchAction", 34 "target": "https:\/\/stockmansridge.com.au\/search?q={search_term_string}", 35 "query-input": "required name=search_term_string" 36 } 37 }, 38 { 39 "@context": "https://schema.org", 40 "@type": "Organization", 41 "name": "Stockman\u0026#39;s Ridge Wines","logo": "https:\/\/stockmansridge.com.au\/cdn\/shop\/files\/Black_White_Backgroud_-_Logo_Stacked_-_2000_x_1000_px.png?v=1766114532\u0026width=2000","description": "Stockmanâs Ridge Wines is a family run winery situated in the picturesque and colourful wine region of Orange, NSW.","sameAs": ["https:\/\/facebook.com\/StockmansRidge","https:\/\/instagram.com\/StockmansRidge"],"url": "https:\/\/stockmansridge.com.au" 42 } 43 ] 44 </script>
44<style>/* Typography (heading) */ 45 @font-face { 46 font-family: "Instrument Sans"; 47 font-weight: 400; 48 font-style: normal; 49 font-display: fallback; 50 src: url("//stockmansridge.com.au/cdn/fonts/instrument_sans/instrumentsans_n4.db86542ae5e1596dbdb28c279ae6c2086c4c5bfa.woff2") format("woff2"), 51 url("//stockmansridge.com.au/cdn/fonts/instrument_sans/instrumentsans_n4.510f1b081e58d08c30978f465518799851ef6d8b.woff") format("woff"); 52} 53 54@font-face { 55 font-family: "Instrument Sans"; 56 font-weight: 400; 57 font-style: italic; 58 font-display: fallback; 59 src: url("//stockmansridge.com.au/cdn/fonts/instrument_sans/instrumentsans_i4.028d3c3cd8d085648c808ceb20cd2fd1eb3560e5.woff2") format("woff2"), 60 url("//stockmansridge.com.au/cdn/fonts/instrument_sans/instrumentsans_i4.7e90d82df8dee29a99237cd19cc529d2206706a2.woff") format("woff"); 61} 62 63/* Typography (body) */ 64 @font-face { 65 font-family: Outfit; 66 font-weight: 400; 67 font-style: normal; 68 font-display: fallback; 69 src: url("//stockmansridge.com.au/cdn/fonts/outfit/outfit_n4.387c2e2715c484a1f1075eb90d64808f1b37ac58.woff2") format("woff2"), 70 url("//stockmansridge.com.au/cdn/fonts/outfit/outfit_n4.aca8c81f18f62c9baa15c2dc5d1f6dd5442cdc50.woff") format("woff"); 71} 72 73@font-face { 74 font-family: Outfit; 75 font-weight: 700; 76 font-style: normal; 77 font-display: fallback; 78 src: url("//stockmansridge.com.au/cdn/fonts/outfit/outfit_n7.bfc2ca767cd7c6962e82c320123933a7812146d6.woff2") format("woff2"), 79 url("//stockmansridge.com.au/cdn/fonts/outfit/outfit_n7.f0b22ea9a32b6f1f6f493dd3a7113aae3464d8b2.woff") format("woff"); 80} 81 82:root { 83 /* Container */ 84 --container-max-width: 100%; 85 --container-xxs-max-width: 27.5rem; /* 440px */ 86 --container-xs-max-width: 42.5rem; /* 680px */ 87 --container-sm-max-width: 61.25rem; /* 980px */ 88 --container-md-max-width: 71.875rem; /* 1150px */ 89 --container-lg-max-width: 78.75rem; /* 1260px */ 90 --container-xl-max-width: 85rem; /* 1360px */ 91 --container-gutter: 1.25rem; 92 93 --section-vertical-spacing: 2.5rem; 94 --section-vertical-spacing-tight:2.5rem; 95 96 --section-stack-gap:2.25rem; 97 --section-stack-gap-tight:2.25rem; 98 99 /* Form settings */ 100 --form-gap: 1.25rem; /* Gap between fieldset and submit button */ 101 --fieldset-gap: 1rem; /* Gap between each form input within a fieldset */ 102 --form-control-gap: 0.625rem; /* Gap between input and label (ignored for floating label) */ 103 --checkbox-control-gap: 0.75rem; /* Horizontal gap between checkbox and its associated label */ 104 --input-padding-block: 0.65rem; /* Vertical padding for input, textarea and native select */ 105 --input-padding-inline: 0.8rem; /* Horizontal padding for input, textarea and native select */ 106 --checkbox-size: 0.875rem; /* Size (width and height) for checkbox */ 107 108 /* Other sizes */ 109 --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px)); 110 111 /* RTL support */ 112 --transform-logical-flip: 1; 113 --transform-origin-start: left; 114 --transform-origin-end: right; 115 116 /** 117 * --------------------------------------------------------------------- 118 * TYPOGRAPHY 119 * --------------------------------------------------------------------- 120 */ 121 122 /* Font properties */ 123 --heading-font-family: "Instrument Sans", sans-serif; 124 --heading-font-weight: 400; 125 --heading-font-style: normal; 126 --heading-text-transform: uppercase; 127 --heading-letter-spacing: 0.18em; 128 --text-font-family: Outfit, sans-serif; 129 --text-font-weight: 400; 130 --text-font-style: normal; 131 --text-letter-spacing: 0.02em; 132 --button-font: var(--heading-font-style) var(--heading-font-weight) var(--text-sm) / 1.65 var(--heading-font-family); 133 --button-text-transform: uppercase; 134 --button-letter-spacing: 0.18em; 135 136 /* Font sizes */--text-heading-size-factor: 1.2; 137 --text-h1: max(0.75rem, clamp(1.375rem, 1.146341463414634rem + 0.975609756097561vw, 2rem) * var(--text-heading-size-factor)); 138 --text-h2: max(0.75rem, clamp(1.25rem, 1.0670731707317074rem + 0.7804878048780488vw, 1.75rem) * var(--text-heading-size-factor)); 139 --text-h3: max(0.75rem, clamp(1.125rem, 1.0335365853658536rem + 0.3902439024390244vw, 1.375rem) * var(--text-heading-size-factor)); 140 --text-h4: max(0.75rem, clamp(1rem, 0.9542682926829268rem + 0.1951219512195122vw, 1.125rem) * var(--text-heading-size-factor)); 141 --text-h5: max(0.70rem, calc(0.875rem * var(--text-heading-size-factor))); 142 --text-h6: max(0.70rem, calc(0.75rem * var(--text-heading-size-factor))); 143 144 --text-xs: 0.875rem; 145 --text-sm: 0.9375rem; 146 --text-base: 1.0rem; 147 --text-lg: 1.125rem; 148 --text-xl: 1.25rem; 149 150 /* Rounded variables (used for border radius) */ 151 --rounded-full: 9999px; 152 --button-border-radius: 0.0rem; 153 --input-border-radius: 0.0rem; 154 155 /* Box shadow */ 156 --shadow-sm: 0 2px 8px rgb(0 0 0 / 0.05); 157 --shadow: 0 5px 15px rgb(0 0 0 / 0.05); 158 --shadow-md: 0 5px 30px rgb(0 0 0 / 0.05); 159 --shadow-block: px px px rgb(var(--text-primary) / 0.0); 160 161 /* Product card */--product-card-text-transform: uppercase;/** 162 * --------------------------------------------------------------------- 163 * OTHER 164 * --------------------------------------------------------------------- 165 */ 166 167 --checkmark-svg-url: url(//stockmansridge.com.au/cdn/shop/t/24/assets/checkmark.svg?v=125472169842701892581784287400); 168 --cursor-zoom-in-svg-url: url(//stockmansridge.com.au/cdn/shop/t/24/assets/cursor-zoom-in.svg?v=112199028865842289321784287400); 169 } 170 171 [dir="rtl"]:root { 172 /* RTL support */ 173 --transform-logical-flip: -1; 174 --transform-origin-start: right;
175 --transform-origin-end: left; 176 } 177 178 @media screen and (min-width: 700px) { 179 :root { 180 /* Typography (font size) */ 181 --text-xs: 1.0rem; 182 --text-sm: 1.0625rem; 183 --text-base: 1.125rem; 184 --text-lg: 1.25rem; 185 --text-xl: 1.375rem; 186 187 /* Spacing settings */ 188 --container-gutter: 2rem; 189 } 190 } 191 192 @media screen and (min-width: 1000px) { 193 :root { 194 /* Spacing settings */ 195 --container-gutter: 3rem; 196 197 --section-vertical-spacing: 4rem; 198 --section-vertical-spacing-tight: 4rem; 199 200 --section-stack-gap:3rem; 201 --section-stack-gap-tight:3rem; 202 } 203 }:root {/* Overlay used for modal */ 204 --page-overlay: 0 0 0 / 0.4; 205 206 /* We use the first scheme background as default */ 207 --page-background: ; 208 209 /* Product colors */ 210 --on-sale-text: 227 44 43; 211 --on-sale-badge-background: 227 44 43; 212 --on-sale-badge-text: 255 255 255; 213 --sold-out-badge-background: 239 239 239; 214 --sold-out-badge-text: 0 0 0 / 0.65; 215 --custom-badge-background: 28 28 28; 216 --custom-badge-text: 255 255 255; 217 --star-color: 28 28 28; 218 219 /* Status colors */ 220 --success-background: 212 227 203; 221 --success-text: 48 122 7; 222 --warning-background: 253 241 224; 223 --warning-text: 237 138 0; 224 --error-background: 243 204 204; 225 --error-text: 203 43 43; 226 227 /* Modal scheme */ 228 --modal-scheme-background: 255 255 255; 229 --modal-scheme-background-gradient: ; 230 --modal-scheme-text-color: 28 28 28; 231 }.color-scheme--scheme-1 { 232 /* Color settings */--accent: 28 28 28; 233 --text-color: 28 28 28; 234 --background: 239 239 239 / 1.0; 235 --background-without-opacity: 239 239 239; 236 --background-gradient: ;--border-color: 207 207 207;/* Button colors */ 237 --button-background: 28 28 28; 238 --button-text-color: 255 255 255; 239 240 /* Circled buttons */ 241 --circle-button-background: 255 255 255; 242 --circle-button-text-color: 28 28 28; 243 }.shopify-section:has(.section-spacing.color-scheme--bg-609ecfcfee2f667ac6c12366fc6ece56) + .shopify-section:has(.section-spacing.color-scheme--bg-609ecfcfee2f667ac6c12366fc6ece56:not(.bordered-section)) .section-spacing { 244 padding-block-start: 0; 245 }.color-scheme--scheme-2 { 246 /* Color settings */--accent: 28 28 28; 247 --text-color: 28 28 28; 248 --background: 255 255 255 / 1.0; 249 --background-without-opacity: 255 255 255; 250 --background-gradient: ;--border-color: 221 221 221;/* Button colors */ 251 --button-background: 28 28 28; 252 --button-text-color: 255 255 255; 253 254 /* Circled buttons */ 255 --circle-button-background: 255 255 255; 256 --circle-button-text-color: 28 28 28; 257 }.shopify-section:has(.section-spacing.color-scheme--bg-54922f2e920ba8346f6dc0fba343d673) + .shopify-section:has(.section-spacing.color-scheme--bg-54922f2e920ba8346f6dc0fba343d673:not(.bordered-section)) .section-spacing { 258 padding-block-start: 0; 259 }.color-scheme--scheme-3 { 260 /* Color settings */--accent: 255 255 255; 261 --text-color: 255 255 255; 262 --background: 28 28 28 / 1.0; 263 --background-without-opacity: 28 28 28; 264 --background-gradient: ;--border-color: 62 62 62;/* Button colors */ 265 --button-background: 255 255 255; 266 --button-text-color: 28 28 28; 267 268 /* Circled buttons */ 269 --circle-button-background: 255 255 255; 270 --circle-button-text-color: 28 28 28; 271 }.shopify-section:has(.section-spacing.color-scheme--bg-c1f8cb21047e4797e94d0969dc5d1e44) + .shopify-section:has(.section-spacing.color-scheme--bg-c1f8cb21047e4797e94d0969dc5d1e44:not(.bordered-section)) .section-spacing { 272 padding-block-start: 0; 273 }.color-scheme--scheme-4 { 274 /* Color settings */--accent: 255 255 255; 275 --text-color: 255 255 255; 276 --background: 0 0 0 / 0.0; 277 --background-without-opacity: 0 0 0; 278 --background-gradient: ;--border-color: 255 255 255;/* Button colors */ 279 --button-background: 255 255 255; 280 --button-text-color: 28 28 28; 281 282 /* Circled buttons */ 283 --circle-button-background: 255 255 255; 284 --circle-button-text-color: 28 28 28; 285 }.shopify-section:has(.section-spacing.color-scheme--bg-3671eee015764974ee0aef1536023e0f) + .shopify-section:has(.section-spacing.color-scheme--bg-3671eee015764974ee0aef1536023e0f:not(.bordered-section)) .section-spacing { 286 padding-block-start: 0; 287 }.color-scheme--scheme-338d7a4e-e542-460c-818e-cfbfd3683c9e { 288 /* Color settings */--accent: 186 136 110; 289 --text-color: 255 255 255; 290 --background: 186 136 110 / 1.0; 291 --background-without-opacity: 186 136 110; 292 --background-gradient: ;--border-color: 196 154 132;/* Button colors */ 293 --button-background: 186 136 110; 294 --button-text-color: 255 255 255; 295 296 /* Circled buttons */ 297 --circle-button-background: 186 136 110; 298 --circle-button-text-color: 28 28 28; 299 }.shopify-section:has(.section-spacing.color-scheme--bg-32561dee016124d65ede7df03e01667f) + .shopify-section:has(.section-spacing.color-scheme--bg-32561dee016124d65ede7df03e01667f:not(.bordered-section)) .section-spacing { 300 padding-block-start: 0; 301 }.color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 { 302 /* Color settings */--accent: 255 255 255; 303 --text-color: 232 232 232;
304 --background: 36 36 36 / 1.0; 305 --background-without-opacity: 36 36 36; 306 --background-gradient: ;--border-color: 65 65 65;/* Button colors */ 307 --button-background: 255 255 255; 308 --button-text-color: 36 36 36; 309 310 /* Circled buttons */ 311 --circle-button-background: 255 255 255; 312 --circle-button-text-color: 36 36 36; 313 }.shopify-section:has(.section-spacing.color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723) + .shopify-section:has(.section-spacing.color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723:not(.bordered-section)) .section-spacing { 314 padding-block-start: 0; 315 }.color-scheme--dialog { 316 /* Color settings */--accent: 28 28 28; 317 --text-color: 28 28 28; 318 --background: 255 255 255 / 1.0; 319 --background-without-opacity: 255 255 255; 320 --background-gradient: ;--border-color: 221 221 221;/* Button colors */ 321 --button-background: 28 28 28; 322 --button-text-color: 255 255 255; 323 324 /* Circled buttons */ 325 --circle-button-background: 255 255 255; 326 --circle-button-text-color: 28 28 28; 327 }@view-transition { 328 navigation: auto; 329 }</style>
330<script> 331 // This allows to expose several variables to the global scope, to be used in scripts 332 window.themeVariables = { 333 settings: { 334 showPageTransition: true, 335 pageType: "index", 336 moneyFormat: "${{amount}}", 337 moneyWithCurrencyFormat: "${{amount}} AUD", 338 currencyCodeEnabled: false, 339 cartType: "drawer", 340 staggerMenuApparition: true 341 }, 342 343 strings: { 344 addedToCart: "Added to your cart!", 345 addedToCartWithTitle: "{{ product_title }} added to cart.", 346 closeGallery: "Close gallery", 347 zoomGallery: "Zoom picture", 348 errorGallery: "Image cannot be loaded", 349 shippingEstimatorNoResults: "Sorry, we do not ship to your address.", 350 shippingEstimatorOneResult: "There is one shipping rate for your address:", 351 shippingEstimatorMultipleResults: "There are several shipping rates for your address:", 352 shippingEstimatorError: "One or more error occurred while retrieving shipping rates:", 353 next: "Next", 354 previous: "Previous" 355 }, 356 357 mediaQueries: { 358 'sm': 'screen and (min-width: 700px)', 359 'md': 'screen and (min-width: 1000px)', 360 'lg': 'screen and (min-width: 1150px)', 361 'xl': 'screen and (min-width: 1400px)', 362 '2xl': 'screen and (min-width: 1600px)', 363 'sm-max': 'screen and (max-width: 699px)', 364 'md-max': 'screen and (max-width: 999px)', 365 'lg-max': 'screen and (max-width: 1149px)', 366 'xl-max': 'screen and (max-width: 1399px)', 367 '2xl-max': 'screen and (max-width: 1599px)', 368 'motion-safe': '(prefers-reduced-motion: no-preference)', 369 'motion-reduce': '(prefers-reduced-motion: reduce)', 370 'supports-hover': 'screen and (pointer: fine)', 371 'supports-touch': 'screen and (hover: none)' 372 } 373 };</script>
vendor: 1 bytes, line 373
373
374<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 374
374
375<script type="importmap">{ 376 "imports": { 377 "vendor": "//stockmansridge.com.au/cdn/shop/t/24/assets/vendor.min.js?v=53886175772894603331784287385", 378 "theme": "//stockmansridge.com.au/cdn/shop/t/24/assets/theme.js?v=13968561988284492361784287385", 379 "photoswipe": "//stockmansridge.com.au/cdn/shop/t/24/assets/photoswipe.min.js?v=13374349288281597431784287385" 380 } 381 } 382 </script>
382 383 384
384<script type="module" src="//stockmansridge.com.au/cdn/shop/t/24/assets/vendor.min.js?v=53886175772894603331784287385"></script>
384 385
385<script type="module" src="//stockmansridge.com.au/cdn/shop/t/24/assets/theme.js?v=13968561988284492361784287385"></script>
385 386 387
387<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
387<meta name="google-site-verification" content="MOjYoG7A-J-VCgQZCscfjZoP0FP0_9ty8ZunwvrLhzs"> 388<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/27155529827/digital_wallets/dialog"> 389<meta id="in-context-paypal-metadata" data-shop-id="27155529827" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="AUD"> 390<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
390<script async="async" src="/checkouts/internal/preloads.js?locale=en-AU"></script>
390 391<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
392<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-AU&shop_id=27155529827" crossorigin="anonymous"></script>
vendor: 1 bytes, line 392
392
393<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":27155529827,"countryCode":"AU","currencyCode":"AUD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/27155529827","merchantName":"Stockman's Ridge Wines","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","jcb"],"total":{"type":"pending","label":"Stockman's Ridge Wines","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 393
393
394<script id="shopify-features" type="application/json">{"accessToken":"cde0992695f78afa830ae0c8d41f9678","betas":["rich-media-storefront-analytics"],"domain":"stockmansridge.com.au","predictiveSearch":true,"shopId":27155529827,"locale":"en"}</script>
vendor: 1 bytes, line 394
394
395<script>var Shopify = Shopify || {}; 396Shopify.shop = "stockmans-ridge-wines.myshopify.com"; 397Shopify.locale = "en"; 398Shopify.currency = {"active":"AUD","rate":"1.0"}; 399Shopify.country = "AU"; 400Shopify.theme = {"name":"Updated copy of Updated copy of Stockmans Ridge...","id":142130872419,"schema_name":"Prestige","schema_version":"11.4.0","theme_store_id":855,"role":"main"}; 401Shopify.theme.handle = "null"; 402Shopify.theme.style = {"id":null,"handle":null}; 403Shopify.cdnHost = "stockmansridge.com.au/cdn"; 404Shopify.routes = Shopify.routes || {}; 405Shopify.routes.root = "/"; 406Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 407Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 408Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 409Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 409
409
410<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 410
410
411<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 411
411
412<script> 413 window.ShopifyPay = window.ShopifyPay || {}; 414 window.ShopifyPay.apiHost = "shop.app\/pay"; 415 window.ShopifyPay.redirectState = null; 416</script>
vendor: 1 bytes, line 416
416
417<script> 418 window.Shopify = window.Shopify || {}; 419 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 420 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 421 window.Shopify.SignInWithShop.eligible = true; 422</script>
vendor: 1 bytes, line 422
422
423<script id="shop-js-analytics" type="application/json">{"pageType":"index"}</script>
vendor: 1 bytes, line 423
423
424<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 424
424
425<script type="module"> 426 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 427 428 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 429 430</script>
vendor: 1 bytes, line 430
430
431<script> 432 window.Shopify = window.Shopify || {}; 433 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 434 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"]}; 435</script>
vendor: 1 bytes, line 435
435
436<script>(function() { 437 var isLoaded = false; 438 function asyncLoad() { 439 if (isLoaded) return; 440 isLoaded = true; 441 var urls = ["https:\/\/d23dclunsivw3h.cloudfront.net\/redirect-app.js?shop=stockmans-ridge-wines.myshopify.com"]; 442 for (var i = 0; i < urls.length; i++) { 443 var s = document.createElement('script'); 444 s.type = 'text/javascript'; 445 s.async = true; 446 s.src = urls[i]; 447 var x = document.getElementsByTagName('script')[0]; 448 x.parentNode.insertBefore(s, x); 449 } 450 }; 451 if(window.attachEvent) { 452 window.attachEvent('onload', asyncLoad); 453 } else { 454 window.addEventListener('load', asyncLoad, false); 455 } 456})();</script>
vendor: 1 bytes, line 456
456
457<script id="__st">var __st={"a":27155529827,"offset":39600,"reqid":"4633f987-9958-470f-9a99-7eb095c97ef0-1791148639","pageurl":"stockmansridge.com.au\/","u":"225c014d6935","p":"home"};</script>
vendor: 1 bytes, line 457
457
458<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 458
458
459<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 459
459
460<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//stockmansridge.com.au/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 460
460
461<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 = "//stockmansridge.com.au/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>
461<script crossorigin="anonymous" defer="defer" src="//stockmansridge.com.au/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 461
461
462<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 462
462
463<script> 464 window.Shopify = window.Shopify || {}; 465 window.Shopify.MCP = window.Shopify.MCP || {}; 466 window.Shopify.MCP.enabled = true; 467 window.Shopify.MCP.shop = "stockmans-ridge-wines.myshopify.com"; 468 window.Shopify.MCP.mcpEndpoint = "https:\/\/stockmansridge.com.au\/api\/mcp"; 469 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"]}}]; 470</script>
vendor: 1 bytes, line 470
470
471<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("\/\/stockmansridge.com.au\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 472</script>
vendor: 1 bytes, line 472
472
473<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://stockmansridge.com.au/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 474</script>
vendor: 1 bytes, line 474
474
475<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 476 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); 477</script>
vendor: 1 bytes, line 477
477
478<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})}})); 479</script>
479 480<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://stockmansridge.com.au/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 481<style id="shopify-accelerated-checkout-cart"> 482 #shopify-buyer-consent { 483 margin-top: 1em; 484 display: inline-block; 485 width: 100%; 486} 487 488#shopify-buyer-consent.hidden { 489 display: none; 490} 491 492#shopify-subscription-policy-button { 493 background: none; 494 border: none; 495 padding: 0; 496 text-decoration: underline; 497 font-size: inherit; 498 cursor: pointer; 499} 500 501#shopify-subscription-policy-button::before { 502 box-shadow: none; 503} 504 505 </style> 506
507<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
507 508<link href="//stockmansridge.com.au/cdn/shop/t/24/assets/theme.css?v=159064326163571637561784287385" rel="stylesheet" type="text/css" media="all" /><!-- BEGIN app block: shopify://apps/winehub-commerce/blocks/exclusive-product-locker/c0ed40b1-a5e6-4ec9-bd28-157981fb797f --> 509 <style> 510 .wh-welcome-back { 511 font-weight: 600; 512 margin-left: 4px; 513 display: flex; 514 align-items: center; 515 font-size: 12px; 516 } 517 .wh-welcome-back-nav { 518 display: flex; 519 align-items: center; 520 justify-content: center; 521 /**width: fit-content;**/ 522 background-color: #f0f0f0; 523 color: #000; 524 padding: 10px; 525 border-radius: 0px; 526 } 527 .wh-profile-button { 528 display: flex; 529 align-content: center; 530 flex-wrap: wrap; 531 padding: 12px; 532 } 533 </style> 534
534<script> 535 const debug = false; 536 let store = `stockmans-ridge-wines.myshopify.com`; 537 let customerId = ``; 538 if (!customerId) { 539 customerId = 'none'; 540 } 541 let variantChangeHandler = null; 542 let variantChangeHandlerAdded = false; 543 let isCheckingExclusive = false; 544 let checkExclusiveTimeout = null; 545 let base_url = "https://api.winehub.io"; 546 if (store == 'winehub-demo.myshopify.com') { 547 base_url = "https://staging-api.winehub.io"; 548 } 549 550 const profileIconSVG = ` 551 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-user"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/><circle cx="12" cy="7" r="4"/></svg> 552 `; 553 554 const profileIcon = document.createElement('div'); 555 profileIcon.innerHTML = profileIconSVG; 556 profileIcon.classList.add('wh-profile-icon'); 557 558 function createProfileButton() { 559 // link to /apps/winehub 560 const profileButton = document.createElement('a'); 561 profileButton.href = `https://stockmansridge.com.au/apps/winehub`; 562 profileButton.innerHTML = profileIconSVG; 563 profileButton.classList.add('wh-profile-button'); 564 return profileButton; 565 } 566 567 function _0x569a(){const _0xc58f4b=['split','1508120wmjjay','442729kVWNed','fromCharCode','map','877644ewBLIJ','charCodeAt','toLowerCase','join','4040766MDCNcL','1069215vxBRAg','1663285ppZxuB','replace','toUpperCase','length','4371108eDXEIJ'];_0x569a=function(){return _0xc58f4b;};return _0x569a();}(function(_0x2ab4b9,_0x484b0d){const _0x4acce4=_0x382b,_0x208460=_0x2ab4b9();while(!![]){try{const _0x94c7c2=-parseInt(_0x4acce4(0x1bf))/0x1+parseInt(_0x4acce4(0x1ce))/0x2+-parseInt(_0x4acce4(0x1c7))/0x3+parseInt(_0x4acce4(0x1c2))/0x4+parseInt(_0x4acce4(0x1c8))/0x5+parseInt(_0x4acce4(0x1c6))/0x6+-parseInt(_0x4acce4(0x1cc))/0x7;if(_0x94c7c2===_0x484b0d)break;else _0x208460['push'](_0x208460['shift']());}catch(_0x5c8ee1){_0x208460['push'](_0x208460['shift']());}}}(_0x569a,0x87beb));function decodeText(_0x59c5ae){const _0x564a33=_0x382b;return _0x59c5ae['split']('\x20')['map'](_0x4b1bad=>{const _0x2f1dfb=_0x382b;return _0x4b1bad=_0x4b1bad['replace'](/@/g,'k')[_0x2f1dfb(0x1c9)](/&/g,'o'),_0x4b1bad[_0x2f1dfb(0x1cb)]&&(_0x4b1bad=_0x4b1bad[_0x2f1dfb(0x1cd)]('')[_0x2f1dfb(0x1c1)](_0x42869e=>shiftCharBack(_0x42869e,0x6))[_0x2f1dfb(0x1c5)]('')),_0x4b1bad;})[_0x564a33(0x1c5)]('\x20');}function _0x382b(_0x2e9e48,_0x203e9a){const _0x569a66=_0x569a();return _0x382b=function(_0x382b0d,_0x265b6e){_0x382b0d=_0x382b0d-0x1bf;let _0x2f09b3=_0x569a66[_0x382b0d];return _0x2f09b3;},_0x382b(_0x2e9e48,_0x203e9a);}function shiftCharBack(_0x4f415f,_0x11b39c){const _0x3c76cf=_0x382b,_0x45cee1=_0x4f415f===_0x4f415f[_0x3c76cf(0x1ca)](),_0x3dc289=_0x45cee1?0x41:0x61,_0x417199=_0x4f415f[_0x3c76cf(0x1c4)]()[_0x3c76cf(0x1c3)](0x0);if(_0x417199<0x61||_0x417199>0x7a)return _0x4f415f;return String[_0x3c76cf(0x1c0)]((_0x417199-0x61-_0x11b39c+0x1a)%0x1a+_0x3dc289);} 568 569 window.onload = async function() { 570 const currencyCode = `AUD` || 'AUD'; 571 let _json = await checkProductDiscounts(0, currencyCode, customerId); 572 let json = _json?.exclusive ?? {};
573 let json_tier = _json?.tierProduct ?? {}; 574 let json_club = _json?.clubDiscount ?? {}; 575 let json_tier_general = _json?.tierGeneral ?? {}; 576 //const json_tier = _json?.tierProduct ?? {}; 577 //const json_club = _json?.clubDiscount ?? {}; 578 //const json_tier_general = _json?.tierGeneral ?? {}; 579 //const json = _json?.exclusive ?? {}; // original exclusive 580 581 const res = loadCss(customerId, _json.css); 582 const tierName = _json?.css?.tierName ?? ''; 583 const welcomeBarEnabled = `false`; 584 let usingLegacyCustomerAccount = false; 585 if (welcomeBarEnabled == 'true'){ 586 //const loginLinks = document.querySelectorAll('a[href="/account"]') // customer is logged in 587 let loginLinks = Array.from(document.querySelectorAll('a[href]')).filter(link => 588 link.getAttribute('href').includes('/account?locale') // new customer accounts 589 ); 590 591 if (loginLinks.length == 0) { 592 usingLegacyCustomerAccount = true; 593 loginLinks = document.querySelectorAll('a[href="/account"]') // legacy customer accounts 594 } 595 596 const loginLink = loginLinks[loginLinks.length - 1] 597 //const showTier = `` 598 const renderAboveNav = `false` 599 const customerName = `` 600 601 if (loginLink && tierName) { 602 const parent = loginLink.parentElement 603 604 const div = document.createElement('div') 605 // welcome back <customer_name> you are a <tier_name> member 606 const welcomeBackMessage = `Welcome back {customer_name}, you are a {tier_name} member` 607 const chunk1 = welcomeBackMessage.split('{customer_name}')[0] ?? ''; 608 const chunk2 = welcomeBackMessage.split('{customer_name}')[1] ?? ''; 609 const chunk2_ = chunk2.split('{tier_name}')[0] 610 const welcomeBack = `${chunk1}${chunk2_}${tierName}` 611 const chunk3 = welcomeBackMessage.split('{tier_name}')[1] ?? ''; 612 if (!chunk1 || !chunk2){ 613 div.innerHTML = `Welcome back ` 614 } 615 div.innerHTML = `${welcomeBack}${chunk3}` 616 div.classList.add('wh-welcome-back') 617 618 const profileButton = createProfileButton(); 619 620 if (renderAboveNav == 'true'){ 621 const navBanner = document.createElement('div') 622 navBanner.classList.add('wh-welcome-back-nav') 623 navBanner.appendChild(div) 624 if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){ 625 navBanner.appendChild(profileButton) 626 } 627 const header = document.querySelector('header') 628 const parentHeader = header.parentElement 629 parentHeader.insertBefore(navBanner, header) 630 } else { 631 const welcomeBarPosition = `left` 632 if (welcomeBarPosition == 'left') { 633 parent.insertBefore(div, loginLink) 634 } else { 635 parent.appendChild(div) 636 } 637 638 // if the current url contains /apps/winehub do not insert the profile button 639 if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){ 640 parent.insertBefore(profileButton, loginLink); 641 } 642 } 643 } else if (loginLink && customerName?.length > 0){ 644 const parent = loginLink.parentElement 645 646 const div = document.createElement('div') 647 div.innerHTML = `Welcome back ` 648 div.classList.add('wh-welcome-back') 649 const profileButton = createProfileButton(); 650 651 if (renderAboveNav == 'true'){ 652 const navBanner = document.createElement('div') 653 navBanner.classList.add('wh-welcome-back-nav') 654 navBanner.appendChild(div) 655 if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){ 656 navBanner.appendChild(profileButton) 657 } 658 const header = document.querySelector('header') 659 const parentHeader = header.parentElement 660 parentHeader.insertBefore(navBanner, header) 661 } else { 662 const welcomeBarPosition = `left` 663 if (welcomeBarPosition == 'left') { 664 parent.insertBefore(div, loginLink) 665 } else { 666 parent.appendChild(div) 667 } 668 669 // if the current url contains /apps/winehub do not insert the profile button 670 if (!window.location.href.includes('/apps/winehub') && !usingLegacyCustomerAccount){ 671 parent.insertBefore(profileButton, loginLink); 672 } 673 } 674 675 } 676 } 677 678 //////console.log('RUNNING WH-PRODUCT-LOCKER 22 - 23-07-2024'); // use this value to determine if shopify actually updated the script 679 //////console.log('RUNNING WH-PRODUCT-LOCKER 29 - 09-08-2024'); // use this value to determine if shopify actually updated the script 680 //console.log('RUNNING WH-PRODUCT-LOCKER 31 - 2025-01-03'); // use this value to determine if shopify actually updated the script 681 console.log('RUNNING WH-PRODUCT-LOCKER 31 - 2025-12-05'); // use this value to determine if shopify actually updated the script 682 if (`true` != 'true'){ 683 //console.log('pricing display is disabled'); 684 return; 685 } 686 //////console.log('currencyFormat', currencyFormat, currencyCode); 687 688 /** Product Variants **/ 689 const items = document.querySelectorAll('form[action="/cart/add"]'); 690 if (items.length) { 691 const variantRadios = document.querySelector('variant-radios'); 692 //let id = items[0][2].getAttribute('value'); 693 //////console.log('variantRadios length', variantRadios.variantData.length) 694 const variants = variantRadios?.querySelector('script') 695 const variantScriptData = JSON.parse(variants?.innerHTML || '{}'); 696 //////console.log('variantScriptData', variantScriptData); 697 let variantCount = 0; 698 if (variantScriptData.length) { 699 variantCount = variantScriptData?.filter((variant) => variant.id).length; 700 } 701 702 //////console.log('variant count', variantCount); 703 if (variantCount) { 704 let idElement = document.querySelector('[data-variant-id]') ?? document.querySelector('[data-product-id]'); 705 let id = idElement?.getAttribute('data-variant-id') ?? idElement?.getAttribute('data-product-id'); 706 707 //////console.log('id', id); 708 709 if (!id) { 710 const formInput = items[0].querySelectorAll('input'); 711 for (let i = 0; i < formInput.length; i++) { 712 const className = formInput[i].className; 713 if (className == 'product-variant-id') { 714 id = items[0].getAttribute('value'); 715 } 716 } 717 } 718 719 //////console.log('script', variantScriptData, id, currencyCode); 720 if (variantCount > 1) { 721 // check initial variant on load 722 if (!id) { 723 id = variantScriptData[0].id; 724 } 725 726 _json = await checkProductDiscounts(id, currencyCode, customerId); 727 json = _json?.exclusive ?? {}; 728 json_tier = _json?.tierProduct ?? {}; 729 json_club = _json?.clubDiscount ?? {}; 730 json_tier_general = _json?.tierGeneral ?? {}; 731 732 checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
732ier_general); 733 734 // Remove existing listener if it exists to prevent duplicates 735 if (variantChangeHandlerAdded && variantChangeHandler) { 736 document.removeEventListener('change', variantChangeHandler); 737 variantChangeHandlerAdded = false; 738 } 739 740 // Create the handler function 741 variantChangeHandler = async function(event) { 742 // Prevent duplicate calls 743 if (isCheckingExclusive) { 744 return; 745 } 746 747 const form = event.target.closest('form[action="/cart/add"]'); 748 if (!form) return; 749 750 const id = form.querySelector('input[name="id"]')?.value; 751 if (!id) return; 752 753 // Only process radio or hidden input changes 754 if (event.target.type !== "radio" && event.target.type !== "hidden") { 755 return; 756 } 757 758 // Clear any pending timeout 759 if (checkExclusiveTimeout) { 760 clearTimeout(checkExclusiveTimeout); 761 } 762 763 // Debounce the execution 764 checkExclusiveTimeout = setTimeout(async () => { 765 if (isCheckingExclusive) { 766 return; 767 } 768 769 isCheckingExclusive = true; 770 771 try { 772 // wait for the retail price to finish doing its thing 773 await new Promise(resolve => setTimeout(resolve, 1000)); 774 775 if (items.length) { 776 const _json = await checkProductDiscounts(id, currencyCode, customerId); 777 const json = _json?.exclusive ?? {}; 778 const json_tier = _json?.tierProduct ?? {}; 779 const json_club = _json?.clubDiscount ?? {}; 780 const json_tier_general = _json?.tierGeneral ?? {}; 781 782 console.log('checking exclusive single product', id, currencyCode, json, json_tier, json_club, json_tier_general); 783 checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_tier_general); 784 } 785 } finally { 786 isCheckingExclusive = false; 787 } 788 }, 100); 789 }; 790 791 // Add the event listener only once 792 if (!variantChangeHandlerAdded) { 793 document.addEventListener('change', variantChangeHandler); 794 variantChangeHandlerAdded = true; 795 } 796 } else { 797 // single variant no options 798 if (!id) { 799 id = variantScriptData[0].id; 800 } 801 _json = await checkProductDiscounts(id, currencyCode, customerId); 802 json = _json?.exclusive ?? {}; 803 json_tier = _json?.tierProduct ?? {}; 804 json_club = _json?.clubDiscount ?? {}; 805 json_tier_general = _json?.tierGeneral ?? {}; 806 checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
806ier_general); 807 } 808 } else { 809 id = ``; 810 _json = await checkProductDiscounts(id, currencyCode, customerId); 811 json = _json?.exclusive ?? {}; 812 json_tier = _json?.tierProduct ?? {}; 813 json_club = _json?.clubDiscount ?? {}; 814 json_tier_general = _json?.tierGeneral ?? {}; 815 checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_tier_general); 816 } 817 } 818 819 /** Collections / product cards (incl. recommendations) **/ 820 ////console.log('checking collections'); 821 822 { 823 // Liquid ids are a fast path on collection pages; recommendations 824 // and "Choose options" cards are discovered from the DOM. 825 const collectionProductData = [ 826 827 ]; 828 const handleToProductId = {}; 829 for (const product of collectionProductData) { 830 if (product.handle && product.id) { 831 handleToProductId[product.handle] = product.id; 832 } 833 } 834 await priceAllProductCards(currencyCode, customerId, handleToProductId); 835 } 836 // changing filters is client side so we have to recheck on click 837 document.addEventListener('click', function(event) { 838 if (event.target.id.toLowerCase().includes('filter')){ 839 setTimeout(function () { 840 841 }, 2000) 842 } 843 }) 844 845 846 /** Integrations **/ 847 // event listener for select with class bundle-product 848 document.addEventListener('change', function(event) { 849 if (event.target.classList.contains('bundle-product')) { 850 // check if the value is a number 851 //console.log('bundle product event', event); 852 if (!isNaN(event.target.value)) { 853 //console.log('checking bundle product', event.target.value, currencyCode); 854 //checkIsExclusiveSingleProduct(event.target.value, currencyCode); 855 } 856 } 857 }); 858 } 859 860 function createLoading() { 861 const div = document.querySelector('.price'); 862 const previousPrice = div.innerHTML; 863 div.innerHTML = 'Loading...'; 864 return previousPrice; 865 } 866 867 function removeLoading(price) { 868 const div = document.querySelector('.price'); 869 div.innerHTML = price; 870 } 871 872 function createRootContainer(isTierGeneral = false) { 873 //console.log('creating root for single'); 874 let priceDiv = document.querySelector('.price__container') 875 876 // target class 877 if (!priceDiv) { 878 // try and find a potential child of an existing price container 879 // and then set the priceDiv to the parent of that child 880 // we can add more classes here if themes have non-standard class names 881 const partialClasses = [ 882 'price__regular', 883 'price__content', 884 'prodPrice', 885 'price-ui', 886 'modal_price', 887 'price-list', 888 'current-price', 889 //'metafield-rich_text_field', 890 ]; 891 892 for (const partialClass of partialClasses) { 893 const element = document.querySelector(`[class*="${partialClass}"]`); 894 if (element) { 895 priceDiv = element.parentElement; 896 break; 897 } 898 } 899 } 900 901 if (!isTierGeneral && priceDiv){ 902 // remove the rrp display 903 priceDiv.className = ''; 904 priceDiv.classList.add('price', 'price--large', 'price--on-sale', 'price--show-badge', 'wh_price__div'); 905 priceDiv.style.display = 'none'; 906 } 907 908 // target form 909 if (!priceDiv){ 910 const newDiv = document.createElement('div'); 911 priceDiv = document.querySelector('product-form'); 912 const parent = priceDiv.parentElement; 913 parent.insertBefore(newDiv, priceDiv); 914 const child = document.createElement('div'); 915 newDiv.appendChild(child); 916 priceDiv = child; 917 } 918 919 const parent = priceDiv?.parentElement; 920 const badges = parent?.querySelectorAll('.badge'); 921 // hide all badges 922 for (let i = 0; i < badges?.length; i++) { 923 //////console.log('hiding badge'); 924 badges[i].style.display = 'none'; 925 } 926 return priceDiv; 927 928 } 929 930 function createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroun
930dColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral = false) { 931 ////console.log('creating new container'); 932 const priceDiv = document.createElement('div') 933 priceDiv.className = ''; 934 priceDiv.classList.add('price', 'price--large', 'price--on-sale', 'price--show-badge'); 935 936 let priceContainer = document.createElement('div'); 937 priceDiv.appendChild(priceContainer); 938 priceContainer.className = '.price__container'; 939 940 const priceRegular = document.createElement('div'); 941 //priceContainer.appendChild(priceRegular); 942 const priceContainerInnerDiv = document.createElement('div'); 943 priceContainerInnerDiv.classList.add('wh_card__inner'); 944 priceContainer.appendChild(priceContainerInnerDiv); 945 946 const prs1 = document.createElement('span'); 947 const prs2 = document.createElement('span'); 948 const prs3 = document.createElement('span'); 949 const prs4 = document.createElement('span'); 950 priceRegular.appendChild(prs1); 951 priceRegular.appendChild(prs2); 952 priceRegular.appendChild(prs3); 953 priceRegular.appendChild(prs4); 954 955 const priceRegularSpan = priceRegular.querySelectorAll('span'); 956 957 priceRegularSpan[0].className = ''; 958 priceRegularSpan[0].classList.add('visually-hidden', 'visually-hidden--inline'); 959 priceRegularSpan[1].className = ''; 960 priceRegularSpan[1].classList.add('price-item', 'price-item--regular'); 961 962 const priceSale = document.createElement('div'); 963 priceSale.classList.add('wh_price__sale'); 964 //priceContainer.appendChild(priceSale); 965 priceContainerInnerDiv.appendChild(priceSale); 966 967 const pss1 = document.createElement('span'); 968 const pss2 = document.createElement('span'); 969 const pss3 = document.createElement('span'); 970 const pss4 = document.createElement('span'); 971 priceSale.appendChild(pss1); // hidden 972 priceSale.appendChild(pss2); // regular price with strikethrough 973 priceSale.appendChild(pss3); // hidden 974 priceSale.appendChild(pss4); // discounted price 975 976 const priceSaleSpan = priceSale.querySelectorAll('span'); 977 priceSaleSpan[0].className = ''; 978 priceSaleSpan[0].classList.add('visually-hidden', 'visually-hidden--inline'); 979 //////console.log('strikethrough enabled', strikethroughEnabled); 980 let strikethrough; 981 //if (strikethroughEnabled == false) { 982 // strikethrough = document.createElement('span'); 983 //} else { 984 // strikethrough = document.createElement('s'); 985 //} 986 const pricesEqual = regularPrice == discountedPrice; 987 strikethrough = document.createElement('span'); 988 priceSaleSpan[1].appendChild(strikethrough); 989 //////console.log('strikethroughs', strikethrough); 990 strikethrough.innerHTML = `RRP: ${regularPrice}`; 991 strikethrough.className = ''; 992 // extract percentage from discounted price 993 const hasPercentage = discountedPrice.includes('%'); 994 if (hasPercentage){ 995 const percentage = parseInt(discountedPrice.match(/\d+/g)[0]); 996 const reg = parseFloat(regularPrice.replace("$", "")); 997 const value = reg * (1 - percentage / 100); 998 //discountedPrice = `${value} (${percentage}% off)`; 999 } 1000 if (isTierGeneral){ 1001 priceSaleSpan[1].innerHTML = ''; 1002 } 1003 priceSaleSpan[2].className = ''; 1004 priceSaleSpan[2].classList.add('visually-hidden', 'visually-hidden--inline'); 1005 priceSaleSpan[3].className = ''; 1006 priceSaleSpan[3].classList.add('price-item', 'price-item--sale', 'price-item--last'); 1007 priceSaleSpan[3].innerHTML = `${discountedPrice}`; 1008 if (pricesEqual) { 1009 priceSaleSpan[3].innerHTML = ``; 1010 } 1011
1012 strikethrough.classList.add('wh_regular__price'); 1013 priceSaleSpan[3].classList.add('wh_discount__price'); 1014 1015 const spanList = priceDiv.querySelectorAll('span'); 1016 const badge = document.createElement('span'); 1017 1018 // badge disabled 1019 //priceContainer.insertBefore(badge, priceSale); 1020 1021 //const spacer_before = document.createElement("br"); 1022 //priceContainer.insertBefore(spacer_before, priceSale); 1023 1024 // show title before or after discount price 1025 1026 if (!pricesEqual) { 1027 if (title && !showBeforeDiscountPrice) { 1028 const titleDiv = document.createElement('div'); 1029 titleDiv.classList.add('wh_card__content'); 1030 const titleSpan = document.createElement('span'); 1031 titleSpan.innerHTML = title; 1032 //////console.log('title', title, showBeforeDiscountPrice); 1033 //titleSpan.style.color = blockBadgeColor ?? 'inherit'; 1034 priceContainerInnerDiv.appendChild(titleDiv); 1035 titleDiv.appendChild(titleSpan); 1036 } else if (title && showBeforeDiscountPrice) { 1037 const titleDiv = document.createElement('div'); 1038 titleDiv.classList.add('wh_card__content'); 1039 const titleSpan = document.createElement('span'); 1040 titleSpan.innerHTML = `| <b>${title}</b>`; 1041 if (isTierGeneral){ 1042 titleSpan.innerHTML = `<b>${title}</b>`; 1043 } 1044 //////console.log('title', title, showBeforeDiscountPrice); 1045 //titleSpan.style.color = blockBadgeColor ?? 'inherit'; 1046 priceSale.insertBefore(titleDiv, priceSaleSpan[2]); 1047 titleDiv.appendChild(titleSpan); 1048 } 1049 } 1050 1051 //if (expires) { 1052 // const expiresSpan = document.createElement('label'); 1053 // const daysRemaining = Math.floor((new Date(expires) - new Date()) / (1000 * 60 * 60 * 24)); 1054 // expiresSpan.innerHTML = `Days left to claim: ${daysRemaining}`; 1055 // expiresSpan.className = 'quantity__label form__label'; 1056 // priceContainer.appendChild(expiresSpan); 1057 //} 1058 1059 if (remaining) { 1060 const remainingSpan = document.createElement('label'); 1061 remainingSpan.innerHTML = `Quantity to claim: ${remaining}`; 1062 remainingSpan.className = 'quantity__label form__label'; 1063 remainingSpan.style.color = blockBadgeColor ?? 'inherit'; 1064 //priceContainer.appendChild(remainingSpan); 1065 priceContainerInnerDiv.appendChild(remainingSpan); 1066 } 1067 1068 //let text = `Exclusive` 1069 //let text = `${text} • ${title}`; 1070 let text = `${title}`; 1071 badge.innerHTML = text.replace(/"/g, '');
1072 const color = `${blockBadgeBackgroundColor}` 1073 const text_color = `${blockBadgeColor}` 1074 badge.style = `background-color: ${color.replace(/"/g, '')}; color: ${text_color.replace(/"/g, '')};`; 1075 badge.classList = 'badge price__badge-sale'; 1076 1077 priceContainer.classList.add('wh_card__wrapper'); 1078 //////console.log('price container added', priceContainer); 1079 return priceDiv; 1080 } 1081 1082 function createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass, showTitle = false, createParent = false){ 1083 let calculatedPrice = ''; 1084 if (showTitle){ 1085 title = `<b>${title}</b>`; 1086 // extract percentage from discounted price 1087 const percentage = parseInt(discountedPrice.match(/\d+/g)[0]); 1088 calculatedPrice = regularPrice * (1 - percentage / 100); 1089 } 1090 let target = document.querySelector(`[class*="${targetClass}"]`); 1091 if (createParent){ 1092 let parent = document.querySelector(`[class*="${targetClass}"]`); 1093 target = document.createElement('div'); 1094 parent.appendChild(target); 1095 } 1096 if (!target){ 1097 target = document.querySelector(`.${targetClass}`); 1098 } 1099 ////console.log('target', target); 1100 const pricesEqual = regularPrice == discountedPrice; 1101 if (pricesEqual) { 1102 if (showTitle){ 1103 target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price"></span>`; 1104 } else { 1105 target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price"></span>`; 1106 } 1107 } else { 1108 if (showTitle){ 1109 target.innerHTML = `<span class="wh_title">${title}</span><span class="wh_regular__price"><s>${regularPrice}</s><span class="wh_calculated__price">${calculatedPrice}</span></span><span class="wh_discount__price">${discountedPrice}</span>`; 1110 } else { 1111 target.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1112 } 1113 } 1114 } 1115 1116 async function checkProductDiscounts(id, currencyCode, customerId) { 1117 if (id === '') { 1118 return; 1119 } 1120 const response = await fetch(`${base_url}/store/exclusive-products/${id}/${currencyCode}/${customerId}`, { 1121 method: 'GET', 1122 headers: { 1123 'Content-Type': 'application/json', 1124 'Shopify-Site': `stockmans-ridge-wines.myshopify.com`, 1125 } 1126 }); 1127 let json = await response.json(); 1128 return json; 1129 } 1130 1131 function loadCss(customerId, json) { 1132 const fontFamily = json?.globalCss?.fontFamily ?? 'inherit'; 1133 const tierName = json?.tierName ?? ''; 1134 //const fontSize = json?.globalCss?.fontSize ?? '16px'; 1135 const fontSize = '16px'; 1136 const flexDirection = json?.globalCss?.flexDirection ?? 'row'; 1137 let color = json?.globalCss?.color ?? 'inherit'; 1138 //const fontFamily = 'gothamlight'; 1139 let style = document.createElement('style'); 1140 1141 const isDarkMode = document.querySelector('.dark-version') ?? false; 1142 if (isDarkMode) { 1143 color = '#fff'; 1144 } 1145 1146 const css = ` 1147 .wh_card__wrapper { 1148 /*position: relative;*/ 1149 display: flex !important; 1150 flex-direction: column !important; 1151 border-radius: 8px; 1152 overflow: hidden; 1153 transition: box-shadow 0.3s;
1154 margin: 0 0 20px 0 !important; 1155 text-align: center; 1156 font-stretch: semi-expanded; 1157 font-family: ${fontFamily} !important; 1158 font-size: ${fontSize} !important; 1159 color: ${color} !important; 1160 } 1161 .wh_card__wrapper:hover { 1162 /*box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);*/ 1163 } 1164 .wh_card__inner { 1165 position: relative; 1166 display: flex; 1167 flex-direction: ${flexDirection}; 1168 } 1169 .wh_card__content { 1170 display: block; 1171 padding-right: 6px; 1172 } 1173 .wh_discount__price { 1174 margin-right: 1px; 1175 font-size: ${fontSize} !important; 1176 } 1177 .wh_regular__price { 1178 margin-right: 6px; 1179 font-size: ${fontSize} !important; 1180 } 1181 .wh_price__sale { 1182 display: flex; 1183 flex-direction: row; 1184 justify-content: center; 1185 align-items: center; 1186 } 1187 `; 1188 1189 style.innerHTML = css; 1190 document.head.appendChild(style); 1191 1192 if (tierName){ 1193 return json; 1194 } 1195 } 1196 1197 function applyDiscountPriceToElement(element, json){ 1198 const discountedPrice = json.discountedPrice; 1199 const regularPrice = json.regularPrice; 1200 if (discountedPrice != regularPrice){ 1201 const priceSale = document.createElement('div'); 1202 priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1203 const parent = element.parentElement; 1204 parent.appendChild(priceSale); 1205 element.style.display = 'none'; 1206 } 1207 } 1208 1209 const productCardPartialClasses = [ 1210 'card-wrapper', 1211 'card__wrapper', 1212 'product-card product-card--', 1213 'featured-collection-item', 1214 ]; 1215 const productJsonByHandle = {}; 1216 1217 function findClosestProductCard(element) { 1218 if (!element) { 1219 return null; 1220 } 1221 for (const partialClass of productCardPartialClasses) { 1222 const card = element.closest(`[class*="${partialClass}"]`); 1223 if (card) { 1224 return card; 1225 } 1226 } 1227 return null; 1228 } 1229 1230 function getAllProductCards() { 1231 for (const partialClass of productCardPartialClasses) { 1232 const cards = document.querySelectorAll(`[class*="${partialClass}"]`); 1233 if (cards.length > 0) { 1234 return Array.from(cards); 1235 } 1236 } 1237 return []; 1238 } 1239 1240 function getHandleFromHref(href) { 1241 if (!href) { 1242 return null; 1243 } 1244 try { 1245 const pathname = new URL(href, window.location.origin).pathname; 1246 const match = pathname.match(/\/products\/([^\/?#]+)/); 1247 return match ? decodeURIComponent(match[1]) : null; 1248 } catch (e) { 1249 return null; 1250 } 1251 } 1252 1253 function getProductHandleFromCard(card) { 1254 if (!card) { 1255 return null; 1256 } 1257 const links = card.querySelectorAll('a[href*="/products/"]'); 1258 for (const link of links) { 1259 const handle = getHandleFromHref(link.href); 1260 if (handle) { 1261 return handle; 1262 } 1263 } 1264 return null; 1265 } 1266 1267 function findProductCardByHandle(handle) { 1268 if (!handle) { 1269 return null; 1270 } 1271 const hrefNeedle = `/products/${handle}`; 1272 const links = document.querySelectorAll(`a[href*="${hrefNeedle}"]`); 1273 for (const link of links) { 1274 try { 1275 const pathname = new URL(link.href, window.location.origin).pathname; 1276 if ( 1277 pathname === hrefNeedle || 1278 pathname.endsWith(hrefNeedle) || 1279 pathname.includes(`${hrefNeedle}/`) 1280 ) { 1281 const card = findClosestProductCard(link); 1282 if (card) { 1283 return card; 1284 } 1285 } 1286 } catch (e) { 1287 // ignore malformed hrefs 1288 } 1289 } 1290 return null; 1291 } 1292 1293 function getVariantOrProductIdFromCard(card) { 1294 if (!card) { 1295 return null; 1296 } 1297 const form = card.querySelector('form[action="/cart/add"]'); 1298 if (form) { 1299 const formId = form.querySelector('input[name="id"]')?.value 1300 ?? form.querySelector('input[name="product-id"]')?.value; 1301 if (formId) { 1302 return formId; 1303 } 1304 } 1305 return card.querySelector('[data-product-id]')?.getAttribute('data-product-id') 1306 ?? card.getAttribute('data-product-id') 1307 ?? null; 1308 } 1309 1310 async function resolveProductIdForCard(card, handleToProductId = {}) { 1311 const fromCard = getVariantOrProductIdFromCard(card); 1312 if (fromCard) { 1313 return fromCard; 1314 } 1315 const handle = getProductHandleFromCard(card); 1316 if (!handle) { 1317 return null; 1318 } 1319 if (handleToProductId[handle]) { 1320 return handleToProductId[handle]; 1321 } 1322 // "Choose options" cards / recommendations often have no form id â 1323 // resolve via Shopify's public product JSON. 1324 try { 1325 if (!productJsonByHandle[handle]) {
1326 productJsonByHandle[handle] = fetch(`/products/${handle}.js`) 1327 .then((response) => (response.ok ? response.json() : null)) 1328 .catch(() => null); 1329 } 1330 const productJson = await productJsonByHandle[handle]; 1331 if (productJson?.id) { 1332 return String(productJson.id); 1333 } 1334 if (productJson?.variants?.[0]?.id) { 1335 return String(productJson.variants[0].id); 1336 } 1337 } catch (e) { 1338 // ignore lookup failures 1339 } 1340 return null; 1341 } 1342 1343 async function priceAllProductCards(currencyCode, customerId, handleToProductId = {}) { 1344 const pricedCards = new WeakSet(); 1345 const cards = getAllProductCards(); 1346 for (const card of cards) { 1347 if (pricedCards.has(card)) { 1348 continue; 1349 } 1350 // Skip the main PDP price block when present on product templates 1351 if (card.closest('product-info, .product__info-wrapper, .product__info-container')) { 1352 continue; 1353 } 1354 const id = await resolveProductIdForCard(card, handleToProductId); 1355 if (!id) { 1356 continue; 1357 } 1358 const _json = await checkProductDiscounts(id, currencyCode, customerId); 1359 const json = _json?.exclusive ?? {}; 1360 const json_tier = _json?.tierProduct ?? {}; 1361 const json_club = _json?.clubDiscount ?? {}; 1362 const json_tier_general = _json?.tierGeneral ?? {};
1363 checkIsExclusiveCollection(id, currencyCode, card, json, json_tier, json_club, json_tier_general); 1364 pricedCards.add(card); 1365 } 1366 } 1367 1368 function findPriceElementInCard(card) { 1369 if (!card) { 1370 return null; 1371 } 1372 const partialClasses = [ 1373 'price__regular', 1374 'price__content', 1375 'product-card__price', 1376 'price', 1377 'modal_price', 1378 'price-list', 1379 'current-price', 1380 ]; 1381 for (const partialClass of partialClasses) { 1382 const element = card.querySelector(`[class*="${partialClass}"]`); 1383 if (element) { 1384 return element; 1385 } 1386 } 1387 return null; 1388 } 1389 1390 async function checkIsExclusiveCollection(id, currencyCode, card, json, json_tier, json_club, json_tier_general){ 1391 //let id = form.querySelector('data-product')?.getAttribute('data-product') ?? form.querySelector('data-product-id')?.getAttribute('data-product-id'); 1392 const showPricingOnCollectionPage = `true`; 1393 if (showPricingOnCollectionPage == 'false') { 1394 return; 1395 } 1396 const requestPath = window.location.pathname; 1397 if (requestPath?.includes('gift-vouchers')){ 1398 return; 1399 } 1400 // Accept a card element (preferred). Legacy numeric index is no longer used. 1401 let form = card && card.nodeType === 1 ? card : null; 1402 if (!form) { 1403 return; 1404 } 1405 1406 //let isExclusive = json.exclusive ?? false; 1407 let isExclusive = false; 1408 let isClubProduct = json_club.clubDiscount ?? false; 1409 let isTierProduct = json_tier.tierProduct ?? false; 1410 let isTierGeneral = json_tier_general.tierGeneral ?? false; 1411 1412 1413 if (isExclusive && customerId != 'none' && json.exclusiveProducts?.length > 0) { 1414 // adding badge to product card 1415 const cardInner = form.querySelector('.card__inner'); 1416 const cardContent = cardInner.querySelector('.card__content'); 1417 const cardBadge = cardContent.querySelector('.card__badge'); 1418 const newBadge = document.createElement('div'); 1419 newBadge.classList = "card__badge top left"; 1420 const spacer = document.createElement("br"); 1421 cardContent.appendChild(spacer); 1422 cardContent.appendChild(spacer); 1423 cardContent.appendChild(newBadge); 1424 const span = document.createElement("span"); 1425 span.classList = 'badge badge--bottom-left'; 1426 1427 let text = `Exclusive` 1428 span.innerHTML = text.replace(/"/g, '');
1429 const color = `${blockBadgeBackgroundColor}` 1430 const text_color = `${blockBadgeColor}` 1431 span.style = `background-color: ${color.replace(/"/g, '')}; color: ${text_color.replace(/"/g, '')};`; 1432 newBadge.appendChild(span); 1433 } else if (isTierProduct && customerId != 'none' && json_tier.tierProducts?.length > 0){ 1434 if (form){ 1435 let priceRegular = findPriceElementInCard(form); 1436 //if (priceRegular){ 1437 // const _json_tier = json_tier.tierProducts[0]; 1438 // applyDiscountPriceToElement(priceRegular, _json_tier); 1439 //} 1440 const _json_tier = json_tier.tierProducts[0]; 1441 const discountedPrice = _json_tier.discountedPrice; 1442 const regularPrice = _json_tier.regularPrice; 1443 if (discountedPrice != regularPrice){ 1444 if (priceRegular){ 1445 const priceSale = document.createElement('div'); 1446 priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1447 const parent = priceRegular.parentElement; 1448 //parent.appendChild(priceSale); 1449 //priceRegular.style.display = 'none'; 1450 } else { 1451 ////console.log('price regular not found'); 1452 } 1453 } 1454 } 1455 } else if (isClubProduct && customerId != 'none'){ 1456 if (form){ 1457 let priceRegular = findPriceElementInCard(form); 1458 //if (priceRegular){ 1459 // applyDiscountPriceToElement(priceRegular, json_club); 1460 //} 1461 const discountedPrice = json_club.discountedPrice; 1462 const regularPrice = json_club.regularPrice; 1463 if (discountedPrice != regularPrice){ 1464 if (priceRegular){ 1465 const priceSale = document.createElement('div'); 1466 priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1467 const parent = priceRegular.parentElement; 1468 parent.appendChild(priceSale); 1469 priceRegular.style.display = 'none'; 1470 } else { 1471 ////console.log('price regular not found'); 1472 } 1473 } 1474 } 1475 } else if (isTierGeneral && customerId != 'none'){ 1476 // only showing one for logged in customer currently on collections page 1477 if (form){ 1478 let priceRegular = findPriceElementInCard(form); 1479 //if (priceRegular){ 1480 // applyDiscountPriceToElement(priceRegular, json_tier_general.tierGeneralObj[0]); 1481 //} 1482 const _json_tier_general = json_tier_general.tierGeneralObj[0]; 1483 if (!_json_tier_general) { 1484 return; 1485 } 1486 const discountedPrice = _json_tier_general.discountedPrice; 1487 const regularPrice = _json_tier_general.regularPrice; 1488 if (discountedPrice != regularPrice){ 1489 if (priceRegular){ 1490 const storeUrl = `stockmans-ridge-wines.myshopify.com`; 1491 const priceSale = document.createElement('div'); 1492 priceSale.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1493 const parent = priceRegular.parentElement; 1494 if (storeUrl == decodeText('qu@xt@x-c&[email protected]&le.ius')){ 1495 // as parent 1496 priceRegular.innerHTML = `<span class="wh_regular__price"><s>${regularPrice}</s></span><span class="wh_discount__price">${discountedPrice}</span>`; 1497 } else { 1498 // as child 1499 parent.appendChild(priceSale); 1500 priceRegular.style.display = 'none'; 1501 } 1502 } else { 1503 ////console.log('price regular not found'); 1504 } 1505 } 1506 } 1507 } 1508 }; 1509 1510 async function checkIsExclusiveSingleProduct(id, currencyCode, json, json_tier, json_club, json_t
1510ier_general) { 1511 if (id == '') { 1512 return; 1513 } 1514 //////console.log('checking single'); 1515 //let json = { 1516 // "exclusive": true, 1517 // "exclusiveProducts": [ 1518 // { 1519 // "regularPrice": "$100.00", 1520 // "discountedPrice": "$50.00", 1521 // "title": "Silver Tier", 1522 // "remaining": 5, 1523 // "expires": "2024-03-31T23:59:59Z" 1524 // }, 1525 // { 1526 // "regularPrice": "$200.00", 1527 // "discountedPrice": "$100.00", 1528 // "title": "Gold Tier", 1529 // "remaining": 10, 1530 // "expires": "2021-12-31T23:59:59Z" 1531 // } 1532 // ] 1533 //} 1534 1535 if (!debug) { 1536 } 1537 1538 //json = await checkId(id, currencyCode, customerId); // exclusive 1539 //json_tier = await checkTierProduct(id, currencyCode, customerId); // tier 1540 //////console.log('checking club with id', id); 1541 //json_club = await checkClubProduct(id, currencyCode, customerId); // club 1542 //json_tier_general = await checkTierGeneral(id, currencyCode, customerId); // tier general 1543 1544 let isExclusive = json.exclusive ?? false; 1545 let isTierProduct = json_tier.tierProduct ?? false; 1546 let isClubProduct = json_club.clubDiscount ?? false; 1547 let isTierGeneral = json_tier_general.tierGeneral ?? false; 1548 //let isTierGeneral = false; 1549 let globalRoot = null; 1550 1551 //////console.log('isExclusive', isExclusive, 'isTierProduct', isTierProduct, 'isClubProduct', isClubProduct); 1552 1553 // we either display the exclusive products or the tier products 1554 if (isExclusive && customerId != 'none' && json.exclusiveProducts?.length > 0) { 1555 const exclusiveProducts = json.exclusiveProducts; 1556 1557 // return if exclusive products is empty 1558 1559 if (exclusiveProducts?.length == 0) { 1560 return; 1561 } 1562 1563 /** Creating the root price div **/ 1564 1565 const priceDiv = createRootContainer(null); 1566 globalRoot = priceDiv; 1567 //////console.log('root created'); 1568 1569 /** Creating price divs for each exclusive price **/ 1570 1571 for (let i = 0; i < exclusiveProducts.length; i++) { 1572 const ep = exclusiveProducts[i]; 1573 const regularPrice = ep.regularPrice; 1574 const discountedPrice = ep.discountedPrice; 1575 let title = ep.title; 1576 const expires = ep.expires; 1577 const remaining = ep.remaining; 1578 const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1579 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1580 const blockBadgeColor = ep.blockBadgeColor; 1581 const strikethroughEnabled = ep.strikethroughEnabled; 1582 const showBeforeDiscountPrice = ep.showBeforeDiscountPrice ?? true; 1583 title = blockBadgeText; 1584 const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice); 1585 const parent = priceDiv.parentElement; 1586 parent.appendChild(newPriceDiv); 1587 } 1588 1589 } else if (isTierProduct && json_tier.tierProducts?.length > 0) { 1590 const tierProducts = json_tier.tierProducts; 1591 const priceDiv = createRootContainer(null); 1592 globalRoot = priceDiv; 1593 //////console.log('root created'); 1594 1595 if (tierProducts?.length == 0) { 1596 return; 1597 } 1598 1599 for (let i = 0; i < tierProducts.length; i++) { 1600 const index = i; 1601 const ep = tierProducts[i]; 1602 const regularPrice = ep.regularPrice; 1603 const discountedPrice = ep.discountedPrice; 1604 let title = ep.title; 1605 const expires = ep.expires; 1606 const remaining = ep.remaining; 1607 const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1608 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1609 const blockBadgeColor = ep.blockBadgeColor; 1610 const strikethroughEnabled = ep.strikethroughEnabled ?? false; 1611 const showBeforeDiscountPrice = ep.showBeforeDiscountPrice ?? true; 1612 title = blockBadgeText; 1613 const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice); 1614 const parent = priceDiv.parentElement; 1615 parent.appendChild(newPriceDiv); 1616 //////console.log('appended latest 6', newPriceDiv); 1617 } 1618 } else if (isClubProduct){ 1619 //const clubProducts = json_club.clubProducts; 1620 const storeUrl = `stockmans-ridge-wines.myshopify.com`; 1621 if (storeUrl == 'ipsvh1-0m.myshopify.com'){ // hotifx, remove this line once option is configurable 1622 const ep = json_club; 1623 const regularPrice = ep.regularPrice; 1624 const discountedPrice = ep.discountedPrice; 1625 let title = ep.title ?? ''; 1626 const expires = null; 1627 const remaining = null; 1628 const blockBadgeText = ep.blockBadgeText ?? `CLUB PRICE:`;
1629 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1630 const blockBadgeColor = ep.blockBadgeColor; 1631 const strikethroughEnabled = ep.strikethroughEnabled ?? false; 1632 const showBeforeDiscountPrice = true; // not needed for tier general 1633 const targetClass = 'current-price'; 1634 createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass); 1635 return; 1636 } 1637 const priceDiv = createRootContainer(null); 1638 globalRoot = priceDiv; 1639 //////console.log('root created'); 1640 const regularPrice = json_club.regularPrice; 1641 const discountedPrice = json_club.discountedPrice; 1642 let title = json_club.title ?? ''; 1643 const expires = null; 1644 const remaining = null; 1645 const blockBadgeText = json_club.blockBadgeText ?? `CLUB PRICE:`;
1646 const blockBadgeBackgroundColor = json_club.blockBadgeBackgroundColor ?? '#f8f8f8'; 1647 const blockBadgeColor = json_club.blockBadgeColor ?? '#000'; 1648 const strikethroughEnabled = json_club.strikethroughEnabled ?? false; 1649 const showBeforeDiscountPrice = json_club.showBeforeDiscountPrice ?? true; 1650 title = blockBadgeText; 1651 const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice); 1652 const parent = priceDiv.parentElement; 1653 parent.appendChild(newPriceDiv); 1654 //////console.log('appended latest 10', newPriceDiv); 1655 } 1656 1657 if (isTierGeneral && !isTierProduct && !isClubProduct && !isExclusive){ 1658 const storeUrl = `stockmans-ridge-wines.myshopify.com`; 1659 const tierGeneral = json_tier_general.tierGeneralObj; 1660 if (storeUrl == decodeText('qu@xt@x-c&[email protected]&le.ius')){ // hotifx, remove this line once option is configurable 1661 for (let i = 0; i < tierGeneral.length; i++) { 1662 const index = i; 1663 const ep = tierGeneral[i]; 1664 const regularPrice = ep.regularPrice; 1665 const discountedPrice = ep.discountedPrice; 1666 let title = ep.title ?? `Tier ${index + 1}`; 1667 const expires = ep.expires; 1668 const remaining = ep.remaining; 1669 const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1670 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1671 const blockBadgeColor = ep.blockBadgeColor; 1672 const strikethroughEnabled = ep.strikethroughEnabled ?? false; 1673 const showBeforeDiscountPrice = true; // not needed for tier general 1674 //////console.log('tier general', title); 1675 const targetClass = 'prodPrice'; 1676 createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass); 1677 } 1678 return; 1679 } 1680 // LOAD THE CHANGE 1681 if (storeUrl == ''){ // hotifx, remove this line once option is configurable 1682 for (let i = 0; i < tierGeneral.length; i++) { 1683 const index = i; 1684 const ep = tierGeneral[i]; 1685 const regularPrice = ep.regularPrice; 1686 const discountedPrice = ep.discountedPrice; 1687 let title = ep.title ?? `Tier ${index + 1}`; 1688 const expires = ep.expires; 1689 const remaining = ep.remaining; 1690 const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1691 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1692 const blockBadgeColor = ep.blockBadgeColor; 1693 const strikethroughEnabled = ep.strikethroughEnabled ?? false; 1694 const showBeforeDiscountPrice = true; // not needed for tier general 1695 //////console.log('tier general', title); 1696 const targetClass = '!mt-[--gutter-sm]'; 1697 const showTitle = true; 1698 createTargetedPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral, targetClass, showTitle); 1699 } 1700 return; 1701 } 1702 let priceDiv = null; 1703 if (!globalRoot){ 1704 priceDiv = createRootContainer(true); 1705 } else { 1706 priceDiv = globalRoot; 1707 } 1708 1709 if (tierGeneral?.length == 0) { 1710 return; 1711 } 1712 1713 for (let i = 0; i < tierGeneral.length; i++) { 1714 const index = i; 1715 const ep = tierGeneral[i]; 1716 const regularPrice = ep.regularPrice; 1717 const discountedPrice = ep.discountedPrice; 1718 let title = ep.title ?? `Tier ${index + 1}`; 1719 const expires = ep.expires; 1720 const remaining = ep.remaining; 1721 const blockBadgeText = ep.blockBadgeText ?? `MEMBER'S PRICE:`;
1722 const blockBadgeBackgroundColor = ep.blockBadgeBackgroundColor; 1723 const blockBadgeColor = ep.blockBadgeColor; 1724 const strikethroughEnabled = ep.strikethroughEnabled ?? false; 1725 const showBeforeDiscountPrice = true; // not needed for tier general 1726 //////console.log('tier general', title); 1727 const newPriceDiv = createNewPriceContainer(regularPrice, discountedPrice, title, expires, remaining, blockBadgeColor, blockBadgeBackgroundColor, blockBadgeText, strikethroughEnabled, showBeforeDiscountPrice, isTierGeneral); 1728 const parent = priceDiv.parentElement; 1729 parent.appendChild(newPriceDiv); 1730 //////console.log('appended latest 12', newPriceDiv); 1731 } 1732 1733 //console.log('priceDiv', priceDiv); 1734 } 1735 } 1736 </script>
1736 1737 1738 1739 1740<!-- END app block --><!-- BEGIN app block: shopify://apps/winehub-commerce/blocks/customer-portal-redirect/c0ed40b1-a5e6-4ec9-bd28-157981fb797f --><!-- Winehub Customer Portal Redirect --> 1741<!-- Current Path: / --> 1742<!-- END app block --><!-- BEGIN app block: shopify://apps/sc-easy-redirects/blocks/app/be3f8dbd-5d43-46b4-ba43-2d65046054c2 --> 1743 <!-- common for all pages --> 1744 1745 1746 1747
1747<script src="https://cdn.shopify.com/extensions/019feafe-a942-7fff-96d6-964177dec909/sc-easy-redirects-16/assets/esc-redirect-app.js" async></script>
1747 1748 1749 1750 1751 1752 1753 1754<!-- END app block --><!-- BEGIN app block: shopify://apps/social-login/blocks/automatic_login/8de41085-9237-4829-86d0-25e862482fec --> 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 <!-- BEGIN app snippet: init -->
1765<script>var SOCIAL_LOGIN_CUSTOMER_LOGGED_IN = false;window.InitSocialLogin=function() {new SocialLoginNamespace({"id": 11705, "ssl_host": "https://oneclicksociallogin.devcloudsoftware.com", "proxy_subpath": "oneclick", "render_appblock": true,"cache_key": "11_29_2025_22_59_31","theme_install": true,"has_special_css": false,"disable_multiple_forms": true,"exclude_from_auto_install_selector": "","append_inside_form": false,"automatic_install_position": "below","include_jquery": true,"iframe_html": `<iframe 1766id="one-click-social-login-buttons<<iframe_container_id>>" class="one-click-social-login-buttons" 1767frameBorder='0' 1768style=' margin-top: 10px; width: 100%; overflow: hidden;' 1769data-default_style='margin-top: 10px; overflow: hidden; width: 100%;' 1770allowtransparency='yes' src='https://oneclicksociallogin.devcloudsoftware.com/api/socialbuttons/?cache_key=11_29_2025_22_59_31&shop=stockmans-ridge-wines.myshopify.com&popup_type=¤t_url=<<current_url>>&iframe_id=<<iframe_id>>&button_font_color=<<button_font_color>>&terms_font_color=<<terms_font_color>>&background_color=<<background_color>>&lang=<<current_lang>>&channel=<<channel>>' 1771 title="Social Login Buttons"> 1772</iframe>`,"share_bar_template": ``,"login_popup_template": ``,"register_popup_template": ``,"google_onetap_iframe": ` 1773<iframe 1774id="one-click-social-google-one-tap" src="https://oneclicksociallogin.devcloudsoftware.com/api/googleonetap/?shop_id=11705¤t_url=<<current_url>>¤t_domain=<<current_domain>>" allowtransparency='yes' frameBorder='0' style="height: 300px; width: 400px; z-index: 9999999; position: fixed;<<css>>" title="Social Login Google One Tap"> 1775</iframe> 1776 1777 1778`,"redirect_to_previous_page": false,"redirect_to_current_page": true,"redirect_to_custom_page": false,"redirect_to_custom_page_url": "","popup_login_enabled": false,"customer": false,"popup_dont_allow_closing": false,"show_popup_delay": 0,"google_one_tap_enabled": true,"social_login_popup_dont_connect_events": false,"show_popup_on_arrive": false,"show_popup_only_once": false,"automatic_install": true,"search_form_in_all_pages": false,"share_bar_enabled": false,"redirect_to_enter_password_if_error": true,"share_bar_all_pages": true,"share_bar_products_enabled": true,"share_bar_collections_enabled": true,"find_errors_using_internal_var": true,"myshopify_domain": "stockmans-ridge-wines.myshopify.com","domain": "stockmansridge.com.au","disable_google_one_tap_mobile": false,"popup_dont_show_in_mobile": false,"debug": false,"appblock_width": "100","search_form_url_regex": false,"code_integration": false,"logged_in_request": false,"popup_login_selector": false,"popup_register_selector": false,"lang": "en","hide_button_text_on_mobile":false,"init_on_page_load": false,"load_in_all_pages":true, "wait_for_element": null, "wait_for_visible_element": null, "wait_for_not_visible_element": null, "buttons_no_iframe": false, "privacy_policy_type": "displayed_below", "privacy_policy_url": "http://oneclicksociallogin.devcloudsoftware.com/privacy/policy/","privacy_policy_text": "","customer_accepts_marketing_selector": false,"customer_accepts_marketing_selector_position": "below","should_confirm_privacy_policy": false,"type_theme": "buttons","customer_accepts_marketing_selector_text": " Subscribe to the Newsletter","facebook_enabled": true,"google_enabled": true,"apple_enabled": true,"amazon_enabled": false,"linkedin_enabled": false,"twitter_enabled": false,"instagram_enabled": false,"meetup_enabled": false,"spotify_enabled": false,"hotmail_enabled": false,"yahoo_enabled": false,"pinterest_enabled": false,"steam_enabled": false,"buttons_type": "square_right","buttons_text_align": "left","use_new_twitter_logo": false,"buttons_no_iframe":false,"use_google_official_button": false,"popup_link_replace_onclick": false,"render_google_button_text": "Google Login","render_google_button_register_text": "Google Login","render_apple_button_text": "Apple Login","render_apple_button_register_text": "Apple Login","render_amazon_button_text": "","render_amazon_button_register_text": "","render_facebook_button_text": "Facebook Login","render_facebook_button_register_text": "Facebook Login","render_linkedin_button_text": "","render_linkedin_button_register_text": "","render_twitter_button_text": "","render_twitter_button_register_text": "","render_instagram_button_text": "","render_instagram_button_register_text": "","render_meetup_button_text": "","render_meetup_button_register_text": "","render_hotmail_button_text": "","render_hotmail_button_register_text": "","render_yahoo_button_text": "","render_yahoo_button_register_text": "","render_pinterest_button_text": "","render_pinterest_button_register_text": "","render_steam_button_text": "","render_steam_button_register_text": "","render_spotify_button_text": "","render_spotify_button_register_text": "","number_of_columns": 2,"columns_width": 50,"enable_box": true,"extra_login_params": null, "custom_js":function(socialLogin){} }).socialLogin.init();};if (typeof window.loadedSocialLoginLibrary == 'undefined') {window.loadedSocialLoginLibrary = true;var script = document.createElement('script');script.setAttribute("src", "https://cdn.shopify.com/extensions/019e02f3-bc46-7615-b6f6-022c7129861b/one-click-social-login-137/assets/social_login.min.js");script.setAttribute("id", "social-login-script"); };script.onload = function() { window.InitSocialLogin();}; script.onerror = function () { }; document.head.appendChild(script);</script>
1778 1779<style></style><!-- END app snippet --> 1780 1781 1782 1783
1783<script src="https://cdn.shopify.com/extensions/019e02f3-bc46-7615-b6f6-022c7129861b/one-click-social-login-137/assets/behavior_tracker.min.js" defer></script>
1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806
1806<script async src="https://static.klaviyo.com/onsite/js/S6wAB8/klaviyo.js?company_id=S6wAB8"></script>
1806 1807
1807<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>
1807 1808 1809 1810 1811 1812 1813 1814
1814<script> 1815 window.klaviyoReviewsProductDesignMode = false 1816 </script>
1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826<!-- END app block --><link href="https://cdn.shopify.com/extensions/019e02f3-bc46-7615-b6f6-022c7129861b/one-click-social-login-137/assets/social_login.css" rel="stylesheet" type="text/css" media="all">
1827<script src="https://cdn.shopify.com/extensions/01a0ec4b-fc8c-7857-9dee-9d19df15397a/appointo-103/assets/appointo_bundle.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1827
1827
1828<script src="https://cdn.shopify.com/extensions/01a08d12-a50f-75bf-b4af-76fa0f2e317e/page-speed-optimizer-6/assets/shopify-speed.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 1828
1828
1829<script src="https://cdn.shopify.com/extensions/01a0f37a-9dca-75e2-9f67-c659a79ae8f9/klaviyo-email-marketing-75/assets/app.js" type="text/javascript" defer="defer"></script>
1829 1830<link href="https://cdn.shopify.com/extensions/01a0f37a-9dca-75e2-9f67-c659a79ae8f9/klaviyo-email-marketing-75/assets/app.css" rel="stylesheet" type="text/css" media="all"> 1831<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1832<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: 27155529827,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "index"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 1832
1832
1833<script> 1834 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 1835</script>
vendor: 1 bytes, line 1835
1835
1836<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
1836).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 27155529827,storefrontBaseUrl: "https://stockmansridge.com.au",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://stockmansridge.com.au/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"1259929699","configuration":"{\"accountID\":\"S6wAB8\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"336560227","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\",\\\"GT-PLVQS6N\\\"],\\\"target_country\\\":\\\"AU\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/rGAcCIP5ssoBEK-V6tED\\\"]},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/I1UnCIb5ssoBEK-V6tED\\\"]},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-P2Z592Q11W\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/3FehCP34ssoBEK-V6tED\\\",\\\"MC-9XS5K2WEXJ\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-P2Z592Q11W\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/ztp1CPr4ssoBEK-V6tED\\\",\\\"MC-9XS5K2WEXJ\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/MStaCPf4ssoBEK-V6tED\\\",\\\"MC-9XS5K2WEXJ\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-P2Z592Q11W\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/-OECCIn5ssoBEK-V6tED\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-P2Z592Q11W\\\",\\\"AW-976915119\\\/Dvd0CID5ssoBEK-V6tED\\\"]},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-P2Z592Q11W\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]}
1836,{"id":"150700131","configuration":"{\"pixel_id\":\"1077833295885926\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"64815203","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["MARKETING"],"name":"Meta pixel (migrated)"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Stockman's Ridge Wines","paymentSettings":{"currencyCode":"AUD"},"myshopifyDomain":"stockmans-ridge-wines.myshopify.com","countryCode":"AU","storefrontUrl":"https:\/\/stockmansridge.com.au"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"6873199214691","handle":"bubbly-sweet-fiz-2022","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40191874334819","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7892905951331","handle":"storm-blanc-de-noir-2022","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43757832962147","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7859547963491","handle":"rider-pinot-gris-2025","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43599335915619","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7570012962915","handle":"rider-gruner-veltliner-2023","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42530643542115","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6969844662371","handle":"signature-gruner-veltliner-2022","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"40532815511651","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7768336171107","handle":"primrose-2024","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43298414854243","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7855456616547","handle":"signature-zinfandel-2024","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43587940319331","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7177114288227","handle":"signature-left-bank-2022","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41277210394723","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://stockmansridge.com.au/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"142130872419","themeStoreId":"855","themePublished":"true","eventMetadataId":"a7cfdb16-c78c-4cc2-902a-60079dacd8e6","pageType":"home","shopId":"27155529827","storefrontBaseUrl":"https:\/\/stockmansridge.com.au","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
1836<script> 1837 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 1838 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 1839 window.ShopifyAnalytics.meta.currency = 'AUD'; 1840 var meta = {"page":{"pageType":"home","requestId":"4633f987-9958-470f-9a99-7eb095c97ef0-1791148639"}}; 1841 for (var attr in meta) { 1842 window.ShopifyAnalytics.meta[attr] = meta[attr]; 1843 } 1844</script>
vendor: 1 bytes, line 1844
1844
1845<script class="analytics"> 1846 (function () { 1847 var customDocumentWrite = function(content) { 1848 var jquery = null; 1849 1850 if (window.jQuery) { 1851 jquery = window.jQuery; 1852 } else if (window.Checkout && window.Checkout.$) { 1853 jquery = window.Checkout.$; 1854 } 1855 1856 if (jquery) { 1857 jquery('body').append(content); 1858 } 1859 }; 1860 1861 var hasLoggedConversion = function(token) { 1862 if (token) { 1863 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 1864 } 1865 return false; 1866 } 1867 1868 var setCookieIfConversion = function(token) { 1869 if (token) { 1870 var twoMonthsFromNow = new Date(Date.now()); 1871 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 1872 1873 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 1874 } 1875 } 1876 1877 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 1878 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 1879 if (trekkie.integrations) { 1880 return; 1881 } 1882 trekkie.methods = [ 1883 'identify', 1884 'page', 1885 'ready', 1886 'track', 1887 'trackForm', 1888 'trackLink' 1889 ]; 1890 trekkie.factory = function(method) { 1891 return function() { 1892 var args = Array.prototype.slice.call(arguments); 1893 args.unshift(method); 1894 trekkie.push(args); 1895 if (method == 'track' || method == 'page') { 1896 var pageUrl; 1897 try { 1898 pageUrl = window.location.href; 1899 } catch (e) {} 1900 var pageReferrer; 1901 try { 1902 pageReferrer = document.referrer; 1903 } catch (e) {} 1904 try { 1905 if (window.__TREKKIE_SHIM_QUEUE == null) { 1906 window.__TREKKIE_SHIM_QUEUE = []; 1907 } 1908 window.__TREKKIE_SHIM_QUEUE.push({ 1909 from: 'trekkie-stub', 1910 method: method, 1911 args: args.slice(1), 1912 pageContext: { 1913 url: pageUrl, 1914 referrer: pageReferrer 1915 } 1916 }); 1917 } catch (e) { 1918 // no-op 1919 } 1920 } 1921 return trekkie; 1922 }; 1923 }; 1924 for (var i = 0; i < trekkie.methods.length; i++) { 1925 var key = trekkie.methods[i]; 1926 trekkie[key] = trekkie.factory(key); 1927 } 1928 trekkie.load = function(config) { 1929 trekkie.config = config || {}; 1930 trekkie.config.initialDocumentCookie = document.cookie; 1931 var first = document.getElementsByTagName('script')[0]; 1932var script = document.createElement('script'); 1933script.type = 'text/javascript'; 1934script.onerror = function(e) { 1935 var scriptFallback = document.createElement('script'); 1936 scriptFallback.type = 'text/javascript'; 1937 scriptFallback.onerror = function(error) { 1938 var Monorail = { 1939 produce: function produce(monorailDomain, schemaId, payload) { 1940 var currentMs = new Date().getTime(); 1941 var event = { 1942 schema_id: schemaId, 1943 payload: payload, 1944 metadata: { 1945 event_created_at_ms: currentMs, 1946 event_sent_at_ms: currentMs 1947 } 1948 }; 1949 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 1950 }, 1951 sendRequest: function sendRequest(endpointUrl, payload) { 1952 // Try the sendBeacon API 1953 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 1954 var blobData = new window.Blob([payload], { 1955 type: 'text/plain' 1956 }); 1957 1958 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 1959 return true; 1960 } // sendBeacon was not successful 1961 1962 } // XHR beacon 1963 1964 var xhr = new XMLHttpRequest(); 1965 1966 try { 1967 xhr.open('POST', endpointUrl); 1968 xhr.setRequestHeader('Content-Type', 'text/plain'); 1969 xhr.send(payload); 1970 } catch (e) { 1971 console.log(e); 1972 } 1973 1974 return false; 1975 }, 1976 isIos12: function isIos12() { 1977 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 1978 } 1979 }; 1980 Monorail.produce('monorail-edge.shopifysvc.com', 1981 'trekkie_storefront_load_errors/1.1', 1982 {shop_id: 27155529827, 1983 theme_id: 142130872419, 1984 app_name: "storefront", 1985 context_url: window.location.href, 1986 source_url: "//stockmansridge.com.au/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 1987 1988 }; 1989 scriptFallback.async = true; 1990 scriptFallback.src = '//stockmansridge.com.au/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1991 first.parentNode.insertBefore(scriptFallback, first); 1992}; 1993script.async = true; 1994script.src = '//stockmansridge.com.au/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 1995first.parentNode.insertBefore(script, first); 1996 1997 }; 1998 trekkie.load( 1999 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":27155529827,"isMerchantRequest":null,"themeId":142130872419,"themeCityHash":"17879575983383149293","contentLanguage":"en","currency":"AUD","eventMetadataId":"a7cfdb16-c78c-4cc2-902a-60079dacd8e6"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 2000 ); 2001 2002 var loaded = false;
2003 trekkie.ready(function() { 2004 if (loaded) return; 2005 loaded = true; 2006 2007 window.ShopifyAnalytics.lib = window.trekkie; 2008 2009 var originalDocumentWrite = document.write; 2010 document.write = customDocumentWrite; 2011 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 2012 document.write = originalDocumentWrite; 2013 2014 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 2015 var token = match? match[1]: undefined; 2016 if (!hasLoggedConversion(token)) { 2017 setCookieIfConversion(token); 2018 2019 } 2020 }); 2021 2022 window.ShopifyAnalytics.lib.page(null,{"pageType":"home","requestId":"4633f987-9958-470f-9a99-7eb095c97ef0-1791148639","shopifyEmitted":true}); 2023 2024 var eventsListenerScript = document.createElement('script'); 2025 eventsListenerScript.async = true; 2026 eventsListenerScript.src = "//stockmansridge.com.au/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 2027 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 2028})();</script>
2028 2029
2029<script> 2030 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 2031 window.ga = function ga() { 2032 (window.ga.q = window.ga.q || []).push(arguments); 2033 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 2034 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 2035 } 2036 console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information."); 2037 }; 2038 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 2039 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 2040 } 2041 } 2042</script>
vendor: 1 bytes, line 2042
2042
2043<script 2044 defer 2045 src="https://stockmansridge.com.au/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 2046 data-application="storefront-renderer" 2047 data-shop-id="27155529827" 2048 data-render-region="gcp-us-central1" 2049 data-page-type="index" 2050 data-theme-instance-id="142130872419" 2051 data-theme-name="Prestige" 2052 data-theme-version="11.4.0" 2053 data-monorail-region="shop_domain" 2054 data-resource-timing-sampling-rate="10" 2055 data-shs="true" 2056 data-shs-beacon="true" 2057 data-shs-export-with-fetch="true" 2058 data-shs-logs-sample-rate="1" 2059 data-shs-beacon-endpoint="https://stockmansridge.com.au/api/collect" 2060></script>
vendor: 1 bytes, line 2060
2060
2061<script src="https://cdn.shopify.com/storefront/web-components/account.js" type="module" crossorigin fetchpriority="low" async></script>
2061<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"27155529827","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Sign in or create account"},{"key":"account_menu.signed_out_state.section_divider","value":"More ways to sign in"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"Email"},{"key":"account_menu.signed_out_state.orders_button","value":"Orders"},{"key":"account_menu.signed_out_state.profile_button","value":"Profile"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Sign in with Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continue with Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continue with Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Email me with news and offers"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Hi, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Account"},{"key":"account_menu.signed_in_state.orders_button","value":"Orders"},{"key":"account_menu.signed_in_state.profile_button","value":"Profile"},{"key":"account_menu.location_picker.sheet_title","value":"Locations"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Search"},{"key":"account_menu.aria_labels.close_menu","value":"Close menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Back to main menu from {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, opens submenu"},{"key":"account_menu.aria_labels.loading_menu","value":"Loading menu"},{"key":"account_menu.aria_labels.account","value":"Account"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Sign in with email"},{"key":"account_menu.aria_labels.sign_in","value":"Sign in"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":false,"marketingConsentSigninEnabled":true,"marketingConsentPreselected":true},"visitor":{"country":"AU","language":"en"}}</script>
2061 2062<meta name="shopify-y" content="d797657c-d2bc-45cc-ac0b-7616d928eb51" data-expiration="1822706239000"><meta name="shopify-s" content="ce632d8c-021c-453f-a04b-19e36e8c4779" data-expiration="1791150439000"><meta name="new-cookie-storage-activated" content="t"> 2063</head> 2064 2065 2066 2067 <body class="features--button-transition features--zoom-image color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397"><template id="drawer-default-template"> 2068 <div part="base"> 2069 <div part="overlay"></div> 2070 2071 <div part="content"> 2072 <header part="header"> 2073 <slot name="header"></slot> 2074 2075 <dialog-close-button style="display: contents"> 2076 <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="14" class="icon icon-close" viewBox="0 0 16 16"> 2077 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 2078 </svg> 2079 2080 </button> 2081 </dialog-close-button> 2082 </header> 2083 2084 <div part="body"> 2085 <slot></slot> 2086 </div> 2087 2088 <footer part="footer"> 2089 <slot name="footer"></slot> 2090 </footer> 2091 </div> 2092 </div> 2093</template><template id="modal-default-template"> 2094 <div part="base"> 2095 <div part="overlay"></div> 2096 2097 <div part="content"> 2098 <header part="header"> 2099 <slot name="header"></slot> 2100 2101 <dialog-close-button style="display: contents"> 2102 <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="14" class="icon icon-close" viewBox="0 0 16 16"> 2103 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 2104 </svg> 2105 2106 </button> 2107 </dialog-close-button> 2108 </header> 2109 2110 <div part="body"> 2111 <slot></slot> 2112 </div> 2113 </div> 2114 </div> 2115</template><template id="popover-default-template"> 2116 <div part="base"> 2117 <div part="overlay"></div> 2118 2119 <div part="content"> 2120 <header part="header"> 2121 <slot name="header"></slot> 2122 2123 <dialog-close-button style="display: contents"> 2124 <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="14" class="icon icon-close" viewBox="0 0 16 16"> 2125 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 2126 </svg> 2127 2128 </button> 2129 </dialog-close-button> 2130 </header> 2131 2132 <div part="body"> 2133 <slot></slot> 2134 </div> 2135 </div> 2136 </div> 2137</template><template id="header-search-default-template"> 2138 <div part="base"> 2139 <div part="overlay"></div> 2140 2141 <div part="content"> 2142 <slot></slot> 2143 </div> 2144 </div> 2145</template><template id="video-media-default-template"> 2146 <slot></slot> 2147 2148 <svg part="play-button" fill="none" width="48" height="48" viewBox="0 0 48 48"> 2149 <path fill-rule="evenodd" clip-rule="evenodd" d="M48 24c0 13.255-10.745 24-24 24S0 37.255 0 24 10.745 0 24 0s24 10.745 24 24Zm-18 0-9-6.6v13.2l9-6.6Z" fill="var(--play-button-background, #242424)"/> 2150 </svg> 2151</template> 2152<loading-bar class="loading-bar" aria-hidden="true"></loading-bar> 2153 <a href="#main" allow-hash-change class="skip-to-content sr-only">Skip to content</a><div class="sr-only" role="status" aria-live="polite" aria-atomic="true"> 2154 <span id="status-announcement"></span> 2155 </div> 2156 2157 <div class="sr-only" role="alert" aria-live="assertive" aria-atomic="true"> 2158 <span id="error-announcement"></span> 2159 </div> 2160 2161 <span id="header-scroll-tracker" style="position: absolute; width: 1px; height: 1px; top: var(--header-scroll-tracker-offset, 10px); left: 0;"></span><!-- BEGIN sections: header-group --> 2162<aside id="shopify-section-sections--19030007316579__announcement_bar_RcYKYK" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar"><style> 2163 :root { 2164 --announcement-bar-is-sticky: 0;--header-scroll-tracker-offset: var(--announcement-bar-height);}#shopify-section-sections--19030007316579__announcement_bar_RcYKYK { 2165 --announcement-bar-font-size: 0.625rem; 2166 } 2167 2168 @media screen and (min-width: 999px) { 2169 #shopify-section-sections--19030007316579__announcement_bar_RcYKYK { 2170 --announcement-bar-font-size: 0.75rem; 2171 } 2172 } 2173 </style> 2174 2175 <height-observer variable="announcement-bar"> 2176 <div class="announcement-bar color-scheme color-scheme--scheme-338d7a4e-e542-460c-818e-cfbfd3683c9e">
2176<announcement-bar-carousel 2177 allow-swipe 2178 2179 autoplay="3" 2180 2181 id="carousel-sections--19030007316579__announcement_bar_RcYKYK" 2182 class="announcement-bar__carousel" 2183 ><p class="prose heading is-selected" >Family Fun Day Oct 3rd Bookings <a href="/products/october-family-fun-day" title="October Family Fun Day">Open!</a></p></announcement-bar-carousel></div> 2184 </height-observer> 2185 2186
2186<script> 2187 document.documentElement.style.setProperty('--announcement-bar-height', `${document.getElementById('shopify-section-sections--19030007316579__announcement_bar_RcYKYK').clientHeight.toFixed(2)}px`); 2188 </script>
2188 2189</aside><header id="shopify-section-sections--19030007316579__header" class="shopify-section shopify-section-group-header-group shopify-section--header"><style> 2190 :root { 2191 --header-is-sticky: 1; 2192 } 2193 2194 #shopify-section-sections--19030007316579__header { 2195 --header-grid: "primary-nav logo secondary-nav" / minmax(0, 1fr) auto minmax(0, 1fr); 2196 --header-padding-block: 1rem; 2197 --header-transparent-header-text-color: 255 255 255; 2198 --header-separation-border-color: 0 0 0 / 0; 2199 2200 position: relative; 2201 z-index: 4; 2202 } 2203 2204 @media screen and (min-width: 700px) { 2205 #shopify-section-sections--19030007316579__header { 2206 --header-padding-block: 1.2rem; 2207 } 2208 } 2209 2210 @media screen and (min-width: 1000px) { 2211 #shopify-section-sections--19030007316579__header {--header-grid: "logo primary-nav secondary-nav" / minmax(max-content, 1fr) auto minmax(max-content, 1fr);} 2212 }#shopify-section-sections--19030007316579__header { 2213 position: sticky; 2214 top: 0; 2215 } 2216 2217 .shopify-section--announcement-bar ~ #shopify-section-sections--19030007316579__header { 2218 top: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px)); 2219 }#shopify-section-sections--19030007316579__header { 2220 --header-logo-width: 200px; 2221 } 2222 2223 @media screen and (min-width: 700px) { 2224 #shopify-section-sections--19030007316579__header { 2225 --header-logo-width: 300px; 2226 } 2227 }</style> 2228 2229<height-observer variable="header"> 2230 <x-header 2231 2232 hide-on-scroll 2233 2234 class="header color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397" 2235 ><h1 class="header__logo"> 2236 <a href="/"><span class="sr-only">Stockman's Ridge Wines</span><img src="//stockmansridge.com.au/cdn/shop/files/SRW_CMYK_PRIMARY_HORIZONTAL.pdf_5.png?v=1764458707&width=1921" alt="Stockman's Ridge Wines" srcset="//stockmansridge.com.au/cdn/shop/files/SRW_CMYK_PRIMARY_HORIZONTAL.pdf_5.png?v=1764458707&width=600 600w, //stockmansridge.com.au/cdn/shop/files/SRW_CMYK_PRIMARY_HORIZONTAL.pdf_5.png?v=1764458707&width=900 900w" width="1921" height="472" sizes="300px" class="header__logo-image"></a> 2237 </h1> 2238 2239<nav 2240 class="header__primary-nav header__primary-nav--center" 2241 aria-label="Primary navigation" 2242 > 2243 <button 2244 type="button" 2245 aria-controls="sidebar-menu" 2246 2247 class="md:hidden" 2248 2249 > 2250 <span class="sr-only">Navigation menu</span><svg aria-hidden="true" fill="none" focusable="false" width="24" class="header__nav-icon icon icon-hamburger" viewBox="0 0 24 24"> 2251 <path d="M1 19h22M1 12h22M1 5h22" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/> 2252 </svg></button><ul class="contents unstyled-list md-max:hidden"> 2253 2254 <li class="header__primary-nav-item"> 2255 <mega-menu-disclosure follow-summary-link trigger="hover" class="contents"><details class="header__menu-disclosure"> 2256 <summary data-follow-link="/pages/visit" class="h6" data-title="VISIT">VISIT</summary><div class="mega-menu " ><ul class="mega-menu__linklist unstyled-list"><li class="v-stack justify-items-start gap-5"> 2257 <a href="/pages/visit" class="h6">VISIT</a></li><li class="v-stack justify-items-start gap-5"> 2258 <a href="/pages/experiences" class="h6">EXPERIENCES</a><ul class="v-stack gap-2.5 unstyled-list"><li> 2259 <a href="/products/new-wine-tastings" class="link-faded">WINE TASTINGS</a> 2260 </li><li> 2261 <a href="/products/live-music" class="link-faded">LIVE MUSIC</a> 2262 </li><li> 2263 <a href="/products/new-high-tea" class="link-faded">SPARKLING HIGH TEA</a> 2264 </li><li> 2265 <a href="/products/saturday-vineyard-walk-with-jonno" class="link-faded">VINEYARD WALK</a> 2266 </li><li> 2267 <a href="/products/new-book-a-bonfire-bbq" class="link-faded">BONFIRES & BBQ'S</a> 2268 </li></ul></li><li class="v-stack justify-items-start gap-5"> 2269 <a href="/pages/host-an-event" class="h6">HOST AN EVENT</a><ul class="v-stack gap-2.5 unstyled-list"><li> 2270 <a href="/pages/wedding-function-enquiry" class="link-faded">BOOK A PARTY OR FUNCTION</a> 2271 </li><li> 2272 <a href="/pages/host-an-event" class="link-faded">BIRTHDAY PARTIES</a> 2273 </li><li> 2274 <a href="/pages/host-an-event" class="link-faded">HENS PARTIES</a> 2275 </li><li> 2276 <a href="/pages/host-an-event" class="link-faded">CHRISTMAS PARTIES</a> 2277 </li><li> 2278 <a href="/pages/host-an-event" class="link-faded">CORPORATE EVENTS</a> 2279 </li></ul></li><li class="v-stack justify-items-start gap-5">
2280 <a href="/pages/cherries" class="h6">CHERRIES</a><ul class="v-stack gap-2.5 unstyled-list"><li> 2281 <a href="/pages/cherry-varieties" class="link-faded">OUR VARIETIES</a> 2282 </li><li> 2283 <a href="/products/cherry-picking" class="link-faded">BOOK A PICKING TIME</a> 2284 </li></ul></li></ul></div> 2285</details></mega-menu-disclosure></li> 2286 2287 <li class="header__primary-nav-item"><dropdown-menu-disclosure follow-summary-link trigger="hover"><details class="header__menu-disclosure"> 2288 <summary data-follow-link="/collections/current" class="h6" data-title="WINE">WINE</summary><ul class="header__dropdown-menu header__dropdown-menu--restrictable unstyled-list" role="list"><li><a href="/collections/current" class="link-faded-reverse" >BUY WINE</a></li><li><a href="/collections/wine-packs" class="link-faded-reverse" >WINE PACKS</a></li><li><a href="/pages/wine-club" class="link-faded-reverse" >WINE CLUB</a></li><li><a href="/collections/not-wine" class="link-faded-reverse" >VOUCHERS</a></li><li><a href="/pages/gruner-veltliner" class="link-faded-reverse" >GRUNER VELTLINER</a></li><li><a href="/pages/bordeauxblends" class="link-faded-reverse" >BORDEAUX BLENDS</a></li></ul></details></dropdown-menu-disclosure></li> 2289 2290 <li class="header__primary-nav-item"><a 2291 href="/pages/events" 2292 data-title="WHAT'S ON" 2293 class="block h6" 2294 2295 >WHAT'S ON</a></li> 2296 2297 <li class="header__primary-nav-item"><a 2298 href="/pages/story" 2299 data-title="STORY" 2300 class="block h6" 2301 2302 >STORY</a></li> 2303 2304 <li class="header__primary-nav-item"><a 2305 href="https://swagmanhomestead.hostexbooking.site/listing/112067" 2306 data-title="ACCOMMODATION" 2307 class="block h6" 2308 2309 >ACCOMMODATION</a></li> 2310 2311 <li class="header__primary-nav-item"><dropdown-menu-disclosure follow-summary-link trigger="hover"><details class="header__menu-disclosure"> 2312 <summary data-follow-link="/pages/weddings" class="h6" data-title="WEDDINGS">WEDDINGS</summary><ul class="header__dropdown-menu header__dropdown-menu--restrictable unstyled-list" role="list"><li><a href="/pages/weddings" class="link-faded-reverse" >WEDDINGS</a></li><li><a href="/pages/wedding-function-enquiry" class="link-faded-reverse" >ENQUIRE</a></li></ul></details></dropdown-menu-disclosure></li></ul></nav><nav class="header__secondary-nav" aria-label="Secondary navigation"><ul class="contents unstyled-list"><li class="header__account-link sm-max:hidden"> 2313 <shopify-store store-domain="https://stockmansridge.com.au" country="AU" language="en"></shopify-store> 2314<shopify-account menu="customer-account-main-menu"> 2315 <div slot="signed-out-avatar"><svg aria-hidden="true" fill="none" focusable="false" width="24" class="header__nav-icon icon icon-account" viewBox="0 0 24 24"> 2316 <path d="M16.125 8.75c-.184 2.478-2.063 4.5-4.125 4.5s-3.944-2.021-4.125-4.5c-.187-2.578 1.64-4.5 4.125-4.5 2.484 0 4.313 1.969 4.125 4.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2317 <path d="M3.017 20.747C3.783 16.5 7.922 14.25 12 14.25s8.217 2.25 8.984 6.497" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10"/> 2318 </svg></div> 2319 </shopify-account> 2320 </li><li class="header__search-link"> 2321 <a href="/search" aria-controls="header-search-sections--19030007316579__header"> 2322 <span class="sr-only">Search</span><svg aria-hidden="true" fill="none" focusable="false" width="24" class="header__nav-icon icon icon-search" viewBox="0 0 24 24"> 2323 <path d="M10.364 3a7.364 7.364 0 1 0 0 14.727 7.364 7.364 0 0 0 0-14.727Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10"/> 2324 <path d="M15.857 15.858 21 21.001" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round"/> 2325 </svg></a> 2326 </li><li class="relative header__cart-link"> 2327 <a 2328 href="/cart" 2329 2330 aria-controls="cart-drawer" 2331 2332 data-no-instant 2333 >
2334 <span class="sr-only">Cart</span><svg aria-hidden="true" fill="none" focusable="false" width="24" class="header__nav-icon icon icon-cart" viewBox="0 0 24 24"><path d="M4.75 8.25A.75.75 0 0 0 4 9L3 19.125c0 1.418 1.207 2.625 2.625 2.625h12.75c1.418 0 2.625-1.149 2.625-2.566L20 9a.75.75 0 0 0-.75-.75H4.75Zm2.75 0v-1.5a4.5 4.5 0 0 1 4.5-4.5v0a4.5 4.5 0 0 1 4.5 4.5v1.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg><cart-dot class="header__cart-dot "></cart-dot> 2335 </a> 2336 </li> 2337 </ul> 2338 </nav><header-search id="header-search-sections--19030007316579__header" class="header-search"> 2339 <div class="container"> 2340 <form id="predictive-search-form" action="/search" method="GET" aria-owns="header-predictive-search" class="header-search__form" role="search"> 2341 <div class="header-search__form-control"><svg aria-hidden="true" fill="none" focusable="false" width="20" class="icon icon-search" viewBox="0 0 24 24"> 2342 <path d="M10.364 3a7.364 7.364 0 1 0 0 14.727 7.364 7.364 0 0 0 0-14.727Z" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10"/> 2343 <path d="M15.857 15.858 21 21.001" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10" stroke-linecap="round"/> 2344 </svg><input 2345 type="search" 2346 name="q" 2347 spellcheck="false" 2348 class="header-search__input h5 sm:h4" 2349 aria-label="Search" 2350 placeholder="Search for..." 2351 > 2352 2353 <dialog-close-button class="contents"> 2354 <button type="button"> 2355 <span class="sr-only">Close</span><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-close" viewBox="0 0 16 16"> 2356 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 2357 </svg> 2358 2359 </button> 2360 </dialog-close-button> 2361 </div> 2362 </form> 2363 2364 <predictive-search id="header-predictive-search" class="predictive-search"> 2365 <div class="predictive-search__content" slot="results"></div> 2366 </predictive-search> 2367 </div> 2368</header-search> 2369<template id="header-sidebar-template"> 2370 <div part="base"> 2371 <div part="overlay"></div> 2372 2373 <div part="content"> 2374 <header part="header"> 2375 <dialog-close-button class="contents"> 2376 <button type="button" part="close-button tap-area" aria-label="Close"><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-close" viewBox="0 0 16 16"> 2377 <path d="m1 1 14 14M1 15 15 1" stroke="currentColor" stroke-width="1.5"/> 2378 </svg> 2379 2380 </button> 2381 </dialog-close-button> 2382 </header> 2383 2384 <div part="panel-list"> 2385 <slot name="main-panel"></slot><slot name="collapsible-panel"></slot></div> 2386 </div> 2387 </div> 2388</template> 2389 2390<header-sidebar id="sidebar-menu" class="header-sidebar drawer drawer--sm color-scheme color-scheme--scheme-3" template="header-sidebar-template" open-from="left"><div class="header-sidebar__main-panel" slot="main-panel"> 2391 <div class="header-sidebar__scroller"> 2392 <ul class="header-sidebar__linklist divide-y unstyled-list" role="list"><li><button 2393 type="button" 2394 class="header-sidebar__linklist-button h6" 2395 aria-controls="header-panel-1" 2396 aria-expanded="false" 2397 >VISIT<svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-right icon--direction-aware" viewBox="0 0 10 10"> 2398 <path d="m3 9 4-4-4-4" stroke="currentColor" stroke-linecap="square"/> 2399 </svg></button></li><li><button 2400 type="button" 2401 class="header-sidebar__linklist-button h6" 2402 aria-controls="header-panel-2" 2403 aria-expanded="false" 2404 >WINE<svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-right icon--direction-aware" viewBox="0 0 10 10"> 2405 <path d="m3 9 4-4-4-4" stroke="currentColor" stroke-linecap="square"/> 2406 </svg></button></li><li><a href="/pages/events" class="header-sidebar__linklist-button h6">WHAT'S ON</a></li><li><a href="/pages/story" class="header-sidebar__linklist-button h6">STORY</a></li><li><a href="https://swagmanhomestead.hostexbooking.site/listing/112067" class="header-sidebar__linklist-button h6">ACCOMMODATION</a></li><li><button 2407 type="button" 2408 class="header-sidebar__linklist-button h6" 2409 aria-controls="header-panel-6" 2410 aria-expanded="false" 2411 >WEDDINGS<svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-right icon--direction-aware" viewBox="0 0 10 10"> 2412 <path d="m3 9 4-4-4-4" stroke="currentColor" stroke-linecap="square"/> 2413 </svg></button></li></ul> 2414 </div><div class="header-sidebar__footer"><shopify-account menu="customer-account-main-menu"> 2415 <div slot="signed-out-avatar"> 2416 <div class="text-with-icon smallcaps sm:hidden"><svg aria-hidden="true" fill="none" focusable="false" width="20" class="icon icon-account" viewBox="0 0 24 24">
2417 <path d="M16.125 8.75c-.184 2.478-2.063 4.5-4.125 4.5s-3.944-2.021-4.125-4.5c-.187-2.578 1.64-4.5 4.125-4.5 2.484 0 4.313 1.969 4.125 4.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2418 <path d="M3.017 20.747C3.783 16.5 7.922 14.25 12 14.25s8.217 2.25 8.984 6.497" stroke="currentColor" stroke-width="1.5" stroke-miterlimit="10"/> 2419 </svg>Login</div> 2420 </div> 2421 </shopify-account></div></div><header-sidebar-collapsible-panel class="header-sidebar__collapsible-panel" slot="collapsible-panel"> 2422 <div class="header-sidebar__scroller"><div id="header-panel-1" class="header-sidebar__sub-panel" hidden> 2423 <button 2424 type="button" 2425 class="header-sidebar__back-button link-faded is-divided text-with-icon h6 md:hidden" 2426 data-action="close-panel" 2427 ><svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-left icon--direction-aware" viewBox="0 0 10 10"> 2428 <path d="M7 1 3 5l4 4" stroke="currentColor" stroke-linecap="square"/> 2429 </svg>VISIT</button> 2430 2431 <ul class="header-sidebar__linklist divide-y unstyled-list" role="list"><li><a href="/pages/visit" class="header-sidebar__linklist-button h6">VISIT</a></li><li><accordion-disclosure> 2432 <details 2433 class="accordion__disclosure group" 2434 2435 open 2436 2437 > 2438 <summary class="header-sidebar__linklist-button h6">EXPERIENCES<span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 2439 </summary> 2440 2441 <div class="header-sidebar__nested-linklist"><a href="/products/new-wine-tastings" class="link-faded-reverse">WINE TASTINGS</a><a href="/products/live-music" class="link-faded-reverse">LIVE MUSIC</a><a href="/products/new-high-tea" class="link-faded-reverse">SPARKLING HIGH TEA</a><a href="/products/saturday-vineyard-walk-with-jonno" class="link-faded-reverse">VINEYARD WALK</a><a href="/products/new-book-a-bonfire-bbq" class="link-faded-reverse">BONFIRES & BBQ'S</a></div> 2442 </details> 2443 </accordion-disclosure></li><li><accordion-disclosure> 2444 <details 2445 class="accordion__disclosure group" 2446 2447 open 2448 2449 > 2450 <summary class="header-sidebar__linklist-button h6">HOST AN EVENT<span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 2451 </summary> 2452 2453 <div class="header-sidebar__nested-linklist"><a href="/pages/wedding-function-enquiry" class="link-faded-reverse">BOOK A PARTY OR FUNCTION</a><a href="/pages/host-an-event" class="link-faded-reverse">BIRTHDAY PARTIES</a><a href="/pages/host-an-event" class="link-faded-reverse">HENS PARTIES</a><a href="/pages/host-an-event" class="link-faded-reverse">CHRISTMAS PARTIES</a><a href="/pages/host-an-event" class="link-faded-reverse">CORPORATE EVENTS</a></div> 2454 </details> 2455 </accordion-disclosure></li><li><accordion-disclosure> 2456 <details 2457 class="accordion__disclosure group" 2458 2459 open 2460 2461 > 2462 <summary class="header-sidebar__linklist-button h6">CHERRIES<span class="animated-plus group-expanded:rotate" aria-hidden="true"></span> 2463 </summary> 2464 2465 <div class="header-sidebar__nested-linklist"><a href="/pages/cherry-varieties" class="link-faded-reverse">OUR VARIETIES</a><a href="/products/cherry-picking" class="link-faded-reverse">BOOK A PICKING TIME</a></div> 2466 </details> 2467 </accordion-disclosure></li></ul></div><div id="header-panel-2" class="header-sidebar__sub-panel" hidden> 2468 <button 2469 type="button" 2470 class="header-sidebar__back-button link-faded is-divided text-with-icon h6 md:hidden" 2471 data-action="close-panel" 2472 ><svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-left icon--direction-aware" viewBox="0 0 10 10"> 2473 <path d="M7 1 3 5l4 4" stroke="currentColor" stroke-linecap="square"/> 2474 </svg>WINE</button> 2475 2476 <ul class="header-sidebar__linklist divide-y unstyled-list" role="list"><li><a href="/collections/current" class="header-sidebar__linklist-button h6">BUY WINE</a></li><li><a href="/collections/wine-packs" class="header-sidebar__linklist-button h6">WINE PACKS</a></li><li><a href="/pages/wine-club" class="header-sidebar__linklist-button h6">WINE CLUB</a></li><li><a href="/collections/not-wine" class="header-sidebar__linklist-button h6">VOUCHERS</a></li><li><a href="/pages/gruner-veltliner" class="header-sidebar__linklist-button h6">GRUNER VELTLINER</a></li><li><a href="/pages/bordeauxblends" class="header-sidebar__linklist-button h6">BORDEAUX BLENDS</a></li></ul></div><div id="header-panel-6" class="header-sidebar__sub-panel" hidden> 2477 <button 2478 type="button" 2479 class="header-sidebar__back-button link-faded is-divided text-with-icon h6 md:hidden" 2480 data-action="close-panel" 2481 ><svg aria-hidden="true" focusable="false" fill="none" width="12" class="icon icon-chevron-left icon--direction-aware" viewBox="0 0 10 10"> 2482 <path d="M7 1 3 5l4 4" stroke="currentColor" stroke-linecap="square"/> 2483 </svg>WEDDINGS</button> 2484 2485 <ul class="header-sidebar__linklist divide-y unstyled-list" role="list"><li><a href="/pages/weddings" class="header-sidebar__linklist-button h6">WEDDINGS</a></li><li><a href="/pages/wedding-function-enquiry" class="header-sidebar__linklist-button h6">ENQUIRE</a></li></ul></div></div> 2486 </header-sidebar-collapsible-panel></header-sidebar> 2487</x-header> 2488</height-observer> 2489
2490<script> 2491 document.documentElement.style.setProperty('--header-height', `${document.getElementById('shopify-section-sections--19030007316579__header').clientHeight.toFixed(2)}px`); 2492</script>
2492 2493 2494 2495</header> 2496<!-- END sections: header-group --><!-- BEGIN sections: overlay-group --> 2497<section id="shopify-section-sections--19030007349347__cart-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--cart-drawer"><cart-drawer 2498 id="cart-drawer" 2499 aria-label="Cart" 2500 class="cart-drawer drawer drawer--center-body color-scheme color-scheme--scheme-1" 2501 initial-focus="false" 2502 handle-editor-events 2503> 2504 <p class="h4" slot="header">Cart</p><p class="h5 text-center">Your cart is empty</p></cart-drawer> 2505 2506 2507</section> 2508<!-- END sections: overlay-group --><main id="main" class="anchor"> 2509 <section id="shopify-section-template--19030006661219__slideshow" class="shopify-section shopify-section--slideshow"><slideshow-carousel 2510 id="carousel-template--19030006661219__slideshow" 2511 class="slideshow" 2512 allow-swipe 2513 2514 cell-selector=".slideshow__slide" 2515 2516 autoplay="5" 2517 2518 2519 autoplay-pause-on-video 2520 2521 role="region" 2522 style="--border-color: var(--text-color) / 0.15;" 2523 ><div 2524 class="slideshow__slide is-selected" 2525 media-type="video" 2526 2527 role="group" 2528 2529 ><div class="content-over-media content-over-media--fill" style="--content-over-media-content-max-width: 780px; --content-over-media-gradient-overlay: linear-gradient(180deg, rgba(54, 54, 54, 0.2), rgba(4, 4, 4, 0.65) 100%)"><video-media 2530 2531 type="video" 2532 2533 2534 autoplay 2535 2536 2537 2538 style="--aspect-ratio: 1.775; --play-button-background: #242424" 2539 ><video playsinline="true" muted="muted" preload="metadata" poster="//stockmansridge.com.au/cdn/shop/files/preview_images/7ff656ca68f94bae953935ce9f2de560.thumbnail.0000000000_400x.jpg?v=1764496424"><source src="//stockmansridge.com.au/cdn/shop/videos/c/vp/7ff656ca68f94bae953935ce9f2de560/7ff656ca68f94bae953935ce9f2de560.HD-1080p-7.2Mbps-64144183.mp4?v=0" type="video/mp4"><img src="//stockmansridge.com.au/cdn/shop/files/preview_images/7ff656ca68f94bae953935ce9f2de560.thumbnail.0000000000_400x.jpg?v=1764496424"></video></video-media> 2540 2541 <div class="slideshow__slide-content place-self-center text-center sm:place-self-center sm:text-center" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"> 2542 <div class="prose"><p class="h6">Done properly in the vineyard, enjoyed simply at the table</p><p class="h1">experience</p><div class="button-group justify-center sm:justify-center"> 2543<a class="button" style="--button-background: 255 255 255;--button-outline-color: 255 255 255;--button-text-color: 0 0 0;" href="/pages/experiences" >BOOK NOW</a></div></div> 2544 </div> 2545 </div><div class="slideshow__volume-control" style="--text-color: 232 232 232; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"> 2546 <button data-action="unmute"> 2547 <span class="sr-only">Unmute video</span><svg aria-hidden="true" focusable="false" fill="none" width="25" class="icon icon-unmute" viewBox="0 0 25 24"> 2548 <path d="M5.335 16.366H1V8.42h4.335m0 7.947V8.42m0 7.947 1.204.86M5.335 8.42 12.922 3v8M9 18.984l3.921 2.801V15.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2549 <path d="M20.287 21.083A11.98 11.98 0 0 0 24 12.393c0-3.422-1.425-6.493-3.713-8.69m-3.582 3.582a6.947 6.947 0 0 1 0 10.215" stroke="currentColor" stroke-width="1.5"/> 2550 <path d="m22.5 1.5-21 21" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2551 </svg></button> 2552 2553 <button data-action="mute" hidden> 2554 <span class="sr-only">Mute video</span><svg aria-hidden="true" focusable="false" fill="none" width="25" class="icon icon-mute" viewBox="0 0 25 24"> 2555 <path d="M5.335 16.366H1V8.42h4.335m0 7.947V8.42m0 7.947 7.587 5.42V3L5.335 8.419" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2556 <path d="M20.287 21.083A11.98 11.98 0 0 0 24 12.393c0-3.422-1.425-6.493-3.713-8.69m-3.582 3.582a6.947 6.947 0 0 1 0 10.215" stroke="currentColor" stroke-width="1.5"/> 2557 </svg></button> 2558 </div></div><button data-action="navigate-next" class="slideshow__next-section-button circle-button circle-button--lg hover:animate-icon-block">
2559 <span class="sr-only">Navigate to next section</span><svg aria-hidden="true" focusable="false" fill="none" width="18" class="icon icon-arrow-down" viewBox="0 0 18 16"> 2560 <path d="m1 4 8 8 8-8" stroke="currentColor" stroke-linecap="square"/> 2561 </svg></button></slideshow-carousel> 2562</section><section id="shopify-section-template--19030006661219__media-grid" class="shopify-section shopify-section--media-grid"><style> 2563 #shopify-section-template--19030006661219__media-grid { 2564 --media-grid-row-height: 180px; 2565 --media-grid-gap: 0.5rem;--container-gutter: var(--media-grid-gap);--section-vertical-spacing-override: var(--media-grid-gap);} 2566 2567 @media screen and (min-width: 700px) { 2568 #shopify-section-template--19030006661219__media-grid { 2569 --media-grid-row-height: 290px; 2570 } 2571 } 2572 2573 @media screen and (min-width: 1150px) { 2574 #shopify-section-template--19030006661219__media-grid { 2575 --media-grid-gap: 0.75rem; 2576 } 2577 } 2578 </style><div class="section-spacing color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 "> 2579 <div class="container "> 2580 <div class="section-stack"><media-grid class="media-grid"><a 2581 href="/pages/visit" 2582 class="media-grid__item " 2583 style="--media-grid-item-column-span: 6; --media-grid-item-row-span: 2" 2584 2585 ><div class="content-over-media color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=4240" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=200 200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=300 300w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=400 400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=500 500w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=600 600w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=700 700w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=800 800w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=1200 1200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=1400 1400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-410.jpg?v=1764471003&width=1600 1600w" width="4240" height="2208" sizes="(max-width: 699px) 100vw, 50vw" class="zoom-image group-hover:zoom" style="object-position:47.9414% 76.4977%;"><div class="prose prose--tight place-self-center text-center"> 2586 <p class="h2">VISIT US</p></div></div></a><a 2587 href="/collections/wine" 2588 class="media-grid__item " 2589 style="--media-grid-item-column-span: 6; --media-grid-item-row-span: 2" 2590 2591 ><div class="content-over-media color-scheme color-scheme--scheme-3 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=4240" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=200 200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=300 300w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=400 400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=500 500w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=600 600w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=700 700w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=800 800w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=1200 1200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=1400 1400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-59.jpg?v=1764469873&width=1600 1600w" width="4240" height="2827" sizes="(max-width: 699px) 100vw, 50vw" class="zoom-image group-hover:zoom">
2591<div class="prose prose--tight place-self-center text-center"> 2592 <p class="h2">ONLINE STORE</p></div></div></a><a 2593 href="/pages/story" 2594 class="media-grid__item " 2595 style="--media-grid-item-column-span: 3; --media-grid-item-row-span: 2" 2596 2597 ><div class="content-over-media color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=4240" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=200 200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=300 300w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=400 400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=500 500w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=600 600w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=700 700w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=800 800w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=1200 1200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=1400 1400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-566.jpg?v=1764380898&width=1600 1600w" width="4240" height="2827" sizes="(max-width: 699px) 100vw, 25vw" class="zoom-image group-hover:zoom"><div class="prose prose--tight place-self-center text-center"> 2598 <p class="h2">OUR STORY</p></div></div></a><a 2599 href="https://swagmanhomestead.hostexbooking.site/listing/112067" 2600 class="media-grid__item " 2601 style="--media-grid-item-column-span: 3; --media-grid-item-row-span: 2" 2602 2603 ><div class="content-over-media color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=4284" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=200 200w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=300 300w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=400 400w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=500 500w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=600 600w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=700 700w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=800 800w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=1200 1200w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=1400 1400w, //stockmansridge.com.au/cdn/shop/files/IMG_9870.jpg?v=1764471405&width=1600 1600w" width="4284" height="5712" sizes="(max-width: 699px) 100vw, 25vw" class="zoom-image group-hover:zoom"><div class="prose prose--tight place-self-center text-center"> 2604 <p class="h2">STAY</p></div></div></a><a 2605 href="/pages/wine-club" 2606 class="media-grid__item " 2607 style="--media-grid-item-column-span: 3; --media-grid-item-row-span: 2" 2608 2609 ><div class="content-over-media color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=2827" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=200 200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=300 300w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=400 400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=500 500w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=600 600w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=700 700w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=800 800w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=1200 1200w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=1400 1400w, //stockmansridge.com.au/cdn/shop/files/Stockman_s_Blowes_Pics_LR-71.jpg?v=1764470017&width=1600 1600w" width="2827" height="4240" sizes="(max-width: 699px) 100vw, 25vw" class="zoom-image group-hover:zoom" style="object-position:54.356% 51.7972%;">
2609<div class="prose prose--tight place-self-center text-center"> 2610 <p class="h2">WINE CLUB</p></div></div></a><a 2611 href="/pages/weddings" 2612 class="media-grid__item " 2613 style="--media-grid-item-column-span: 3; --media-grid-item-row-span: 2" 2614 2615 ><div class="content-over-media color-scheme color-scheme--scheme-4 group" reveal-on-scroll="true" style="--content-over-media-overlay: 0 0 0 / 0.2;"><img src="//stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=1290" alt="" srcset="//stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=200 200w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=300 300w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=400 400w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=500 500w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=600 600w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=700 700w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=800 800w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=1000 1000w, //stockmansridge.com.au/cdn/shop/files/original-156A3224-C6E3-4100-B8D6-9390D7859873.jpg?v=1764389047&width=1200 1200w" width="1290" height="1924" sizes="(max-width: 699px) 100vw, 25vw" class="zoom-image group-hover:zoom"><div class="prose prose--tight place-self-center text-center"> 2616 <p class="h2">WEDDINGS</p></div></div></a></media-grid> 2617 </div> 2618 </div> 2619 </div> 2620</section><section id="shopify-section-template--19030006661219__featured-collections-1" class="shopify-section shopify-section--featured-collections"><style> 2621 #shopify-section-template--19030006661219__featured-collections-1 { 2622 --product-list-items-per-row: 1; 2623 --product-list-horizontal-spacing-factor: 1; 2624 --product-list-vertical-spacing-factor: 1; 2625 } 2626 2627 @media screen and (min-width: 700px) { 2628 #shopify-section-template--19030006661219__featured-collections-1 { 2629 --product-list-items-per-row: 4; 2630 } 2631 } 2632 </style><div class="section-spacing color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 bordered-section"> 2633 <div class="container"><div class="section-stack"><div class="v-stack justify-self-center gap-4 text-center sm:gap-5"><h2 class="h2"> 2634 CURRENT WINES 2635 </h2></div><featured-collections-carousel id="featured-collections-carousel-template--19030006661219__featured-collections-1" class="featured-collections-carousel"><div class="featured-collections-carousel__item is-selected" ><product-list class="floating-controls-container floating-controls-container--inside floating-controls-container--on-hover"> 2636 <carousel-prev-button class="floating-controls-container__control" aria-controls="featured-collections-product-list-carousel-collection_TE7nRK"> 2637 <button type="button" class="prev-next-button prev-next-button--prev circle-button hover:animate-icon-inline" disabled> 2638 <span class="sr-only">Previous</span><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-arrow-left icon--direction-aware" viewBox="0 0 16 18"> 2639 <path d="M11 1 3 9l8 8" stroke="currentColor" stroke-linecap="square"/> 2640 </svg></button> 2641 </carousel-prev-button> 2642 2643 <scroll-carousel 2644 id="featured-collections-product-list-carousel-collection_TE7nRK" 2645 group-cells 2646 allow-drag 2647 class="product-list product-list--carousel scroll-area bleed md:unbleed" 2648 ><product-card 2649 class="product-card" 2650 2651 reveal-on-scroll="true" 2652 2653 handle="bubbly-sweet-fiz-2022" 2654><div class="product-card__figure"><a href="/products/bubbly-sweet-fiz-2022" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/11.png?v=1766570016&width=500" alt="Bubbly Sweet Fizz 2022" srcset="//stockmansridge.com.au/cdn/shop/files/11.png?v=1766570016&width=200 200w, //stockmansridge.com.au/cdn/shop/files/11.png?v=1766570016&width=300 300w, //stockmansridge.com.au/cdn/shop/files/11.png?v=1766570016&width=400 400w, //stockmansridge.com.au/cdn/shop/files/11.png?v=1766570016&width=500 500w" width="500" height="500" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, c
2654alc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/12.png?v=1766570019&width=500" alt="Bubbly Sweet Fizz 2022" srcset="//stockmansridge.com.au/cdn/shop/files/12.png?v=1766570019&width=200 200w, //stockmansridge.com.au/cdn/shop/files/12.png?v=1766570019&width=300 300w, //stockmansridge.com.au/cdn/shop/files/12.png?v=1766570019&width=400 400w, //stockmansridge.com.au/cdn/shop/files/12.png?v=1766570019&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2655<a href="/collections/vendors?q=Chardonnay" class="vendor smallcaps heading">Chardonnay</a><div class="v-stack justify-items-center gap-1"><a 2656 href="/products/bubbly-sweet-fiz-2022" 2657 class="product-title h6 " 2658 2659 data-instant 2660 >Bubbly Sweet Fizz 2022</a><price-list class="price-list "><sale-price class="h6 text-subdued"> 2661 <span class="sr-only">Sale price</span>$35.00</sale-price></price-list> 2662</div></div></div> 2663</product-card> 2664<product-card 2665 class="product-card" 2666 2667 reveal-on-scroll="true" 2668 2669 handle="storm-blanc-de-noir-2022" 2670><div class="product-card__figure"><a href="/products/storm-blanc-de-noir-2022" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/2023RiderGruner_2_5a899130-cd5a-423b-8083-ef0e163610f9.png?v=1770864147&width=500" alt="Storm Blanc De Noir 2022" srcset="//stockmansridge.com.au/cdn/shop/files/2023RiderGruner_2_5a899130-cd5a-423b-8083-ef0e163610f9.png?v=1770864147&width=200 200w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner_2_5a899130-cd5a-423b-8083-ef0e163610f9.png?v=1770864147&width=300 300w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner_2_5a899130-cd5a-423b-8083-ef0e163610f9.png?v=1770864147&width=400 400w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner_2_5a899130-cd5a-423b-8083-ef0e163610f9.png?v=1770864147&width=500 500w" width="500" height="500" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/34_b256ef46-1dcc-4ea7-92f6-4866a77e92b1.png?v=1770864149&width=500" alt="Storm Blanc De Noir 2022" srcset="//stockmansridge.com.au/cdn/shop/files/34_b256ef46-1dcc-4ea7-92f6-4866a77e92b1.png?v=1770864149&width=200 200w, //stockmansridge.com.au/cdn/shop/files/34_b256ef46-1dcc-4ea7-92f6-4866a77e92b1.png?v=1770864149&width=300 300w, //stockmansridge.com.au/cdn/shop/files/34_b256ef46-1dcc-4ea7-92f6-4866a77e92b1.png?v=1770864149&width=400 400w, //stockmansridge.com.au/cdn/shop/files/34_b256ef46-1dcc-4ea7-92f6-4866a77e92b1.png?v=1770864149&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2671<a href="/collections/vendors?q=Pinot%20Noir" class="vendor smallcaps heading">Pinot Noir</a><div class="v-stack justify-items-center gap-1"><a 2672 href="/products/storm-blanc-de-noir-2022" 2673 class="product-title h6 " 2674 2675 data-instant 2676 >Storm Blanc De Noir 2022</a><price-list class="price-list "><sale-price class="h6 text-subdued"> 2677 <span class="sr-only">Sale price</span>$65.00</sale-price></price-list> 2678</div></div></div> 2679</product-card> 2680<product-card 2681 class="product-card" 2682 2683 reveal-on-scroll="true" 2684 2685 handle="rider-pinot-gris-2025" 2686><div class="product-card__figure"><a href="/products/rider-pinot-gris-2025" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/9.png?v=17665693
268612&width=500" alt="Rider Pinot Gris 2025" srcset="//stockmansridge.com.au/cdn/shop/files/9.png?v=1766569312&width=200 200w, //stockmansridge.com.au/cdn/shop/files/9.png?v=1766569312&width=300 300w, //stockmansridge.com.au/cdn/shop/files/9.png?v=1766569312&width=400 400w, //stockmansridge.com.au/cdn/shop/files/9.png?v=1766569312&width=500 500w" width="500" height="500" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/10.png?v=1766569316&width=500" alt="Rider Pinot Gris 2025" srcset="//stockmansridge.com.au/cdn/shop/files/10.png?v=1766569316&width=200 200w, //stockmansridge.com.au/cdn/shop/files/10.png?v=1766569316&width=300 300w, //stockmansridge.com.au/cdn/shop/files/10.png?v=1766569316&width=400 400w, //stockmansridge.com.au/cdn/shop/files/10.png?v=1766569316&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2687<a href="/collections/vendors?q=Pinot%20Gris" class="vendor smallcaps heading">Pinot Gris</a><div class="v-stack justify-items-center gap-1"><a 2688 href="/products/rider-pinot-gris-2025" 2689 class="product-title h6 " 2690 2691 data-instant 2692 >Rider Pinot Gris 2025</a><price-list class="price-list "><sale-price class="h6 text-subdued"> 2693 <span class="sr-only">Sale price</span>$35.00</sale-price></price-list> 2694</div></div></div> 2695</product-card> 2696<product-card 2697 class="product-card" 2698 2699 reveal-on-scroll="true" 2700 2701 handle="rider-gruner-veltliner-2023" 2702><div class="product-card__figure"><a href="/products/rider-gruner-veltliner-2023" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/2023RiderGruner.png?v=1770864212&width=500" alt="Rider Gruner Veltliner 2023" srcset="//stockmansridge.com.au/cdn/shop/files/2023RiderGruner.png?v=1770864212&width=200 200w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner.png?v=1770864212&width=300 300w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner.png?v=1770864212&width=400 400w, //stockmansridge.com.au/cdn/shop/files/2023RiderGruner.png?v=1770864212&width=500 500w" width="500" height="500" loading="lazy" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/32_2814189b-48a0-4dc1-ae68-01fda7c329bb.png?v=1770864219&width=500" alt="Rider Gruner Veltliner 2023" srcset="//stockmansridge.com.au/cdn/shop/files/32_2814189b-48a0-4dc1-ae68-01fda7c329bb.png?v=1770864219&width=200 200w, //stockmansridge.com.au/cdn/shop/files/32_2814189b-48a0-4dc1-ae68-01fda7c329bb.png?v=1770864219&width=300 300w, //stockmansridge.com.au/cdn/shop/files/32_2814189b-48a0-4dc1-ae68-01fda7c329bb.png?v=1770864219&width=400 400w, //stockmansridge.com.au/cdn/shop/files/32_2814189b-48a0-4dc1-ae68-01fda7c329bb.png?v=1770864219&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2703<a href="/collections/vendors?q=Gruner%20Veltliner" class="vendor smallcaps heading">Gruner Veltliner</a><div class="v-stack justify-items-center gap-1"><a 2704 href="/products/rider-gruner-veltliner-2023" 2705 class="product-title h6 " 2706 2707 data-instant 2708 >Rider Gruner Veltliner 2023</a><price-list class="price-list "><sale-price class="h6 text-subdued">
2709 <span class="sr-only">Sale price</span>$35.00</sale-price></price-list> 2710</div></div></div> 2711</product-card> 2712<product-card 2713 class="product-card" 2714 2715 reveal-on-scroll="true" 2716 2717 handle="signature-gruner-veltliner-2022" 2718><div class="product-card__figure"><a href="/products/signature-gruner-veltliner-2022" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/15_5062e06e-0959-4f8d-bedf-bdbe811b241d.png?v=1769034063&width=500" alt="Signature Gruner Veltliner 2022" srcset="//stockmansridge.com.au/cdn/shop/files/15_5062e06e-0959-4f8d-bedf-bdbe811b241d.png?v=1769034063&width=200 200w, //stockmansridge.com.au/cdn/shop/files/15_5062e06e-0959-4f8d-bedf-bdbe811b241d.png?v=1769034063&width=300 300w, //stockmansridge.com.au/cdn/shop/files/15_5062e06e-0959-4f8d-bedf-bdbe811b241d.png?v=1769034063&width=400 400w, //stockmansridge.com.au/cdn/shop/files/15_5062e06e-0959-4f8d-bedf-bdbe811b241d.png?v=1769034063&width=500 500w" width="500" height="500" loading="lazy" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/16.png?v=1766569603&width=500" alt="Signature Gruner Veltliner 2022" srcset="//stockmansridge.com.au/cdn/shop/files/16.png?v=1766569603&width=200 200w, //stockmansridge.com.au/cdn/shop/files/16.png?v=1766569603&width=300 300w, //stockmansridge.com.au/cdn/shop/files/16.png?v=1766569603&width=400 400w, //stockmansridge.com.au/cdn/shop/files/16.png?v=1766569603&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2719<a href="/collections/vendors?q=Gruner%20Veltliner" class="vendor smallcaps heading">Gruner Veltliner</a><div class="v-stack justify-items-center gap-1"><a 2720 href="/products/signature-gruner-veltliner-2022" 2721 class="product-title h6 " 2722 2723 data-instant 2724 >Signature Gruner Veltliner 2022</a><price-list class="price-list "><sale-price class="h6 text-subdued"> 2725 <span class="sr-only">Sale price</span>$46.00</sale-price></price-list> 2726</div></div></div> 2727</product-card> 2728<product-card 2729 class="product-card" 2730 2731 reveal-on-scroll="true" 2732 2733 handle="primrose-2024" 2734><div class="product-card__figure"><a href="/products/primrose-2024" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/7.png?v=1766569556&width=500" alt="Primrose 2024" srcset="//stockmansridge.com.au/cdn/shop/files/7.png?v=1766569556&width=200 200w, //stockmansridge.com.au/cdn/shop/files/7.png?v=1766569556&width=300 300w, //stockmansridge.com.au/cdn/shop/files/7.png?v=1766569556&width=400 400w, //stockmansridge.com.au/cdn/shop/files/7.png?v=1766569556&width=500 500w" width="500" height="500" loading="lazy" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/8.png?v=1766569560&width=500" alt="Primrose 2024" srcset="//stockmansridge.com.au/cdn/shop/files/8.png?v=1766569560&width=200 200w, //stockmansridge.com.au/cdn/shop/files/8.png?v=1766569560&width=300 300w, //stockmansridge.com.au/cdn/shop/files/8.png?v=1766569560&width=400 400w, //stockmansridge.com.au/cdn/shop/files/8.png?v=1766569560&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2735<a href="/collections/vendors?q=Ros%C3%A9" class="vendor smallcaps heading">Rosé</a><div class="v-stack justify-items-center gap-1"><a 2736 href="/products/primrose-2024" 2737 class="product-title h6 " 2738 2739 data-instant 2740 >Primrose 2024</a><price-list class="price-list "><sale-price class="h6 text-subdued">
2741 <span class="sr-only">Sale price</span>$35.00</sale-price></price-list> 2742</div></div></div> 2743</product-card> 2744<product-card 2745 class="product-card" 2746 2747 reveal-on-scroll="true" 2748 2749 handle="signature-zinfandel-2024" 2750><div class="product-card__figure"><a href="/products/signature-zinfandel-2024" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/13.png?v=1766569348&width=500" alt="Signature Zinfandel 2023" srcset="//stockmansridge.com.au/cdn/shop/files/13.png?v=1766569348&width=200 200w, //stockmansridge.com.au/cdn/shop/files/13.png?v=1766569348&width=300 300w, //stockmansridge.com.au/cdn/shop/files/13.png?v=1766569348&width=400 400w, //stockmansridge.com.au/cdn/shop/files/13.png?v=1766569348&width=500 500w" width="500" height="500" loading="lazy" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/14.png?v=1766569359&width=500" alt="Signature Zinfandel 2023" srcset="//stockmansridge.com.au/cdn/shop/files/14.png?v=1766569359&width=200 200w, //stockmansridge.com.au/cdn/shop/files/14.png?v=1766569359&width=300 300w, //stockmansridge.com.au/cdn/shop/files/14.png?v=1766569359&width=400 400w, //stockmansridge.com.au/cdn/shop/files/14.png?v=1766569359&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2751<a href="/collections/vendors?q=Zinfandel" class="vendor smallcaps heading">Zinfandel</a><div class="v-stack justify-items-center gap-1"><a 2752 href="/products/signature-zinfandel-2024" 2753 class="product-title h6 " 2754 2755 data-instant 2756 >Signature Zinfandel 2023</a><price-list class="price-list "><sale-price class="h6 text-subdued"> 2757 <span class="sr-only">Sale price</span>$46.00</sale-price></price-list> 2758</div></div></div> 2759</product-card> 2760<product-card 2761 class="product-card" 2762 2763 reveal-on-scroll="true" 2764 2765 handle="signature-left-bank-2022" 2766><div class="product-card__figure"><a href="/products/signature-left-bank-2022" class="product-card__media" draggable="false" data-instant><img src="//stockmansridge.com.au/cdn/shop/files/21.png?v=1766569832&width=500" alt="Signature Left Bank 2022" srcset="//stockmansridge.com.au/cdn/shop/files/21.png?v=1766569832&width=200 200w, //stockmansridge.com.au/cdn/shop/files/21.png?v=1766569832&width=300 300w, //stockmansridge.com.au/cdn/shop/files/21.png?v=1766569832&width=400 400w, //stockmansridge.com.au/cdn/shop/files/21.png?v=1766569832&width=500 500w" width="500" height="500" loading="lazy" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" class="product-card__image product-card__image--primary aspect-short"><img src="//stockmansridge.com.au/cdn/shop/files/22.png?v=1766569836&width=500" alt="Signature Left Bank 2022" srcset="//stockmansridge.com.au/cdn/shop/files/22.png?v=1766569836&width=200 200w, //stockmansridge.com.au/cdn/shop/files/22.png?v=1766569836&width=300 300w, //stockmansridge.com.au/cdn/shop/files/22.png?v=1766569836&width=400 400w, //stockmansridge.com.au/cdn/shop/files/22.png?v=1766569836&width=500 500w" width="500" height="500" loading="lazy" class="product-card__image product-card__image--secondary" fetchpriority="low" sizes="(max-width: 699px) 74vw, (max-width: 999px) 38vw, calc((100vw - 96px) / 4 - (24px / 4 * 3))" draggable="false" aria-hidden="true"></a></div><div class="product-card__info empty:hidden"><div class="v-stack justify-items-center gap-2"> 2767<a href="/collections/vendors?q=Cabernet%20Sauvignon%20Merlot" class="vendor smallcaps heading">Cabernet Sauvignon Merlot</a><div class="v-stack justify-items-center gap-1"><a 2768 href="/products/signature-left-bank-2022" 2769 class="product-title h6 " 2770 2771 data-instant 2772 >Signature Left Bank 2022</a><price-list class="price-list "><sale-price class="h6 text-subdued">
2773 <span class="sr-only">Sale price</span>$46.00</sale-price></price-list> 2774</div></div></div> 2775</product-card> 2776</scroll-carousel> 2777 2778 <carousel-next-button class="floating-controls-container__control" aria-controls="featured-collections-product-list-carousel-collection_TE7nRK"> 2779 <button type="button" class="prev-next-button prev-next-button--next circle-button hover:animate-icon-inline"> 2780 <span class="sr-only">Next</span><svg aria-hidden="true" focusable="false" fill="none" width="16" class="icon icon-arrow-right icon--direction-aware" viewBox="0 0 16 18"> 2781 <path d="m5 17 8-8-8-8" stroke="currentColor" stroke-linecap="square"/> 2782 </svg></button> 2783 </carousel-next-button> 2784 </product-list></div></featured-collections-carousel> 2785 </div> 2786 </div> 2787 </div> 2788</section><section id="shopify-section-template--19030006661219__testimonials_fNrMmk" class="shopify-section shopify-section--testimonials"><style> 2789 #shopify-section-template--19030006661219__testimonials_fNrMmk { 2790 --testimonials-font-size: calc(clamp(1.125rem, 1.064516129032258rem + 0.25806451612903225vw, 1.25rem) * 1); 2791 } 2792 </style><div 2793 class="section-spacing color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 " 2794 style="--border-color: var(--text-color) / 0.15;" 2795 > 2796 <div class="container"> 2797 <div class="section-stack"> 2798 <div class="section-header justify-self-center text-center"><div class="prose"><h2 class="h2">Customer Reviews</h2></div></div><div class="testimonial-list"><testimonial-carousel 2799 allow-swipe 2800 2801 autoplay="5" 2802 2803 class="testimonial-carousel" 2804 id="carousel-template--19030006661219__testimonials_fNrMmk" 2805 ><div class="testimonial-item text-center is-selected" ><div class="prose"><h5><strong>Lovely winery!</strong></h5><p>This is a lovely winery with friendly, attentive staff! The fire pit experience is a beautiful, relaxed way to spend an afternoon, with a fire lit for you and live music.</p></div><div class="v-stack justify-items-center gap-4 "><p class="text-base">Tracey Elphinstone</p></div></div><div class="testimonial-item text-center " ><div class="prose"><h5>Favourite!</h5><p>My favourite winery of the weekend, lovely atmosphere.</p></div><div class="v-stack justify-items-center gap-4 "><p class="text-base">Katrina Ooms</p></div></div><div class="testimonial-item text-center " ><div class="prose"><h5>Amazing place</h5><p>This is such an amazing place. The views were just gorgeous. The people so warm and inviting. Such a tranquil setting and so easy to relax and unwind. We tried their grazing platter and their wine pairings. Both were just lovely.</p></div><div class="v-stack justify-items-center gap-4 "><p class="text-base">Radhika Aiyer</p></div></div></testimonial-carousel><carousel-navigation aria-controls="carousel-template--19030006661219__testimonials_fNrMmk" class="page-dots "><button 2806 class="tap-area" 2807 aria-current="true" 2808 aria-label="Go to item 1" 2809 > 2810 <span class="sr-only">Go to item 1</span> 2811 </button><button 2812 class="tap-area" 2813 aria-current="false" 2814 aria-label="Go to item 2" 2815 > 2816 <span class="sr-only">Go to item 2</span> 2817 </button><button 2818 class="tap-area" 2819 aria-current="false" 2820 aria-label="Go to item 3" 2821 > 2822 <span class="sr-only">Go to item 3</span> 2823 </button></carousel-navigation></div> 2824 </div> 2825 </div> 2826 </div> 2827</section><section id="shopify-section-template--19030006661219__rich_text_q7aBw6" class="shopify-section shopify-section--rich-text"><div class="color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 section-spacing bordered-section"> 2828 <div class="container container--sm"> 2829 <div class="prose text-center"><p class="h1" >Stockman's Ridge Wines</p><div ><p>Welcome to Stockmanâs Ridge Wines, a family-run winery and vineyard in the heart of Orange NSW, known for c
2829ool climate wines with depth, character, and balance.</p><p>Set at elevation in one of Australiaâs leading wine regions, we focus on farming for flavour, working with the land <br/>with a growing focus on regenerative and sustainable farming practice, paying attention to soil health, and making hands-on decisions in the vineyard that shape how our wines taste in the glass. </p><p>At the cellar door, itâs a different story. Relaxed, welcoming, and unpretentious, our wine tastings in Orange NSW are designed to be easy to enjoy - no jargon, no pressure, just genuinely good wine.</p><p>Beyond the cellar door, Stockmanâs Ridge is also a destination for weddings and events in Orange, offering panoramic vineyard views, down-to-earth country hospitality, and a setting that feels as good as it looks.<br/><em><strong><br/>"There are easier ways to grow grapes and make wine, weâre just not interested in them."</strong></em></p></div></div> 2830 </div> 2831 </div> 2832</section> 2833<!-- BEGIN sections: footer-group --> 2834<footer id="shopify-section-sections--19030007283811__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer"><style> 2835 #shopify-section-sections--19030007283811__footer { 2836 --footer-content-justify-items: space-between; 2837 } 2838</style><div class="footer color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 "> 2839 <div class="container"> 2840 <div class="footer__inner"><div class="footer__block-list"><div class="footer__block footer__block--app" ><div id="shopify-block-ANktVV0hRMElSc3FXY__klaviyo_email_marketing_sms_form_embed_block_B6Rr9k" class="shopify-block shopify-app-block"> 2841 <div class="klaviyo-form-SnBmcy"></div> 2842 2843 2844 2845 2846</div></div><div class="footer__block footer__block--links" ><div class="v-stack gap-4 sm:gap-5 "><p class="h6">CUSTOMER SERVICE</p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li> 2847 <a href="/search" class="link-faded">SEARCH</a> 2848 </li><li> 2849 <a href="/pages/terms-conditions" class="link-faded">TERMS & CONDITIONS</a> 2850 </li><li> 2851 <a href="/pages/accessibility-and-inclusion-statement" class="link-faded">ACCESS & INCLUSION</a> 2852 </li><li> 2853 <a href="/pages/contact-us" class="link-faded">CONTACT US</a> 2854 </li><li> 2855 <a href="https://account.stockmansridge.com.au/orders?locale=en®ion_country=AU&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJzdG9ja21hbnMtcmlkZ2Utd2luZXMubXlzaG9waWZ5LmNvbSIsImZsYWdzIjpbXSwiZXhwIjoxNzkxNzUzNDQwLCJuYmYiOjE3OTExNDg2NDB9.Eb_zfh9QRr8w6CkL5R_VLyUCIcEf_nu19fTvjZQuZjc" class="link-faded">MY ACCOUNT</a> 2856 </li></ul></div></div><div class="footer__block footer__block--links" ><div class="v-stack gap-4 sm:gap-5 "><p class="h6">DISCOVER</p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li> 2857 <a href="/pages/visit" class="link-faded">VISIT</a> 2858 </li><li> 2859 <a href="/collections/current" class="link-faded">WINE</a> 2860 </li><li> 2861 <a href="/pages/events" class="link-faded">WHAT'S ON</a> 2862 </li><li> 2863 <a href="/pages/story" class="link-faded">STORY</a> 2864 </li><li> 2865 <a href="https://swagmanhomestead.hostexbooking.site/listing/112067" class="link-faded">ACCOMMODATION</a> 2866 </li><li> 2867 <a href="/pages/weddings" class="link-faded">WEDDINGS</a> 2868 </li></ul></div></div><div class="footer__block footer__block--text" ><div class="v-stack gap-4 sm:gap-5"><p class="h6">CONTACT US</p><div class="prose text-subdued"><p><a href="https://maps.app.goo.gl/w6R2f22oFbHLyFey8">21 Boree Lane, Lidster NSW 2800</a></p><p><a href="tel:+61 2 6365 6212">+61 2 6365 6212</a></p><p><a href="mailto:[email protected]">[email protected]</a></p></div></div></div></div><ul class="social-media social-media--list unstyled-list" role="list"><li class="social-media__item branding-colors--facebook"> 2869 <a href="https://www.facebook.com/StockmansRidge" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Facebook"><svg aria-hidden="true" focusable="false" width="24" class="icon icon-facebook" viewB
2869ox="0 0 24 24"> 2870 <path fill-rule="evenodd" clip-rule="evenodd" d="M10.183 21.85v-8.868H7.2V9.526h2.983V6.982a4.17 4.17 0 0 1 4.44-4.572 22.33 22.33 0 0 1 2.667.144v3.084h-1.83a1.44 1.44 0 0 0-1.713 1.68v2.208h3.423l-.447 3.456h-2.97v8.868h-3.57Z" fill="currentColor"/> 2871 </svg></a> 2872 </li><li class="social-media__item branding-colors--instagram"> 2873 <a href="https://www.instagram.com/stockmansridge/" class="tap-area" target="_blank" rel="noopener" aria-label="Follow on Instagram"><svg aria-hidden="true" focusable="false" width="24" class="icon icon-instagram" viewBox="0 0 24 24"> 2874 <path fill-rule="evenodd" clip-rule="evenodd" d="M12 2.4c-2.607 0-2.934.011-3.958.058-1.022.046-1.72.209-2.33.446a4.705 4.705 0 0 0-1.7 1.107 4.706 4.706 0 0 0-1.108 1.7c-.237.611-.4 1.31-.446 2.331C2.41 9.066 2.4 9.392 2.4 12c0 2.607.011 2.934.058 3.958.046 1.022.209 1.72.446 2.33a4.706 4.706 0 0 0 1.107 1.7c.534.535 1.07.863 1.7 1.108.611.237 1.309.4 2.33.446 1.025.047 1.352.058 3.959.058s2.934-.011 3.958-.058c1.022-.046 1.72-.209 2.33-.446a4.706 4.706 0 0 0 1.7-1.107 4.706 4.706 0 0 0 1.108-1.7c.237-.611.4-1.31.446-2.33.047-1.025.058-1.352.058-3.959s-.011-2.934-.058-3.958c-.047-1.022-.209-1.72-.446-2.33a4.706 4.706 0 0 0-1.107-1.7 4.705 4.705 0 0 0-1.7-1.108c-.611-.237-1.31-.4-2.331-.446C14.934 2.41 14.608 2.4 12 2.4Zm0 1.73c2.563 0 2.867.01 3.88.056.935.042 1.443.199 1.782.33.448.174.768.382 1.104.718.336.336.544.656.718 1.104.131.338.287.847.33 1.783.046 1.012.056 1.316.056 3.879 0 2.563-.01 2.867-.056 3.88-.043.935-.199 1.444-.33 1.782a2.974 2.974 0 0 1-.719 1.104 2.974 2.974 0 0 1-1.103.718c-.339.131-.847.288-1.783.33-1.012.046-1.316.056-3.88.056-2.563 0-2.866-.01-3.878-.056-.936-.042-1.445-.199-1.783-.33a2.974 2.974 0 0 1-1.104-.718 2.974 2.974 0 0 1-.718-1.104c-.131-.338-.288-.847-.33-1.783-.047-1.012-.056-1.316-.056-3.879 0-2.563.01-2.867.056-3.88.042-.935.199-1.443.33-1.782.174-.448.382-.768.718-1.104a2.974 2.974 0 0 1 1.104-.718c.338-.131.847-.288 1.783-.33C9.133 4.14 9.437 4.13 12 4.13Zm0 11.07a3.2 3.2 0 1 1 0-6.4 3.2 3.2 0 0 1 0 6.4Zm0-8.13a4.93 4.93 0 1 0 0 9.86 4.93 4.93 0 0 0 0-9.86Zm6.276-.194a1.152 1.152 0 1 1-2.304 0 1.152 1.152 0 0 1 2.304 0Z" fill="currentColor"/> 2875 </svg></a> 2876 </li></ul><div class="footer__aside"><p class="heading text-subdued text-xxs"> 2877 © 2026 - Stockman's Ridge Wines 2878</p></div> 2879 </div> 2880 </div> 2881</div> 2882 2883 2884</footer><section id="shopify-section-sections--19030007283811__rich_text_rHi7xy" class="shopify-section shopify-section-group-footer-group shopify-section--rich-text"><div class="color-scheme color-scheme--scheme-29efbad6-5dbb-42a1-911b-838586574397 color-scheme--bg-ba7a3d0f3955641d9ca4aabb3ef3e723 section-spacing bordered-section"> 2885 <div class="container container--lg"> 2886 <div class="prose text-center"><div ><p>COPYRIGHT 2025 - All Rights Reserved â Stockmanâs Ridge Wines ABN 23 734 681 571 New South Wales Liquor License No. LIQW880014505.<br/>LIQUOR ACT 2007 - IT IS AGAINST THE LAW TO SELL OR SUPPLY ALCOHOL TO, OR TO OBTAIN ALCOHOL ON BEHALF OF, A PERSON UNDER THE AGE OF 18 YEARS. Please Drink Responsibly.<br/><br/></p></div></div> 2887 </div> 2888 </div> 2889</section> 2890<!-- END sections: footer-group --></main> 2891 <style> ul li::marker {color: #e8e8e8 !important;} </style> 2892<div id="shopify-block-AQXVseTJmTnRYajVON__12741885996470144523" class="shopify-block shopify-app-block">
2892<script type="text/javascript" src="https://enormapps.com/gallery-v2/assets/frontend/js/embed.js" async="" defer="defer"></script>
vendor: 2 bytes, line 2892
2892
2893<script type="text/javascript" src="https://enormapps.com/gallery-v2/assets/frontend/js/enap-video.js" async defer></script>
2893 2894 2895</div><div id="shopify-block-AeXVNeFFXTDJQeW0xa__9278379683843197553" class="shopify-block shopify-app-block">
2895<script> 2896 window.AppointoProductObject = {"shop_id":21114,"product_details":[{"handle":"saturday-vineyard-walk-with-jonno","id":"gid:\/\/shopify\/Product\/7483464745059","activate":true,"show_widget":true},{"handle":"wine-chocolate-1","id":"gid:\/\/shopify\/Product\/7202538324067","activate":true,"show_widget":true},{"handle":"new-high-tea","id":"gid:\/\/shopify\/Product\/6876998991971","activate":true,"show_widget":true},{"handle":"new-book-a-bonfire-bbq","id":"gid:\/\/shopify\/Product\/6876979200099","activate":true,"show_widget":true},{"handle":"new-wine-tastings","id":"gid:\/\/shopify\/Product\/6876976087139","activate":true,"show_widget":true},{"handle":"live-music","id":"gid:\/\/shopify\/Product\/6876978708579","activate":true,"show_widget":true},{"handle":"new-grazing-boards-and-platters","id":"gid:\/\/shopify\/Product\/6877004169315","activate":true,"show_widget":true},{"handle":"pinot-noir-experience","id":"gid:\/\/shopify\/Product\/6877236691043","activate":true,"show_widget":true},{"handle":"marquee-hire-1","id":"gid:\/\/shopify\/Product\/6877240131683","activate":true,"show_widget":true},{"handle":"the-great-canadian-smores-experience","id":"gid:\/\/shopify\/Product\/8021681274979","activate":true,"show_widget":true},{"handle":"golden-hour-a-vintners-table","id":"gid:\/\/shopify\/Product\/8069547327587","activate":true,"show_widget":true},{"handle":"golden-hour-a-vintners-table-copy","id":"gid:\/\/shopify\/Product\/8072414068835","activate":true,"show_widget":true},{"handle":"october-family-fun-day","id":"gid:\/\/shopify\/Product\/8072447656035","activate":true,"show_widget":true},{"handle":"spring-garden-party","id":"gid:\/\/shopify\/Product\/8126531764323","activate":true,"show_widget":true}],"locale_values":{"et-EE":{"addToCart":"Lisa ostukorvi","loadingCalendar":"Laeb kalendrit"},"en":{"addToCart":"Add to Cart","loadingCalendar":"Loading Calendar"},"ar":{"addToCart":"اض٠اÙ٠عربة Ø§ÙØªØ³ÙÙ","loadingCalendar":"تØÙ ÙÙ Ø§ÙØªÙÙÙÙ "},"bg":{"addToCart":"ÐобавÑне кÑм ÐолиÑкаÑа","loadingCalendar":"ÐалендаÑÑÑ Ñе заÑежда"},"ca":{"addToCart":"Afegeix a la cistella","loadingCalendar":"S'està carregant el calendari"},"lv":{"addToCart":"Pievienot groziÅam","loadingCalendar":"LÄdÄ kalendÄru"},"da":{"addToCart":"Tilføj til kurv","loadingCalendar":"Indlæser kalender"},"de":{"addToCart":"In den Warenkorb","loadingCalendar":"Kalender wird geladen"},"es":{"addToCart":"Añadir al carrito","loadingCalendar":"Cargando Calendario"},"fi":{"addToCart":"Lisää ostoskoriin","loadingCalendar":"Ladataan kalenteria"},"fr":{"addToCart":"Ajouter au panier","loadingCalendar":"Chargement du calendrier"},"id":{"addToCart":"Masukkan ke keranjang","loadingCalendar":"Memuat Kalender"},"is":{"addToCart":"Bæta við körfu","loadingCalendar":"Hleður dagatal"},"it":{"addToCart":"Aggiungi al carrello","loadingCalendar":"Caricamento calendario"},"ja":{"addToCart":"ã«ã¼ãã«å ¥ãã","loadingCalendar":"ã«ã¬ã³ãã¼ãèªã¿è¾¼ãã§ãã¾ã"},"ms":{"addToCart":"Tambah ke Troli","loadingCalendar":"Memuatkan Kalendar"},"nl":{"addToCart":"BOEK DEZE SESSIE","loadingCalendar":"Kalender laden"},"no":{"addToCart":"Legg i handlekurv","loadingCalendar":"Laster kalender"},"pt":{"addToCart":"Adicionar ao carrinho","loadingCalendar":"Carregando calendário"},"pl":{"addToCart":"Dodaj do koszyka","loadingCalendar":"Åadowanie kalendarza"},"ro":{"addToCart":"AdaugÄ Ã®n coÈ","loadingCalendar":"Se încarcÄ calendarul"},"ru":{"addToCart":"ÐобавиÑÑ Ð² коÑзинÑ","loadingCalendar":"ÐагÑÑзка календаÑÑ"},"sk":{"addToCart":"PridaÅ¥ do koÅ¡Ãka","loadingCalendar":"NaÄÃtava sa kalendár"},"et":{"addToCart":"Lisa ostukorvi","loadingCalendar":"Laeb kalendrit"},"sl":{"addToCart":"Dodaj v voziÄek","loadingCalendar":"Nalaganje koledarja"},"sv":{"addToCart":"Lägg till i kundvagn","loadingCalendar":"Laddar kalender"},"th":{"addToCart":"หยิà¸à¹à¸ªà¹à¸£à¸à¹à¸à¹à¸","loadingCalendar":"à¸à¸³à¸¥à¸±à¸à¹à¸«à¸¥à¸à¸à¸à¸´à¸à¸´à¸"},"tr":{"addToCart":"Sepete Ekle","loadingCalendar":"Takvim Yükleniyor"},"vi":{"addToCart":"Thêm và o giá» hà ng","loadingCalendar":"Äang tải lá»ch"},"zh-tw":{"addToCart":"å å ¥è³¼ç©è»","loadingCalendar":"å è½½æ¥å"},"cs":{"addToCart":"PÅidat do koÅ¡Ãku","loadingCalendar":"NaÄÃtánà kalendáÅe"},"hu":{"addToCart":"Kosárba helyezés","loadingCalendar":"Naptár betöltése"}}}; 2897</script>
2897 2898 2899</div><div id="shopify-block-ANEZ6YUIrWjB2bzZUU__11068332061543699368" class="shopify-block shopify-app-block"></div>
2899<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2899 2900</body> 2901</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.