1<!DOCTYPE html> 2<html lang="en-US" prefix="og: https://ogp.me/ns#"> 3<head> 4 <!-- Google Tag Manager -->
5<script>
vendor: 327 bytes, lines 5-9
5(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 6new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 7j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 8'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 9})(window,document,'script','dataLayer','
9GTM-5KLBKRLJ
vendor: 3 bytes, line 9
9');
9</script>
9 10<!-- End Google Tag Manager --> 11 <!-- Google Tag Manager -->
11<script>
vendor: 327 bytes, line 11
11(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','
11GTM-TXPXJK2
vendor: 3 bytes, line 11
11');
11</script>
11 <!-- End Google Tag Manager --> 12 <meta name="facebook-domain-verification" content="kagmmbo4zfjtlic5q2axnorct5ssjy" /> 13
13<script src="https://cdn.userway.org/widget.js" data-account="wHjdXjOvMv"></script>
13 14<meta charset="UTF-8" />
15<script> 16var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),document.addEventListener("gform/theme/scripts_loaded",function(){gform.themeScriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>"function"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn("The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1."),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener("gform_main_scripts_loaded",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener("gform/theme/scripts_loaded",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener("DOMContentLoaded",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook("action",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook("filter",o,r,e,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,r){gform.removeHook("action",o,r)},removeFilter:function(o,r,e){gform.removeHook("filter",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+"_"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==r?t.apply(null,e):e[0]=t.apply(null,e)})),"filter"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}}); 17</script>
17 18 19<meta name='viewport' content='width=device-width, initial-scale=1.0' /> 20<meta http-equiv='X-UA-Compatible' content='IE=edge' /> 21<link rel="profile" href="https://gmpg.org/xfn/11" /> 22<meta name="dlm-version" content="5.2.2"> 23<!-- Search Engine Optimization by Rank Math - https://rankmath.com/ --> 24<title>Product - Keuka Spring Vineyards</title> 25<meta name="robots" content="index, follow, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> 26<meta property="og:locale" content="en_US" /> 27<meta property="og:type" content="article" /> 28<meta property="og:title" content="Product - Keuka Spring Vineyards" /> 29<meta property="og:site_name" content="Keuka Spring Vineyards" /> 30<meta property="og:updated_time" content="2026-01-09T13:35:38-05:00" /> 31<meta property="article:published_time" content="2023-01-09T23:43:48-05:00" /> 32<meta property="article:modified_time" content="2026-01-09T13:35:38-05:00" /> 33<meta name="twitter:card" content="summary_large_image" /> 34<meta name="twitter:title" content="Product - Keuka Spring Vineyards" /> 35<meta name="twitter:label1" content="Time to read" /> 36<meta name="twitter:data1" content="Less than a minute" />
37<script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":["Person","Organization"],"@id":"https://keukaspringvineyards.com/#person","name":"Keuka Spring Vineyards","logo":{"@type":"ImageObject","@id":"https://keukaspringvineyards.com/#logo","url":"https://keukaspringvineyards.com/wp-content/uploads/2025/01/logo-150x150.png","contentUrl":"https://keukaspringvineyards.com/wp-content/uploads/2025/01/logo-150x150.png","caption":"Keuka Spring Vineyards","inLanguage":"en-US"},"image":{"@type":"ImageObject","@id":"https://keukaspringvineyards.com/#logo","url":"https://keukaspringvineyards.com/wp-content/uploads/2025/01/logo-150x150.png","contentUrl":"https://keukaspringvineyards.com/wp-content/uploads/2025/01/logo-150x150.png","caption":"Keuka Spring Vineyards","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://keukaspringvineyards.com/#website","url":"https://keukaspringvineyards.com","name":"Keuka Spring Vineyards","publisher":{"@id":"https://keukaspringvineyards.com/#person"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"#webpage","url":"","name":"Product - Keuka Spring Vineyards","datePublished":"2023-01-09T23:43:48-05:00","dateModified":"2026-01-09T13:35:38-05:00","isPartOf":{"@id":"https://keukaspringvineyards.com/#website"},"inLanguage":"en-US"},{"@type":"Person","@id":"https://keukaspringvineyards.com/author/lauren/","name":"Lauren Binnert","url":"https://keukaspringvineyards.com/author/lauren/","image":{"@type":"ImageObject","@id":"https://secure.gravatar.com/avatar/84af6a74e0bff602ca01cb7c2cea9e48615cbde26682cb74542aaa4987d62ca0?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/84af6a74e0bff602ca01cb7c2cea9e48615cbde26682cb74542aaa4987d62ca0?s=96&d=mm&r=g","caption":"Lauren Binnert","inLanguage":"en-US"}},{"@type":"Article","headline":"Product - Keuka Spring Vineyards","datePublished":"2023-01-09T23:43:48-05:00","dateModified":"2026-01-09T13:35:38-05:00","author":{"@id":"https://keukaspringvineyards.com/author/lauren/","name":"Lauren Binnert"},"publisher":{"@id":"https://keukaspringvineyards.com/#person"},"name":"Product - Keuka Spring Vineyards","@id":"#richSnippet","isPartOf":{"@id":"#webpage"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"#webpage"}}]}</script>
37 38<!-- /Rank Math WordPress SEO plugin --> 39 40<link rel='dns-prefetch' href='//cdn.commerce7.com' /> 41<link rel='dns-prefetch' href='//cdnjs.cloudflare.com' /> 42<link rel="alternate" type="application/rss+xml" title="Keuka Spring Vineyards » Feed" href="https://keukaspringvineyards.com/feed/" /> 43<link rel="alternate" type="application/rss+xml" title="Keuka Spring Vineyards » Comments Feed" href="https://keukaspringvineyards.com/comments/feed/" /> 44<link rel="alternate" type="text/calendar" title="Keuka Spring Vineyards » iCal Feed" href="https://keukaspringvineyards.com/all-events/?ical=1" /> 45<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://keukaspringvineyards.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fkeukaspringvineyards.com%2Fproduct%2F" /> 46<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://keukaspringvineyards.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fkeukaspringvineyards.com%2Fproduct%2F&format=xml" /> 47<link rel="preload" href="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/webfonts/fa-solid-900.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 48<link rel="preload" href="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/webfonts/fa-regular-400.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 49<link rel="preload" href="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/webfonts/fa-brands-400.woff2" as="font" type="font/woff2" crossorigin="anonymous"> 50<style id='wp-img-auto-sizes-contain-inline-css'> 51img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px} 52/*# sourceURL=wp-img-auto-sizes-contain-inline-css */ 53</style> 54<link rel='stylesheet' id='tribe-events-pro-mini-calendar-block-styles-css' href='https://keukaspringvineyards.com/wp-content/plugins/events-calendar-pro/build/css/tribe-events-pro-mini-calendar-block.css?ver=7.7.14' media='all' /> 55<style id='wp-emoji-styles-inline-css'> 56 57 img.wp-smiley, img.emoji { 58 display: inline !important; 59 border: none !important; 60 box-shadow: none !important; 61 height: 1em !important; 62 width: 1em !important; 63 margin: 0 0.07em !important; 64 vertical-align: -0.1em !important; 65 background: none !important; 66 padding: 0 !important; 67 } 68/*# sourceURL=wp-emoji-styles-inline-css */ 69</style> 70<link rel='stylesheet' id='wp-block-library-css' href='https://keukaspringvineyards.com/wp-includes/css/dist/block-library/style.min.css?ver=6.9.10' media='all' /> 71 72<style id='classic-theme-styles-inline-css'> 73/*! This file is auto-generated */ 74.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 75/*# sourceURL=/wp-includes/css/classic-themes.min.css */ 76</style> 77<style id='global-styles-inline-css'> 78:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--fl-heading-text: #101820;--wp--preset--color--fl-body-bg: #ffffff;--wp--preset--color--fl-body-text: #101820;--wp--preset--color--fl-accent: #b5a369;--wp--preset--color--fl-accent-hover: #101820;--wp--preset--color--fl-topbar-bg: #ffffff;--wp--preset--color--fl-topbar-text: #757575;--wp--preset--color--fl-topbar-link: #2b7bb9;--wp--preset--color--fl-topbar-hover: #2b7bb9;--wp--preset--color--fl-header-bg: #ffffff;--wp--preset--color--fl-header-text: #757575;--wp--preset--color--fl-header-link: #757575;--wp--preset--color--fl-header-hover: #2b7bb9;--wp--preset--color--fl-nav-bg: #ffffff;--wp--preset--color--fl-nav-link: #757575;--wp--preset--color--fl-nav-hover: #2b7bb9;--wp--preset--color--fl-content-bg: #ffffff;--wp--preset--color--fl-footer-widgets-bg: #ffffff;--wp--preset--color--fl-footer-widgets-text: #757575;--wp--preset--color--fl-footer-widgets-link: #2b7bb9;--wp--preset--color--fl-footer-widgets-hover: #2b7bb9;--wp--preset--color--fl-footer-bg: #ffffff;--wp--preset--color--fl-footer-text: #757575;--wp--preset--color--fl-footer-link: #2b7bb9;--wp--preset--color--fl-footer-hover: #2b7bb9;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,
780) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
78.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 79/*# sourceURL=global-styles-inline-css */ 80</style> 81 82<link rel='stylesheet' id='fl-builder-layout-30-css' href='https://keukaspringvineyards.com/wp-content/uploads/bb-plugin/cache/30-layout.css?ver=cf55ce6313ffdbcad632665f93a9f948' media='all' /> 83<link rel='stylesheet' id='c7css-css' href='https://cdn.commerce7.com/v2/commerce7.css' media='all' /> 84<link rel='stylesheet' id='font-awesome-5-css' href='https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/fonts/fontawesome/5.15.4/css/all.min.css?ver=2.10.2.3' media='all' /> 85<link rel='stylesheet' id='uabb-animate-css' href='https://keukaspringvineyards.com/wp-content/plugins/bb-ultimate-addon/modules/info-list/css/animate.css' media='all' /> 86<link rel='stylesheet' id='ultimate-icons-css' href='https://keukaspringvineyards.com/wp-content/uploads/bb-plugin/icons/ultimate-icons/style.css?ver=2.10.2.3' media='all' /> 87<link rel='stylesheet' id='fl-builder-layout-bundle-6574e367a3192d0c5ac98cd3bd586f4a-css' href='https://keukaspringvineyards.com/wp-content/uploads/bb-plugin/cache/6574e367a3192d0c5ac98cd3bd586f4a-layout-bundle.css?ver=2.10.2.3-1.5.3.2' media='all' /> 88<link rel='stylesheet' id='fontawesome5-css' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css?ver=6.9.10' media='all' /> 89<link rel='stylesheet' id='jquery-magnificpopup-css' href='https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/css/jquery.magnificpopup.min.css?ver=2.10.2.3' media='all' /> 90<link rel='stylesheet' id='base-css' href='https://keukaspringvineyards.com/wp-content/themes/bb-theme/css/base.min.css?ver=1.7.19.2' media='all' /> 91<link rel='stylesheet' id='fl-automator-skin-css' href='https://keukaspringvineyards.com/wp-content/uploads/bb-theme/skin-6a5a5f98c0101.css?ver=1.7.19.2' media='all' /> 92<link rel='stylesheet' id='fl-child-theme-css' href='https://keukaspringvineyards.com/wp-content/themes/bb-theme-child/style.css?ver=6.9.10' media='all' /> 93<link rel='stylesheet' id='pp-animate-css' href='https://keukaspringvineyards.com/wp-content/plugins/bbpowerpack/assets/css/animate.min.css?ver=3.5.1' media='all' />
94<script src="https://keukaspringvineyards.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
vendor: 1 bytes, line 94
94
95<script src="https://keukaspringvineyards.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
vendor: 1 bytes, line 95
95
96<script id="breeze-prefetch-js-extra"> 97var breeze_prefetch = {"local_url":"https://keukaspringvineyards.com","ignore_remote_prefetch":"1","ignore_list":["wp-admin","wp-login.php"]}; 98//# sourceURL=breeze-prefetch-js-extra 99</script>
vendor: 1 bytes, line 99
99
100<script src="https://keukaspringvineyards.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js?ver=2.5.9" id="breeze-prefetch-js"></script>
100 101<link rel="https://api.w.org/" href="https://keukaspringvineyards.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://keukaspringvineyards.com/wp-json/wp/v2/pages/30" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://keukaspringvineyards.com/xmlrpc.php?rsd" /> 102<meta name="generator" content="WordPress 6.9.10" /> 103<link rel='shortlink' href='https://keukaspringvineyards.com/?p=30' /> 104
104<script> 105 var bb_powerpack = { 106 version: '2.42.3', 107 getAjaxUrl: function() { return atob( 'aHR0cHM6Ly9rZXVrYXNwcmluZ3ZpbmV5YXJkcy5jb20vd3AtYWRtaW4vYWRtaW4tYWpheC5waHA=' ); }, 108 callback: function() {}, 109 mapMarkerData: {}, 110 post_id: '30', 111 search_term: '', 112 current_page: 'https://keukaspringvineyards.com/product/ksv-virtual-gift-card/', 113 conditionals: { 114 is_front_page: false, 115 is_home: false, 116 is_archive: false, 117 current_post_type: '', 118 is_tax: false, 119 is_author: false, 120 current_author: false, 121 is_search: false, 122 } 123 }; 124 </script>
124 125 126<!-- Known Agents (https://knownagents.com/) --> 127 128<meta name="tec-api-version" content="v1"><meta name="tec-api-origin" content="https://keukaspringvineyards.com"><link rel="alternate" href="https://keukaspringvineyards.com/wp-json/tribe/events/v1/" /><link rel="icon" href="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-32x32.png" sizes="32x32" /> 129<link rel="icon" href="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-192x192.png" sizes="192x192" /> 130<link rel="apple-touch-icon" href="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-180x180.png" /> 131<meta name="msapplication-TileImage" content="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-270x270.png" /> 132 <style id="wp-custom-css"> 133 @media screen and (max-width: 768px) { 134 header.fl-theme-builder-header-shrink .login-icon { 135 margin-top: -4px; 136 } 137} 138 139/* ICONS FOR SECTION HEADERS (Larger with spacing) */ 140 141/* Tasting Notes */ 142.c7-tasting-notes-box .c7-section-header strong::before { 143 content: ""; 144 display: inline-block; 145 background-image: url('https://keukaspringvineyards.com/wp-content/uploads/2025/07/Tasting_Notes_Gold.svg'); 146 background-size: contain; 147 background-repeat: no-repeat; 148 width: 45px; 149 height: 45px; 150 margin-right: 10px; 151 margin-bottom: 8px; 152 vertical-align: middle; 153} 154 155/* Food Pairing */ 156.c7-food-pairing-box .c7-section-header strong::before { 157 content: ""; 158 display: inline-block; 159 background-image: url('https://keukaspringvineyards.com/wp-content/uploads/2025/07/Food_Pairings_Gold.svg'); 160 background-size: contain; 161 background-repeat: no-repeat; 162 width: 45px; 163 height: 45px; 164 margin-right: 10px; 165 margin-bottom: 8px; 166 vertical-align: middle; 167} 168 169/* Accolades */ 170.c7-accolades-wrapper strong::before { 171 content: ""; 172 display: inline-block; 173 background-image: url('https://keukaspringvineyards.com/wp-content/uploads/2025/07/Accolades_Gold.svg'); 174 background-size: contain; 175 background-repeat: no-repeat; 176 width: 45px; 177 height: 45px; 178 margin-right: 10px; 179 margin-bottom: 8px; 180 vertical-align: middle; 181} 182 183/* Technical Specifications */ 184.c7-tech-specs > strong::before { 185 content: ""; 186 display: inline-block; 187 background-image: url('https://keukaspringvineyards.com/wp-content/uploads/2025/08/Technical_Data_Gold.svg'); 188 background-size: contain; 189 background-repeat: no-repeat; 190 width: 45px; 191 height: 45px; 192 margin-right: 10px; 193 margin-bottom: 8px; 194 vertical-align: middle; 195} 196 197/* Keep login and cart inline */ 198.c7-header-icons { 199 display: flex; 200 align-items: center; 201 gap: 8px; 202} 203 204/* Remove default stacking behavior */ 205#c7-account, 206#c7-cart { 207 display: flex; 208 align-items: center; 209} 210 211/* Replace âLog inâ text with Font Awesome outline icon */ 212#c7-account .c7-user-nav__account__login { 213 font-size: 0; /* Hides the "Log in" text */ 214 display: flex; 215 align-items: center; 216} 217 218#c7-account .c7-user-nav__account__login::before { 219 content: "\f007"; /* Outline user icon */ 220 font-family: "Font Awesome 5 Free"; 221 font-weight: 100; /* Regular weight = outline icon */ 222 font-style: normal; 223 font-size: 18px; 224 color: white; 225 display: inline-block; 226} 227 228#c7-account .c7-user-nav__account__login::before { 229 position: relative; 230 top: 2px; /* Adjust as needed: 1pxâ3px usually does the trick */ 231} 232 233/* Username should be white */ 234#c7-account .c7-user-nav__account__name { 235 color: white !important; 236 display: flex; 237 align-items: center; 238} 239 240/* Dropdown text and background styling */ 241#c7-account .c7-user-nav__account__dropdown, 242#c7-account .c7-user-nav__account__dropdown * { 243 color: white !important; 244 background-color: #000 !important; 245} 246 247/* Make arrow and logout icon white */ 248#c7-account .c7-user-nav__account svg { 249 stroke: white !important; 250} 251 252/* --- Target all Commerce7 account UI in secondary header --- */ 253.secondary-header #c7-account, 254.secondary-header #c7-account * { 255 color: black !important; 256 fill: black !important; 257 stroke: black !important; 258} 259 260/* Specifically make the Font Awesome icon black */ 261.secondary-header #c7-account .c7-user-nav__account__login::before { 262 color: black !important; 263} 264 265/* Target the username text after login */ 266.secondary-header #c7-account .c7-user-nav__account__name { 267 color: black !important; 268} 269 270/* Target dropdown links & email inside account dropdown */ 271.secondary-header #c7-account .c7-user-nav__account__dropdown, 272.secondary-header #c7-account .c7-user-nav__account__dropdown * { 273 color: black !important; 274 background-color: white !important; /* Optional: white dropdown background */ 275} 276 277/* Ensure SVGs like the chevron and logout arrow also turn black */ 278.secondary-header #c7-account svg { 279 stroke: black !important; 280} 281 282/* When the sticky header shrinks, make the C7 profile elements black */
283.fl-theme-builder-header-shrink #c7-account, 284.fl-theme-builder-header-shrink #c7-account * { 285 color: black !important; 286 fill: black !important; 287 stroke: black !important; 288} 289 290/* Specific fix for Font Awesome icon if you're using ::before content */ 291.fl-theme-builder-header-shrink #c7-account .c7-user-nav__account__login::before { 292 color: black !important; 293} 294 295/* Fix username text color */ 296.fl-theme-builder-header-shrink #c7-account .c7-user-nav__account__name { 297 color: black !important; 298} 299 300/* Fix dropdown menu and text */ 301.fl-theme-builder-header-shrink #c7-account .c7-user-nav__account__dropdown, 302.fl-theme-builder-header-shrink #c7-account .c7-user-nav__account__dropdown * { 303 color: black !important; 304 background-color: white !important; 305} 306 307/* Make the dropdown chevron and logout arrow black */ 308.fl-theme-builder-header-shrink #c7-account svg { 309 stroke: black !important; 310} 311 312/* Shop */ 313.bundles .c7-product{ 314 margin: 20px; 315 background: none; 316} 317.bundles .custom-teaser-product-title a { 318 font-size: 20px!important; 319 font-weight: 500; 320 margin-bottom: 0.25rem; 321 color: #000000!important; 322 font-family: var(--c7-heading-font-family); 323 line-height: 1.4; 324 letter-spacing: 0.46em !important; 325} 326.bundles .c7-product__subtitle { 327 font-size: 18px; 328 font-weight: normal; 329 color: #B5A369; 330 text-transform: uppercase; 331 white-space: nowrap; 332 letter-spacing : 0.46em; 333 margin-bottom: 32px; 334} 335.bundles .c7-product > div { 336 gap: 10px; 337} 338@media (max-width: 768px) { 339 .bundles .c7-product > div { 340 flex-direction: column-reverse !important; 341 align-items: flex-start !important; 342 gap: 1.5rem; 343 } 344 .c7-product-collection .c7-product__image { 345 max-width: 100%; 346 margin-bottom: 1rem; 347 } 348} 349@media screen and (min-width: 769px) { 350 .bundles .c7-product-collection__product-list, .bundles .c7-product-allocation__product-list { 351 grid-template-columns: 1fr 1fr!important; 352 column-gap: 60px; 353 row-gap: 80px; 354 } 355 .bundles .c7-product-collection__product-list { 356 column-gap: 40px; 357 row-gap: 40px; 358 } 359 .c7-product-collection .c7-product__image { 360 text-align: center; 361 margin-right: 0; 362 } 363} 364 365/* AGR */ 366.agr-red .fl-col-content, .agr-white .fl-col-content, .agr-duo .fl-col-content { 367 position: relative; 368 transition: 1s all ease-in; 369} 370@media (max-width: 768px){ 371 .agr-circle{ 372 top: 30% !important; 373 } 374} 375.agr-circle { 376 position: absolute!important; 377 top: 40%; 378 left: 50%; 379 transform: translate(-56%, -50%); 380 transition: 1s all ease-in; 381} 382.agr-circle.agr-circle-hm { 383 top: 30%; 384} 385.agr-circle .fl-photo-content { 386 animation-name: circularRotate; 387 animation-duration: 60s; 388 animation-iteration-count: infinite; 389 animation-timing-function: linear; 390} 391.agr-circle { 392 display: none; 393} 394.agr-circle.agr-circle-hm { 395 display: block; 396} 397.agr-red .fl-col-content:hover .agr-circle, .agr-white .fl-col-content:hover .agr-circle, .agr-duo .fl-col-content:hover .agr-circle { 398 display: block; 399} 400.agr-subscribe .c7-form { 401 max-width: 100%; 402} 403.subscription-icons-wrapper .fl-col-content { 404 display: flex; 405 flex-direction: row; 406 justify-content: center; 407 align-items: center; 408} 409.agr-atc .c7-buy-product { 410 display: flex; 411 flex-direction: row; 412 justify-content: center; 413 align-items: center; 414} 415.agr-atc .c7-buy-product .c7-price--original { 416 color: #DEDEDE!important; 417} 418.agr-atc .c7-buy-product .c7-price--discounted, .agr-atc .c7-buy-product .c7-product__add-to-cart__price__variant, .agr-atc .c7-buy-product .c7-product__add-to-cart__price { 419 color: #B5A369!important; 420 font-weight: 700; 421} 422@media screen and (max-width:700px) { 423 .subscription-icons-wrapper .fl-col-content { 424 flex-direction: column; 425 } 426} 427 428/* Keyframes */ 429@keyframes circularRotate { 430 0% { 431 transform: rotate(0deg); 432 } 433 100% { 434 transform: rotate(360deg); 435 } 436} 437 438.c7-product-collection { 439 min-height: 10vh; 440} 441/* ========================================================= 442 PowerPack "Technical Specifications" table - Mobile fix 443 Makes the left-column labels bold and adds spacing/dividers 444 Targets both table-based and div-based PowerPack output 445 ========================================================= */ 446 447@media screen and (max-width: 768px) { 448 449 /* Label cell (left column) */ 450 .specs-table td:first-child, 451 .specs-table .pp-table-cell:first-child { 452 font-weight: 700 !important; 453 display: block !important; 454 margin: 0 0 2px 0 !important; 455 } 456 457 /* Value cell (right column) */ 458 .specs-table td:last-child, 459 .specs-table .pp-table-cell:last-child { 460 display: block !important; 461 margin: 0 0 14px 0 !important; 462 padding: 0 0 14px 0 !important; 463 border-bottom: 1px solid rgba(255,255,255,0.18) !important; 464 } 465 466 /* Remove divider after final row */ 467 .specs-table tr:last-child td:last-child, 468 .specs-table .pp-table-row:last-child .pp-table-cell:last-child { 469 border-bottom: 0 !important; 470 margin-bottom: 0 !important; 471 padding-bottom: 0 !important; 472 } 473} 474/* ------------------------------------------------------------ 475 BLUFFERS: Tailgate + Work Bee (scoped only to these modules) 476 Uses real C7 structure found in inspector: 477 - .c7-product__add-to-cart__price (price row) 478 - .c7-product__add-to-cart__form (qty + button row) 479------------------------------------------------------------ */ 480
481/* Center the whole module */ 482.tailgate-red-fix .c7-buy-product, 483.work-bee-fix .c7-buy-product { 484 width: 100%; 485 text-align: center; 486} 487 488/* PRICE ROW: keep on one line, centered, with controlled spacing */ 489.tailgate-red-fix .c7-product__add-to-cart__price, 490.work-bee-fix .c7-product__add-to-cart__price { 491 display: inline-flex !important; 492 justify-content: center !important; 493 align-items: baseline !important; 494 flex-wrap: nowrap !important; 495 white-space: nowrap !important; 496 width: auto !important; 497 gap: 0 !important; 498 margin-bottom: 14px !important; 499} 500 501/* Reset any default margins that cause weird gaps */ 502.tailgate-red-fix .c7-product__add-to-cart__price > *, 503.work-bee-fix .c7-product__add-to-cart__price > * { 504 margin: 0 !important; 505 padding: 0 !important; 506} 507 508/* Spacing between original and discounted */ 509.tailgate-red-fix .c7-price--original, 510.work-bee-fix .c7-price--original { 511 margin-right: 10px !important; 512} 513 514/* Spacing before "/ bottle (750mL)" */ 515.tailgate-red-fix .c7-product__add-to-cart__price__variant, 516.work-bee-fix .c7-product__add-to-cart__price__variant { 517 margin-left: 8px !important; 518} 519 520/* Colors + weights (no white on gold) */ 521.tailgate-red-fix .c7-price--discounted, 522.work-bee-fix .c7-price--discounted { 523 color: #1a1a1a !important; 524 font-weight: 700 !important; 525} 526 527.tailgate-red-fix .c7-price--original, 528.work-bee-fix .c7-price--original { 529 color: #3f3f3f !important; 530 font-weight: 600 !important; 531 opacity: 1 !important; 532} 533 534.tailgate-red-fix .c7-product__variant__price__title, 535.work-bee-fix .c7-product__variant__price__title { 536 color: #2b2b2b !important; 537 font-weight: 600 !important; 538} 539 540/* QTY + BUTTON ROW: force onto its own centered line */ 541.tailgate-red-fix .c7-product__add-to-cart__form, 542.work-bee-fix .c7-product__add-to-cart__form { 543 display: flex !important; 544 justify-content: center !important; 545 align-items: center !important; 546 gap: 12px !important; 547 flex-wrap: nowrap !important; 548 width: auto !important; 549} 550 551/* Make sure the form row never gets pulled inline */ 552.tailgate-red-fix form.c7-form, 553.work-bee-fix form.c7-form { 554 display: flex !important; 555 flex-direction: column !important; 556 align-items: center !important; 557} 558/* Force true centering by giving the rows full width */ 559.tailgate-red-fix .c7-product__add-to-cart__price, 560.work-bee-fix .c7-product__add-to-cart__price, 561.tailgate-red-fix .c7-product__add-to-cart__form, 562.work-bee-fix .c7-product__add-to-cart__form { 563 width: 100% !important; 564 justify-content: center !important; 565} 566/* Remove any internal left/right padding affecting only these modules */ 567.tailgate-red-fix, 568.work-bee-fix { 569 padding-left: 0 !important; 570 padding-right: 0 !important; 571} 572/* ------------------------------------------------------------ 573 BLUFFERS: hard-center the Beaver Builder HTML module wrapper 574 and the C7 buy-product internals 575------------------------------------------------------------ */ 576 577/* Center the actual Beaver Builder HTML module that contains the C7 embed */ 578.fl-module-html.tailgate-red-fix, 579.fl-module-html.work-bee-fix { 580 width: 100% !important; 581 display: flex !important; 582 justify-content: center !important; 583} 584 585/* Make sure the embed itself is a centered column */ 586.fl-module-html.tailgate-red-fix .c7-buy-product, 587.fl-module-html.work-bee-fix .c7-buy-product { 588 width: 100% !important; 589 display: flex !important; 590 flex-direction: column !important; 591 align-items: center !important; 592} 593 594/* Ensure the price line and form row are centered within the module width */ 595.fl-module-html.tailgate-red-fix .c7-product__add-to-cart__price, 596.fl-module-html.work-bee-fix .c7-product__add-to-cart__price, 597.fl-module-html.tailgate-red-fix .c7-product__add-to-cart__form, 598.fl-module-html.work-bee-fix .c7-product__add-to-cart__form { 599 width: 100% !important; 600 display: flex !important; 601 justify-content: center !important; 602} 603 604 content: ", "; 605 white-space: pre; 606} 607 608.split-bg { 609 position: relative; 610 overflow: hidden; 611} 612 613/* AGR Duo background fix */ 614/* AGR DUO split background */ 615.agr-duo .fl-col-content{ 616 background-image: linear-gradient( 617 to right, 618 #304e46 0%, 619 #304e46 50%, 620 #472827 50%, 621 #472827 100% 622 ) !important; 623 background-color: transparent !important; 624} 625/* Keep the product row above the photo row if they overlap */ 626.agr-products-row{ 627 position: relative; 628 z-index: 5; 629} 630 631.agr-below-photo-row{ 632 position: relative; 633 z-index: 1; 634} 635/* DUO PRODUCT PAGES: adjust the circle position without breaking mobile */ 636@media (min-width: 992px){ 637 .agr-duo-product-hero .agr-circle.agr-circle-hm{ 638 top: 22% !important; /* tweak: 20% higher, 25% lower */ 639 } 640} 641 642/* keep the existing mobile behavior you already like */ 643@media (max-width: 768px){ 644 .agr-duo-product-hero .agr-circle.agr-circle-hm{ 645 top: 30% !important; 646 } 647} 648/* ========================================================= 649 BLUFFERS STORY CARDS (OUTSIDE GRID) 650 Scope: only the row with class .team-wrapper 651 Requirements: 652 - All card images same height 653 - Crop from the BOTTOM (keep top visible) 654 - Button pinned to bottom of each card 655 ========================================================= */ 656
657/* Make BB columns stretch so equal-height works */ 658.team-wrapper .fl-col { 659 display: flex; 660} 661 662/* Each card becomes a flex column */ 663.team-wrapper .fl-col-content.story-card { 664 display: flex; 665 flex-direction: column; 666 height: 100%; 667} 668 669/* Image wrapper: fixed height, crops overflow */ 670.team-wrapper .story-card__img { 671 width: 100%; 672 height: 320px; /* tweak if needed */ 673 overflow: hidden; 674} 675 676/* Image: fill the wrapper, crop bottom (keep top) */ 677.team-wrapper .story-card__img img { 678 width: 100%; 679 height: 100%; 680 object-fit: cover; 681 object-position: center top; /* keeps top, crops bottom */ 682 display: block; 683} 684 685/* Push the button area to the bottom of the card */ 686.team-wrapper .fl-button-wrap { 687 margin-top: auto; 688} 689 690/* Control vertical gap between rows of cards (desktop) */ 691@media (min-width: 769px) { 692 .team-wrapper .fl-col-content.story-card { 693 padding-bottom: 40px; /* adjust to match your left-right gutter feel */ 694 } 695} 696 697 698/* ========================================================= 699 BLUFFERS STORY POPUPS (MODAL) 700 Scope: only elements with your popup classes 701 Requirements: 702 - Keep popup image "naturally narrower" (not full modal width) 703 - Match the newspaper feel 704 - Titles bold + styled consistently 705 ========================================================= */ 706 707/* Constrain the photo module so it doesn't go full width */ 708.pop-up-story-photo { 709 max-width: 760px; /* adjust to match the newspaper popup width */ 710 margin-left: auto; 711 margin-right: auto; 712} 713 714/* Popup image: consistent height, crop bottom only (keep top) */ 715.pop-up-story-photo img { 716 width: 100%; 717 height: 420px; /* adjust to match newspaper popup */ 718 object-fit: cover; 719 object-position: center top; /* keeps top, crops bottom */ 720 display: block; 721} 722 723/* Ensure wrappers don't create weird overflow behavior */ 724.pop-up-story-photo, 725.pop-up-story-photo .fl-photo, 726.pop-up-story-photo .fl-photo-content { 727 overflow: hidden; 728} 729 730/* On mobile, let the image go natural height */ 731@media (max-width: 768px) { 732 .pop-up-story-photo img { 733 height: auto; 734 } 735} 736 737/* Popup title styling to match the Banker story vibe */ 738.pop-up-story-title, 739.pop-up-story-title * { 740 font-weight: 700 !important; 741 text-transform: uppercase; 742 letter-spacing: 0.08em; 743 line-height: 1.25; 744} 745/* Desktop only: make the "newspaper" modal larger + scrollable */ 746@media (min-width: 769px) { 747 748 /* Theovs is the overlay wrapper Beaver Builder uses */ 749 .newspaper-popup .fl-modal { 750 padding: 24px !important; 751 } 752 753 /* The white modal box */ 754 .newspaper-popup .fl-modal-content { 755 width: 92vw !important; 756 max-width: 1200px !important; 757 max-height: 88vh !important; 758 overflow: auto !important; /* allows scrolling for tall images */ 759 } 760 761 /* Make the image fill the modal width naturally */ 762 .newspaper-popup img { 763 width: 100% !important; 764 height: auto !important; 765 max-width: 100% !important; 766 display: block !important; 767 } 768} 769 /* Make the background color stay offwhite on mobile */ 770@media (max-width: 768px) { 771 .offwhite-mobile-fix, 772 .offwhite-mobile-fix .fl-col-content { 773 background-color: #f1f1ec !important; 774 } 775} 776/* Force equal visual footprint bluffers on homepage*/ 777.bluffers-side-by-side .fl-photo-content { 778 height: 360px; /* adjust as needed */ 779 display: flex; 780 align-items: center; 781 justify-content: center; 782} 783 784.bluffers-side-by-side img { 785 max-height: 100%; 786 width: auto; 787 object-fit: contain; 788} 789.event-map .tribe-events-venue-map { 790 border: 1px solid #efefef; 791} 792#events .tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container { 793 padding: 0; 794} 795#events .tribe-events-calendar-list__event-featured-image { 796 height: 300px; 797 object-fit: cover; 798} 799.tribe-events-calendar-list__event-date-tag-weekday { 800 background: #b5a369; 801 border-radius: 2px 2px 0 0; 802} 803.tribe-events-calendar-list__event-date-tag-daynum { 804 background: #f2f2f2; 805} 806#events .tribe-events-header__title-text { 807/* display: none; */ 808} 809.tribe-events-widget-countdown__event-title { 810 display: none; 811} 812.tribe-events-widget .tribe-events-widget-countdown__complete { 813 min-height: 0!important; 814} </style> 815 </head> 816<body class="wp-singular page-template-default page page-id-30 wp-custom-logo wp-theme-bb-theme wp-child-theme-bb-theme-child fl-builder fl-builder
816-2-10-2-3 fl-themer-1-5-3-2 fl-theme-1-7-19-2 fl-no-js c7wp tribe-no-js fl-theme-builder-part fl-theme-builder-part-modal fl-theme-builder-header fl-theme-builder-header-header-copy fl-theme-builder-footer fl-theme-builder-footer-footer fl-framework-base fl-preset-default fl-full-width fl-scroll-to-top fl-search-active" itemscope="itemscope" itemtype="https://schema.org/WebPage"> 817 <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 817-818
817 818<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
818GTM-5KLBKRLJ
vendor: 83 bytes, lines 818-819
818" 819height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
820<!-- End Google Tag Manager (noscript) --> 821 <!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, line 821
821 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
821GTM-TXPXJK2
vendor: 83 bytes, line 821
821" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
821<!-- End Google Tag Manager (noscript) --> 822<a aria-label="Skip to content" class="fl-screen-reader-text" href="#fl-main-content">Skip to content</a><div class="fl-page"> 823 <div class="fl-builder-content fl-builder-content-3649 fl-builder-global-templates-locked" data-post-id="3649" data-type="part"><div class="fl-row fl-row-full-width fl-row-bg-color fl-node-i4hcnjl0173w fl-row-default-height fl-row-align-center" data-node="i4hcnjl0173w"> 824 <div class="fl-row-content-wrap"> 825 <div class="uabb-row-separator uabb-top-row-separator" > 826</div> 827 <div class="fl-row-content fl-row-fixed-width fl-node-content"> 828 829<div class="fl-col-group fl-node-m9n653a8lrus" data-node="m9n653a8lrus"> 830 <div class="fl-col fl-node-n1zupq28yxgb fl-col-bg-color" data-node="n1zupq28yxgb"> 831 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-rich-text fl-rich-text fl-node-f0dk8raxmj4w" data-node="f0dk8raxmj4w"> 832 <h2 style="text-align: center;"><span style="color: #b5a369;">NEW YORK WINE CLASIC RESULTS ARE IN</span></h2> 833<h2 style="text-align: center;">1 Platinum. 12 Gold Medals. And Best Late Harvest Wine.</h2> 834<p style="text-align: center;"><a href="https://keukaspringvineyards.com/wine/?collection=New%20York%20Wine%20Classic%20Winners"><u>Purchase The Winning Wines --></u></a></p> 835<p style="text-align: center;"><a href="https://keukaspringvineyards.com/blog/2026-new-york-wine-classic-competition-results/"><span style="text-decoration: underline;">Learn About The Results --></span></a></p> 836</div> 837</div> 838</div> 839 </div> 840 </div> 841 </div> 842</div> 843</div><div class="uabb-js-breakpoint" style="display: none;"></div><header class="fl-builder-content fl-builder-content-1227 fl-builder-global-templates-locked" data-post-id="1227" data-type="header" data-sticky="1" data-sticky-on="all" data-sticky-breakpoint="medium" data-shrink="1" data-overlay="1" data-overlay-bg="transparent" data-shrink-image-height="50px" role="banner" itemscope="itemscope" itemtype="http://schema.org/WPHeader"><div class="fl-row fl-row-full-width fl-row-bg-color fl-node-5wtrm89n6loi fl-row-default-height fl-row-align-center secondary-header" data-node="5wtrm89n6loi"> 844 <div class="fl-row-content-wrap"> 845 <div class="uabb-row-separator uabb-top-row-separator" > 846</div> 847 <div class="fl-row-content fl-row-full-width fl-node-content"> 848 849<div class="fl-col-group fl-node-tyhvdz2mwp8f fl-col-group-equal-height fl-col-group-align-center fl-col-group-custom-width" data-node="tyhvdz2mwp8f"> 850 <div class="fl-col fl-node-omxnv9g6ukqy fl-col-bg-color fl-col-small fl-col-small-custom-width header-logo-wrapper" data-node="omxnv9g6ukqy"> 851 <div class="fl-col-content fl-node-content"><div role="figure" class="fl-module fl-module-photo fl-photo fl-photo-align-left fl-node-goyjcqmd0e3x logo-full" data-node="goyjcqmd0e3x" itemscope itemtype="https://schema.org/ImageObject"> 852 <div class="fl-photo-content fl-photo-img-png"> 853 <a href="https://keukaspringvineyards.com" target="_self" itemprop="url"> 854 <img loading="lazy" decoding="async" class="fl-photo-img wp-image-1232 size-full" src="https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-475.png" alt="FullLogo-2c-Stacked-475" height="340" width="475" title="FullLogo-2c-Stacked-475" data-no-lazy="1" itemprop="image" srcset="https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-475.png 475w, https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-475-300x215.png 300w" sizes="auto, (max-width: 475px) 100vw, 475px" /> 855 </a> 856 </div> 857 </div> 858<div role="figure" class="fl-module fl-module-photo fl-photo fl-photo-align-left fl-node-iph4z2y7evgs logo-mark" data-node="iph4z2y7evgs" itemscope itemtype="https://schema.org/ImageObject"> 859 <div class="fl-photo-content fl-photo-img-png"> 860 <a href="https://keukaspringvineyards.com" target="_self" itemprop="url"> 861 <img loading="lazy" decoding="async" class="fl-photo-img wp-image-814 size-full" src="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo.png" alt="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo.png" height="512" width="512" title="cropped-Keuka-Spring-logo.png" data-no-lazy="1" itemprop="image" srcset="https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo.png 512w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-300x300.png 300w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-150x150.png 150w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-270x270.png 270w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-192x192.png 192w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-180x180.png 180w, https://keukaspringvineyards.com/wp-content/uploads/2025/04/cropped-Keuka-Spring-logo-32x32.png 32w" sizes="auto, (max-width: 512px) 100vw, 512px" /> 862 </a> 863 </div> 864 </div> 865</div> 866</div> 867 <div class="fl-col fl-node-nyil7rxgpf4a fl-col-bg-color fl-col-small-custom-width header-menu-wrapper" data-node="nyil7rxgpf4a"> 868 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-html fl-html fl-node-le4ujdwzkn7t" data-node="le4ujdwzkn7t"> 869 <div class="secondary-header c7-header-icons"> 870 <div id="c7-account"></div> 871 <div id="c7-cart"></div> 872</div></div> 873<div class="fl-module fl-module-pp-advanced-menu fl-node-wmsz7xp0favb" data-node="wmsz7xp0favb"> 874 <div class="fl-module-content fl-node-content"> 875 <div class="pp-advanced-menu-mobile"> 876 <button class="pp-advanced-menu-mobile-toggle hamburger" tabindex="0" aria-label="Menu" aria-expanded="false"> 877 <div class="pp-hamburger"><div class="pp-hamburger-box"><div class="pp-hamburger-inner"></div></div></div> </button> 878 </div> 879 <div id="pp-menu-wmsz7xp0favb"><div class="pp-advanced-menu pp-advanced-menu-accordion-collapse off-canvas pp-menu-position-below"> 880 <div class="pp-clear"></div> 881 <nav class="pp-menu-nav pp-off-canvas-menu pp-menu-right" aria-label="Menu" itemscope="itemscope" itemtype="https://schema.org/SiteNavigationElement"> 882 <a href="javascript:void(0)" class="pp-menu-close-btn" aria-label="Close the menu" role="button">Ã</a> 883 <ul id="menu-header-menu" class="menu pp-advanced-menu-horizontal pp-toggle-arrows"><li id="menu-item-1070" class="main-menu menu-item menu-item-type-post_type menu-item-object-page menu-item-home"><a href="https://keukaspringvineyards.com/"><span class="menu-item-text">Home</span></a></li><li id="menu-item-1829" class="main-menu menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children pp-has-submenu"><div class="pp-has-submenu-container"><a><span class="menu-item-text">About</span></a><button type="button" class="pp-menu-toggle" aria-label="Toggle submenu for About" aria-haspopup="true" aria-expanded="false" aria-controls="sub-menu
883-1829"></button></div><ul id="sub-menu-1829" class="sub-menu"> <li id="menu-item-1344" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/about-us/"><span class="menu-item-text">About Us</span></a></li> <li id="menu-item-1076" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/our-heritage/"><span class="menu-item-text">Our Heritage</span></a></li> <li id="menu-item-1137" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/about-us/our-team/"><span class="menu-item-text">Our Team</span></a></li> <li id="menu-item-3619" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/bluffers/"><span class="menu-item-text">The Bluffers</span></a></li></ul></li><li id="menu-item-1066" class="main-menu menu-item menu-item-type-custom menu-item-object-custom current-menu-ancestor current-menu-parent menu-item-has-children pp-has-submenu"><div class="pp-has-submenu-container"><a><span class="menu-item-text">Shop</span></a><button type="button" class="pp-menu-toggle" aria-label="Toggle submenu for Shop" aria-haspopup="true" aria-expanded="false" aria-controls="sub-menu-1066"></button></div><ul id="sub-menu-1066" class="sub-menu"> <li id="menu-item-2722" class="menu-item menu-item-type-custom menu-item-object-custom"><a href="/wine/"><span class="menu-item-text">Heritage Wines</span></a></li> <li id="menu-item-2719" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/all-glasses-raised/"><span class="menu-item-text">Low Alcohol</span></a></li> <li id="menu-item-2381" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item"><a href="https://keukaspringvineyards.com/product/ksv-virtual-gift-card/" aria-current="page"><span class="menu-item-text">Gift Cards</span></a></li></ul></li><li id="menu-item-1883" class="main-menu menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children pp-has-submenu"><div class="pp-has-submenu-container"><a><span class="menu-item-text">Visit Us</span></a><button type="button" class="pp-menu-toggle" aria-label="Toggle submenu for Visit Us" aria-haspopup="true" aria-expanded="false" aria-controls="sub-menu-1883"></button></div><ul id="sub-menu-1883" class="sub-menu"> <li id="menu-item-1822" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/visit-us/"><span class="menu-item-text">Penn Yan</span></a></li> <li id="menu-item-2852" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/visit-us/visit-saratoga/"><span class="menu-item-text">Saratoga Springs</span></a></li></ul></li><li id="menu-item-2919" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children pp-has-submenu"><div class="pp-has-submenu-container"><a><span class="menu-item-text">Our Events</span></a><button type="button" class="pp-menu-toggle" aria-label="Toggle submenu for Our Events" aria-haspopup="true" aria-expanded="false" aria-controls="sub-menu-2919"></button></div><ul id="sub-menu-2919" class="sub-menu"> <li id="menu-item-3609" class="menu-item menu-item-type-custom menu-item-object-custom"><a href="/events/"><span class="menu-item-text">All Events</span></a></li> <li id="menu-item-3607" class="menu-item menu-item-type-taxonomy menu-item-object-tribe_events_cat menu-item-has-children pp-has-submenu"><div class="pp-has-submenu-container"><a href="https://keukaspringvineyards.com/all-events/category/music-wine-series/"><span class="menu-item-text">Music & Wine Series</span></a><button type="button" class="pp-menu-toggle" aria-label="Toggle submenu for Music & Wine Series" aria-haspopup="true" aria-expanded="false" aria-controls="sub-menu-3607"></button></div> <ul id="sub-menu-3607" class="sub-menu"> <li id="menu-item-3838" class="menu-item menu-item-type-custom menu-item-object-custom"><a href="https://keukaspringvineyards.com/all-events/category/music-wine-series/penn-yan/"><span class="menu-item-text">Penn Yan</span></a></li> <li id="menu-item-3784" class="menu-item menu-item-type-custom menu-item-object-custom"><a href="https://keukaspringvineyards.com/all-events/category/music-wine-series/saratoga-springs/"><span class="menu-item-text">Saratoga Springs</span></a></li></ul></li> <li id="menu-item-3606" class="menu-item menu-item-type-taxonomy menu-item-object-tribe_events_cat"><a href="https://keukaspringvineyards.com/all-events/category/winery-events/"><span class="menu-item-text">Winery Events</span></a></li> <li id="menu-item-3608" class="menu-item menu-item-type-taxonomy menu-item-object-tribe_events_cat"><a href="https://keukaspringvineyards.com/all-events/category/club-member-events/"><span class="menu-item-text">Club Member Events</span></a></li></ul></li><li id="menu-item-1357" class="main-menu menu-item menu-item-type-custom menu-item-object-custom"><a href="/wine-club/join-club/"><span class="menu-item-text">
883Wine Club</span></a></li><li id="menu-item-1068" class="main-menu menu-item menu-item-type-custom menu-item-object-custom"><a href="/updates"><span class="menu-item-text">Updates</span></a></li><li id="menu-item-1421" class="menu-item menu-item-type-post_type menu-item-object-page"><a href="https://keukaspringvineyards.com/contact-us/"><span class="menu-item-text">Contact</span></a></li></ul> </nav> 884</div> 885</div> </div> 886</div> 887</div> 888</div> 889 </div> 890 </div> 891 </div> 892</div> 893</header><div class="uabb-js-breakpoint" style="display: none;"></div><div class="fl-builder-content fl-builder-content-2303 fl-builder-global-templates-locked" data-post-id="2303" data-type="part"><div class="fl-row fl-row-full-width fl-row-bg-none fl-node-c7ltgj6imrdv fl-row-default-height fl-row-align-center" data-node="c7ltgj6imrdv"> 894 <div class="fl-row-content-wrap"> 895 <div class="uabb-row-separator uabb-top-row-separator" > 896</div> 897 <div class="fl-row-content fl-row-fixed-width fl-node-content"> 898 899<div class="fl-col-group fl-node-cu46sm7n1wxz" data-node="cu46sm7n1wxz"> 900 <div class="fl-col fl-node-nu89y54qfgwz fl-col-bg-color" data-node="nu89y54qfgwz"> 901 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-pp-spacer fl-node-tz8lpv7wsya1" data-node="tz8lpv7wsya1"> 902 <div class="fl-module-content fl-node-content"> 903 <div class="pp-spacer-module"></div> 904 </div> 905</div> 906</div> 907</div> 908 </div> 909 </div> 910 </div> 911</div> 912</div><div class="uabb-js-breakpoint" style="display: none;"></div> <div id="fl-main-content" class="fl-page-content" itemprop="mainContentOfPage" role="main"> 913 914 915<div class="fl-content-full container"> 916 <div class="row"> 917 <div class="fl-content col-md-12"> 918 <article class="fl-post post-30 page type-page status-publish hentry" id="fl-post-30" itemscope="itemscope" itemtype="https://schema.org/CreativeWork"> 919 920 <div class="fl-post-content clearfix" itemprop="text"> 921 <div class="fl-builder-content fl-builder-content-30 fl-builder-content-primary fl-builder-global-templates-locked" data-post-id="30"><div class="fl-row fl-row-full-width fl-row-bg-none fl-node-4yl3gqu857fk fl-row-default-height fl-row-align-center" data-node="4yl3gqu857fk"> 922 <div class="fl-row-content-wrap"> 923 <div class="uabb-row-separator uabb-top-row-separator" > 924</div> 925 <div class="fl-row-content fl-row-fixed-width fl-node-content"> 926 927<div class="fl-col-group fl-node-uc7vegl0zatq" data-node="uc7vegl0zatq"> 928 <div class="fl-col fl-node-4j9ift5vn02s fl-col-bg-color" data-node="4j9ift5vn02s"> 929 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-rich-text fl-rich-text fl-node-r34qsgvkl6uo" data-node="r34qsgvkl6uo"> 930 931<div id="c7-content"></div> 932</div> 933</div> 934</div> 935 </div> 936 </div> 937 </div> 938</div> 939</div><div class="uabb-js-breakpoint" style="display: none;"></div><span class="cp-load-after-post"></span> </div><!-- .fl-post-content --> 940 941</article> 942 943<!-- .fl-post --> 944 </div> 945 </div> 946</div> 947 948<div class="fl-builder-content fl-builder-content-1752 fl-builder-global-templates-locked" data-post-id="1752" data-type="part"><div class="fl-row fl-row-full-width fl-row-bg-none fl-node-rqa6lnmu34jw fl-row-default-height fl-row-align-center" data-node="rqa6lnmu34jw"> 949 <div class="fl-row-content-wrap"> 950 <div class="uabb-row-separator uabb-top-row-separator" > 951</div> 952 <div class="fl-row-content fl-row-fixed-width fl-node-content"> 953 954<div class="fl-col-group fl-node-d3o1qmlr8iap" data-node="d3o1qmlr8iap"> 955 <div class="fl-col fl-node-1dn620gtv5cf fl-col-bg-color" data-node="1dn620gtv5cf"> 956 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-html fl-html fl-node-k8bsjre72vta" data-node="k8bsjre72vta"> 957 <!-- Place this high up in your HTML, outside Commerce7 components --> 958<div id="c7-image-modal" class="c7-image-modal" style="display: none;"> 959 <span class="c7-modal-close">×</span> 960 <img id="c7-modal-img" class="c7-modal-img" alt="Full Size Wine Bottle"> 961</div></div> 962</div> 963</div> 964 </div> 965 </div> 966 </div> 967</div> 968</div><div class="uabb-js-breakpoint" style="display: none;"></div> 969 </div><!-- .fl-page-content -->
970 <footer class="fl-builder-content fl-builder-content-880 fl-builder-global-templates-locked" data-post-id="880" data-type="footer" itemscope="itemscope" itemtype="http://schema.org/WPFooter"><div class="fl-row fl-row-full-width fl-row-bg-color fl-node-xw9ta0k82odr fl-row-default-height fl-row-align-center" data-node="xw9ta0k82odr"> 971 <div class="fl-row-content-wrap"> 972 <div class="uabb-row-separator uabb-top-row-separator" > 973</div> 974 <div class="fl-row-content fl-row-fixed-width fl-node-content"> 975 976<div class="fl-col-group fl-node-pl0ch9qu7vds fl-col-group-equal-height fl-col-group-align-top fl-col-group-custom-width" data-node="pl0ch9qu7vds"> 977 <div class="fl-col fl-node-yfm41clhequk fl-col-bg-color fl-col-small fl-col-small-custom-width" data-node="yfm41clhequk"> 978 <div class="fl-col-content fl-node-content"><div role="figure" class="fl-module fl-module-photo fl-photo fl-photo-align-center fl-node-bjfvuze1lpm3" data-node="bjfvuze1lpm3" itemscope itemtype="https://schema.org/ImageObject"> 979 <div class="fl-photo-content fl-photo-img-png"> 980 <a href="https://keukaspringvineyards.com" target="_self" itemprop="url"> 981 <img decoding="async" class="fl-photo-img wp-image-917 size-full" src="https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-Reversed.png" alt="FullLogo-2c-Stacked-Reversed" height="382" width="599" title="FullLogo-2c-Stacked-Reversed" loading="lazy" itemprop="image" srcset="https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-Reversed.png 599w, https://keukaspringvineyards.com/wp-content/uploads/2025/06/FullLogo-2c-Stacked-Reversed-300x191.png 300w" sizes="auto, (max-width: 599px) 100vw, 599px" /> 982 </a> 983 </div> 984 </div> 985<div class="fl-module fl-module-pp-social-icons fl-node-cnei1qwosl3v" data-node="cnei1qwosl3v"> 986 <div class="fl-module-content fl-node-content"> 987 988<div class="pp-social-icons pp-social-icons-horizontal"> 989 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 990 <link itemprop="url" href="https://keukaspringvineyards.com"> 991 <a itemprop="sameAs" href="https://www.facebook.com/KeukaSpring/" target="_blank" title="Facebook" aria-label="Facebook" role="button" rel="noopener noreferrer external" > 992 <i class="fab fa-facebook-f"></i> 993 </a> 994 </span> 995 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 996 <link itemprop="url" href="https://keukaspringvineyards.com"> 997 <a itemprop="sameAs" href="https://x.com/i/flow/login?redirect_after_login=%2FKeukaSpring" target="_blank" title="X" aria-label="X" role="button" rel="noopener noreferrer external" > 998 <i class="fab fa-twitter"></i> 999 </a> 1000 </span> 1001 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 1002 <link itemprop="url" href="https://keukaspringvineyards.com"> 1003 <a itemprop="sameAs" href="https://www.instagram.com/keukaspringvineyards/" target="_blank" title="Instagram" aria-label="Instagram" role="button" rel="noopener noreferrer external" > 1004 <i class="fab fa-instagram"></i> 1005 </a> 1006 </span> 1007 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 1008 <link itemprop="url" href="https://keukaspringvineyards.com"> 1009 <a itemprop="sameAs" href="https://www.youtube.com/user/KeukaSpringVineyards" target="_blank" title="YouTube" aria-label="YouTube" role="button" rel="noopener noreferrer external" > 1010 <i class="fab fa-youtube"></i> 1011 </a> 1012 </span> 1013 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 1014 <link itemprop="url" href="https://keukaspringvineyards.com"> 1015 <a itemprop="sameAs" href="https://www.yelp.com/biz/keuka-spring-vineyards-penn-yan" target="_blank" title="Yelp" aria-label="Yelp" role="button" rel="noopener noreferrer external" > 1016 <i class="fab fa-yelp"></i> 1017 </a> 1018 </span> 1019 <span class="pp-social-icon" itemscope itemtype="https://schema.org/Organization"> 1020 <link itemprop="url" href="https://keukaspringvineyards.com"> 1021 <a itemprop="sameAs" href="https://www.tripadvisor.com/Attraction_Review-g48378-d1642623-Reviews-Keuka_Spring_Vineyards-Penn_Yan_Finger_Lakes_New_York.html" target="_blank" title="Tripadvisor" aria-label="Tripadvisor" role="button" rel="noopener noreferrer external" > 1022 <i class="ua-icon ua-icon-tripadvisor"></i> 1023 </a> 1024 </span> 1025 </div> 1026 </div> 1027</div> 1028</div> 1029</div> 1030 <div class="fl-col fl-node-fn75w02crb6i fl-col-bg-color fl-col-small fl-col-small-custom-width" data-node="fn75w02crb6i"> 1031 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-heading fl-node-7a6z5nh3tvgx" data-node="7a6z5nh3tvgx"> 1032 <div class="fl-module-content fl-node-content"> 1033 <h3 class="fl-heading"> 1034 <span class="fl-heading-text">Get In Touch</span> 1035 </h3> 1036 </div> 1037</div> 1038<div class="fl-module fl-module-info-list fl-node-mp6r7lif3e0w" data-node="mp6r7lif3e0w"> 1039 <div class="fl-module-content fl-node-content"> 1040 1041<div class="uabb-module-content uabb-info-list"> 1042 <ul class="uabb-info-list-wrapper uabb-info-list-left"> 1043 <li class="uabb-info-list-item info-list-item-dynamic0"><div class="uabb-info-list-content-wrapper fl-clearfix uabb-info-list-left"><div class="uabb-info-list-icon info-list-icon-dynamic0"><div class="uabb-module-content uabb-imgicon-wrap"> <span class="uabb-icon-wrap"> 1044 <span class="uabb-icon"> 1045 <i class="fas fa-phone" aria-hidden="true"></i> 1046 </span> 1047 </span> 1048 1049 </div></div><div class="uabb-info-list-content uabb-info-list-left info-list-content-dynamic0"><h3 class="uabb-info-list-title"></h3 ><div class="uabb-info-list-description uabb-text-editor info-list-description-dynamic0"><p>(315) 536-3147</p> 1050</div></div></div><div class="uabb-info-list-connector uabb-info-list-left"></div></li><li class="uabb-info-list-item info-list-item-dynamic1"><div class="uabb-info-list-content-wrapper fl-clearfix uabb-info-list-left"><div class="uabb-info-list-icon info-list-icon-dynamic1"><div class="uabb-module-content uabb-imgicon-wrap"> <span class="uabb-icon-wrap"> 1051 <span class="uabb-icon"> 1052 <i class="fas fa-envelope" aria-hidden="true"></i> 1053 </span> 1054 </span> 1055 1056 </div></div><div class="uabb-info-list-content uabb-info-list-left info-list-content-dynamic1"><h3 class="uabb-info-list-title"></h3 ><div class="uabb-info-list-description uabb-text-editor info-list-description-dynamic1"><p>[email protected]</p> 1057</div></div></div><div class="uabb-info-list-connector uabb-info-list-left"></div></li><li class="uabb-info-list-item info-list-item-dynamic2"><div class="uabb-info-list-content-wrapper fl-clearfix uabb-info-list-left"><div class="uabb-info-list-icon info-list-icon-dynamic2"><div class="uabb-module-content uabb-imgicon-wrap"> <span class="uabb-icon-wrap"> 1058 <span class="uabb-icon"> 1059 <i class="fas fa-map-marker-alt" aria-hidden="true"></i> 1060 </span> 1061 </span> 1062 1063 </div></div><div class="uabb-info-list-content uabb-info-list-left info-list-content-dynamic2"><h3 class="uabb-info-list-title"><a href="https://goo.gl/maps/BmxQntV5sE22" target="_blank" rel="noopener" aria-label="Go to https://goo.gl/maps/BmxQntV5sE22"></a></h3 ><div class="uabb-info-list-description uabb-text-editor info-list-description-dynamic2"><p>243 Route 54, East Lake Road<br />Penn Yan, NY 14527</p></div></div></div><div class="uabb-info-list-connector uabb-info-list-left"></div></li> </ul> 1064</div> 1065 </div> 1066</div> 1067</div> 1068</div> 1069 <div class="fl-col fl-node-4rpld19njg5x fl-col-bg-color fl-col-small fl-col-small-custom-width" data-node="4rpld19njg5x"> 1070 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-heading fl-node-bho69p8kcfwx" data-node="bho69p8kcfwx"> 1071 <div class="fl-module-content fl-node-content"> 1072 <h3 class="fl-heading"> 1073 <span class="fl-heading-text">Additional Resources</span> 1074 </h3> 1075 </div> 1076</div> 1077<div class="fl-module fl-module-rich-text fl-node-zh6dt8gexoaj" data-node="zh6dt8gexoaj"> 1078 <div class="fl-module-content fl-node-content"> 1079 <div class="fl-rich-text"> 1080 <p><a href="/legal/terms-of-use/">Terms Of Use </a><br /> 1081<a href="/legal/privacy-policy/">Privacy Policy </a><br /> 1082<a href="/legal/returns-cancellations/">Returns & Cancellations</a><br /> 1083<a href="/accessibility-statement">Accessibility Statement</a><br /> 1084<a href="/general-faqs/">General FAQs</a><br /> 1085<a href="/wine-shipping-faqs/">Wine Shipping FAQs</a></p> 1086</div> 1087 </div> 1088</div> 1089</div> 1090</div> 1091 <div class="fl-col fl-node-zjr0mi43habc fl-col-bg-color fl-col-small fl-col-small-custom-width" data-node="zjr0mi43habc"> 1092 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-heading fl-node-kg1yboi2zanm" data-node="kg1yboi2zanm"> 1093 <div class="fl-module-content fl-node-content"> 1094 <h3 class="fl-heading"> 1095 <span class="fl-heading-text">Join Our Newsletter</span> 1096 </h3> 1097 </div> 1098</div> 1099<div class="fl-module fl-module-rich-text fl-node-xf0eyp8qgj1m" data-node="xf0eyp8qgj1m"> 1100 <div class="fl-module-content fl-node-content"> 1101 <div class="fl-rich-text"> 1102 <p>We would love to keep you in the loop! Sign up for our emails to hear about special events, wine releases, and other winery news.</p> 1103</div> 1104 </div> 1105</div> 1106<div class="fl-module fl-module-html fl-html fl-node-fxze3nyi4gk1 subscribe-form" data-node="fxze3nyi4gk1"> 1107 <div class="c7-subscribe"></div></div> 1108</div> 1109</div> 1110 </div> 1111 1112<div class="fl-col-group fl-node-j5iacfeo1bup" data-node="j5iacfeo1bup"> 1113 <div class="fl-col fl-node-dvky2pl3j58e fl-col-bg-color" data-node="dvky2pl3j58e"> 1114 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-separator fl-node-vc04bmusk1hw" data-node="vc04bmusk1hw"> 1115 <div class="fl-separator"></div> 1116</div> 1117</div> 1118</div> 1119 </div> 1120 1121<div class="fl-col-group fl-node-igxebvn01o47" data-node="igxebvn01o47"> 1122 <div class="fl-col fl-node-3p6jldayuq14 fl-col-bg-color" data-node="3p6jldayuq14"> 1123 <div class="fl-col-content fl-node-content"><div class="fl-module fl-module-rich-text fl-node-ygjah9ockidt" data-node="ygjah9ockidt"> 1124 <div class="fl-module-content fl-node-content"> 1125 <div class="fl-rich-text"> 1126 <p>© 2026 Keuka Spring Vineyards. All Rights Reserved.</p> 1127</div> 1128 </div> 1129</div> 1130</div> 1131</div> 1132 </div> 1133 </div> 1134 </div> 1135</div> 1136</footer><div class="uabb-js-breakpoint" style="display: none;"></div> </div><!-- .fl-page -->
1137<script type="speculationrules"> 1138{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/bb-theme-child/*","/wp-content/themes/bb-theme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 1139</script>
1139 1140
1140<script> 1141 ( function ( body ) { 1142 'use strict'; 1143 body.className = body.className.replace( /\btribe-no-js\b/, 'tribe-js' ); 1144 } )( document.body ); 1145 </script>
1145 1146 <a href="#" role="button" id="fl-to-top"><span class="sr-only">Scroll To Top</span><i class="fas fa-chevron-up" aria-hidden="true"></i></a>
1146<script> /* <![CDATA[ */var tribe_l10n_datatables = {"aria":{"sort_ascending":": activate to sort column ascending","sort_descending":": activate to sort column descending"},"length_menu":"Show _MENU_ entries","empty_table":"No data available in table","info":"Showing _START_ to _END_ of _TOTAL_ entries","info_empty":"Showing 0 to 0 of 0 entries","info_filtered":"(filtered from _MAX_ total entries)","zero_records":"No matching records found","search":"Search:","all_selected_text":"All items on this page were selected. ","select_all_link":"Select all pages","clear_selection":"Clear Selection.","pagination":{"all":"All","next":"Next","previous":"Previous"},"select":{"rows":{"0":"","_":": Selected %d rows","1":": Selected 1 row"}},"datepicker":{"dayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"dayNamesShort":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"dayNamesMin":["S","M","T","W","T","F","S"],"monthNames":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesShort":["January","February","March","April","May","June","July","August","September","October","November","December"],"monthNamesMin":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"nextText":"Next","prevText":"Prev","currentText":"Today","closeText":"Done","today":"Today","clear":"Clear"}};/* ]]> */ </script>
1146<script>(function () { 1147 function applyVineyardBreaks() { 1148 // This is the element that contains the comma-separated vineyard string 1149 var target = 1150 document.querySelector('#ksv-growers-original > div') || 1151 document.querySelector('.c7-growers > div'); 1152 1153 if (!target) return false; 1154 1155 var text = (target.textContent || '').trim(); 1156 if (!text) return false; 1157 1158 // If it already has line breaks (div children inside), donât re-run 1159 if (target.children && target.children.length > 0 && target.innerHTML.indexOf('<div>') !== -1) { 1160 return true; 1161 } 1162 1163 // If there are no commas, nothing to do 1164 if (text.indexOf(',') === -1) return true; 1165 1166 var parts = text.split(',').map(function (p) { return p.trim(); }).filter(Boolean); 1167 1168 // Replace with stacked divs 1169 target.innerHTML = parts.map(function (p) { 1170 return '<div>' + p + '</div>'; 1171 }).join(''); 1172 1173 return true; 1174 } 1175 1176 // Run immediately, then retry a bunch of times (C7 sometimes renders late) 1177 var tries = 0; 1178 var maxTries = 60; // ~15 seconds total 1179 var interval = setInterval(function () { 1180 tries++; 1181 var done = applyVineyardBreaks(); 1182 if (done || tries >= maxTries) clearInterval(interval); 1183 }, 250); 1184 1185 // Also watch for DOM changes and re-apply (covers async rerenders) 1186 var obs = new MutationObserver(function () { 1187 applyVineyardBreaks(); 1188 }); 1189 1190 obs.observe(document.documentElement, { childList: true, subtree: true }); 1191})(); 1192 1193</script>
1193<script src="https://keukaspringvineyards.com/wp-content/plugins/the-events-calendar/common/build/js/user-agent.js?ver=da75d0bdea6dde3898df" id="tec-user-agent-js"></script>
vendor: 1 bytes, line 1193
1193
1194<script src="https://keukaspringvineyards.com/wp-content/uploads/bb-plugin/cache/30-layout.js?ver=c2fc70b5517dff9831db394067e3e838" id="fl-builder-layout-30-js"></script>
vendor: 1 bytes, line 1194
1194
1195<script id="c7js-js-extra"> 1196var c7wp_settings = {"tenant":"keuka-spring-vineyards","c7wp_frontend_routes":{"cart":"cart","checkout":"checkout","club":"club","collection":"wines","product":"product","profile":"profile","reservation":"reservation"}}; 1197//# sourceURL=c7js-js-extra 1198</script>
vendor: 1 bytes, line 1198
1198
1199<script data-cfasync="false" type="text/javascript" src="https://cdn.commerce7.com/v2/commerce7.js" id="c7-javascript" data-tenant="keuka-spring-vineyards"></script>
1199<script src="https://keukaspringvineyards.com/wp-content/plugins/wp-commerce7/assets/public/js/c7wp-seo.js?ver=1.8.1" id="c7wp-seo-js"></script>
vendor: 1 bytes, line 1199
1199
1200<script src="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/js/libs/jquery.imagesloaded.min.js?ver=2.10.2.3" id="imagesloaded-js"></script>
vendor: 1 bytes, line 1200
1200
1201<script src="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/js/libs/jquery.ba-throttle-debounce.min.js?ver=2.10.2.3" id="jquery-throttle-js"></script>
vendor: 1 bytes, line 1201
1201
1202<script src="https://keukaspringvineyards.com/wp-content/uploads/bb-plugin/cache/75aa67539883674383e07768fd1ba1bb-layout-bundle.js?ver=2.10.2.3-1.5.3.2" id="fl-builder-layout-bundle-75aa67539883674383e07768fd1ba1bb-js"></script>
vendor: 1 bytes, line 1202
1202
1203<script id="dlm-xhr-js-extra"> 1204var dlmXHRtranslations = {"error":"An error occurred while trying to download the file. Please try again.","not_found":"Download does not exist.","no_file_path":"No file path defined.","no_file_paths":"No file paths defined.","filetype":"Download is not allowed for this file type.","file_access_denied":"Access denied to this file.","access_denied":"Access denied. You do not have permission to download this file.","security_error":"Something is wrong with the file path.","file_not_found":"File not found."}; 1205//# sourceURL=dlm-xhr-js-extra 1206</script>
vendor: 1 bytes, line 1206
1206
1207<script id="dlm-xhr-js-before"> 1208const dlmXHR = {"xhr_links":{"class":["download-link","download-button"]},"prevent_duplicates":true,"ajaxUrl":"https:\/\/keukaspringvineyards.com\/wp-admin\/admin-ajax.php"}; dlmXHRinstance = {}; const dlmXHRGlobalLinks = "https://keukaspringvineyards.com/download/"; const dlmNonXHRGlobalLinks = []; dlmXHRgif = "https://keukaspringvineyards.com/wp-includes/images/spinner.gif"; const dlmXHRProgress = "1" 1209//# sourceURL=dlm-xhr-js-before 1210</script>
vendor: 1 bytes, line 1210
1210
1211<script src="https://keukaspringvineyards.com/wp-content/plugins/download-monitor/assets/js/dlm-xhr.min.js?ver=5.2.2" id="dlm-xhr-js"></script>
vendor: 1 bytes, line 1211
1211
1212<script src="https://keukaspringvineyards.com/wp-content/plugins/bb-plugin/js/libs/jquery.magnificpopup.min.js?ver=2.10.2.3" id="jquery-magnificpopup-js"></script>
vendor: 1 bytes, line 1212
1212
1213<script id="fl-automator-js-extra"> 1214var themeopts = {"medium_breakpoint":"992","mobile_breakpoint":"768","lightbox":"enabled","scrollTopPosition":"800"}; 1215//# sourceURL=fl-automator-js-extra 1216</script>
vendor: 1 bytes, line 1216
1216
1217<script src="https://keukaspringvineyards.com/wp-content/themes/bb-theme/js/theme.min.js?ver=1.7.19.2" id="fl-automator-js"></script>
vendor: 1 bytes, line 1217
1217
1218<script id="wp-emoji-settings" type="application/json"> 1219{"baseUrl":"https://s.w.org/images/core/emoji/17.0.2/72x72/","ext":".png","svgUrl":"https://s.w.org/images/core/emoji/17.0.2/svg/","svgExt":".svg","source":{"concatemoji":"https://keukaspringvineyards.com/wp-includes/js/wp-emoji-release.min.js?ver=6.9.10"}} 1220</script>
vendor: 1 bytes, line 1220
1220
1221<script type="module"> 1222/*! This file is auto-generated */ 1223var e="script#wp-emoji-settings",t=document.querySelector(e);if(!(t instanceof HTMLScriptElement))throw new Error("Element missing: "+e);const r=JSON.parse(t.text),s=(window._wpemojiSettings=r,"wpEmojiSettingsSupports"),o=["flag","emoji"];function i(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(s,JSON.stringify(t))}catch(e){}}function c(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0);const r=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data);return t.every((e,t)=>e===r[t])}function p(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var n=e.getImageData(16,16,1,1);for(let e=0;e<n.data.length;e++)if(0!==n.data[e])return!1;return!0}function u(e,t,n,r){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!r(e,"\ud83e\u1fac8")}return!1}function f(e,t,n,r){let a;const s=(a="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):document.createElement("canvas")).getContext("2d",{willReadFrequently:!0}),o=(s.textBaseline="top",s.font="600 32px Arial",{});return e.forEach(e=>{o[e]=t(s,e,n,r)}),o}function a(e){var t=document.createElement("script");t.src=e,t.defer=!0,document.head.appendChild(t)}r.supports={everything:!0,everythingExceptFlag:!0},new Promise(t=>{let n=function(){try{var e=JSON.parse(sessionStorage.getItem(s));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(o),u.toString(),c.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"});const a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=e=>{i(n=e.data),a.terminate(),t(n)})}catch(e){}i(n=f(o,u,c,p))}t(n)}).then(e=>{for(const n in e)r.supports[n]=e[n],r.supports.everything=r.supports.everything&&r.supports[n],"flag"!==n&&(r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&r.supports[n]);var t;r.supports.everythingExceptFlag=r.supports.everythingExceptFlag&&!r.supports.flag,r.supports.everything||((t=r.source||{}).concatemoji?a(t.concatemoji):t.wpemoji&&t.twemoji&&(a(t.twemoji),a(t.wpemoji)))}); 1224//# sourceURL=https://keukaspringvineyards.com/wp-includes/js/wp-emoji-loader.min.js 1225</script>
1225 1226 1227
1227<script type="text/javascript"> 1228 1229 jQuery(document).on( "cp_after_form_submit", function( e, element, response 1230 , style_slug ) { 1231 1232 if( false == response.data.error ) { 1233 1234 if( 'undefined' !== typeof response.data['cfox_data'] ) { 1235 var form_data = JSON.parse( response.data['cfox_data'] ); 1236 1237 form_data.overwrite_tags = false; 1238 1239 if( 'undefined' !== typeof convertfox ) { 1240 convertfox.identify( form_data ); 1241 } 1242 } 1243 } 1244 1245 }); 1246 1247 1248 </script>
1248 1249 <!-- This is minified version of cp-ga-front.js file located at convertpro-addon/analytics/assets/js/cp-ga-front.js if you want to make changes to this, edit cp-ga-front.js file, minify it and paste code here --> 1250 <!-- Escaping not required, as it is hardcoded, not user-generated --> 1251 1252
1252<script type="text/javascript"> 1253 !function(e){e(window).on("cp_after_popup_open",(function(e,t,o,n){var c=jQuery('.cp-popup-container[data-style="cp_style_'+n+'"]').data("styleslug");cpUpdateImpressions(c)})),cpUpdateImpressions=function(e){var t=cp_ga_object.ga_category_name;cpCreateGoogleAnalyticEvent(t,"impression",e)},cpIsModuleOnScreen=function(e){var t=jQuery(window),o={top:t.scrollTop(),left:t.scrollLeft()};o.right=o.left+t.width(),o.bottom=o.top+t.height();var n=e.offset();return n.right=n.left+e.outerWidth(),n.bottom=n.top+e.outerHeight(),!(o.right<n.left||o.left>n.right||o.bottom<n.top||o.top>n.bottom)},e(document).on("cp_after_form_submit",(function(e,t,o,n){if(!0===o.success){var c=cp_ga_object.ga_category_name;cpCreateGoogleAnalyticEvent(c,"conversion",n)}})),cpCreateGoogleAnalyticEvent=function(e,t,o){var n="gtag";void 0!==cp_ga_object.ga_auth_type&&"gtm-code"===cp_ga_object.ga_auth_type&&(n="gtm-code"),"undefined"!=typeof dataLayer&&"gtm-code"==n?dataLayer.push({event:cp_ga_object.ga_event_name,eventCategory:e,eventAction:t,eventLabel:o,eventValue:"1",nonInteraction:!0}):"gtag"==n&&"undefined"!=typeof gtag&>ag("event",t,{event_label:o,event_category:e,non_interaction:!0})},cp_track_inline_modules=function(){jQuery(".cp-popup-container.cp-module-before_after, .cp-popup-container.cp-module-inline, .cp-popup-container.cp-module-widget").each((function(){var e=jQuery(this);e.data("style").replace("cp_style_","");if(cpIsModuleOnScreen(e)&&!e.hasClass("cp-impression-counted")){var t=e.data("styleslug");cpUpdateImpressions(t),e.addClass("cp-impression-counted")}}))},e(document).ready((function(){cp_track_inline_modules()})),e(document).on("scroll",(function(e){cp_track_inline_modules()}))}(jQuery); 1254 </script>
1254 1255
1255<script> 1256 function waitForRSValueAndApply() { 1257 const rsValueEl = document.getElementById("rs-value"); 1258 const indicator = document.getElementById("rs-indicator"); 1259 const fill = document.getElementById("rs-fill"); 1260 if (!rsValueEl || !indicator || !fill) { 1261 setTimeout(waitForRSValueAndApply, 250); 1262 return; 1263 } 1264 const raw = rsValueEl.textContent.trim(); 1265 const rs = parseFloat(raw); 1266 if (!isNaN(rs)) { 1267 const scaled = Math.min((rs / 12.5) * 100, 100); 1268 setTimeout(() => { 1269 fill.style.width = `${scaled}%`; 1270 indicator.style.left = `${scaled}%`; 1271 indicator.style.opacity = 1; 1272 indicator.setAttribute("title", `${rs} g/L`); 1273 }, 200); 1274 } else { 1275 setTimeout(waitForRSValueAndApply, 250); 1276 } 1277 } 1278 1279 // Fix for Bug 2: handle case where DOMContentLoaded already fired 1280 if (document.readyState === "loading") { 1281 document.addEventListener("DOMContentLoaded", waitForRSValueAndApply); 1282 } else { 1283 waitForRSValueAndApply(); 1284 } 1285</script>
1285 1286
1287<script> 1288 function initCollectionSugarScales() { 1289 const wrappers = document.querySelectorAll(".c7-residual-sugar-collection"); 1290 if (wrappers.length === 0) { 1291 setTimeout(initCollectionSugarScales, 300); 1292 return; 1293 } 1294 1295 let allReady = true; 1296 1297 wrappers.forEach(wrapper => { 1298 const rsContainer = wrapper.querySelector(".c7-rs-value-container"); 1299 const fill = wrapper.querySelector(".c7-rs-fill"); 1300 const indicator = wrapper.querySelector(".c7-rs-indicator"); 1301 if (!rsContainer || !fill || !indicator) return; 1302 1303 const raw = rsContainer.textContent.trim(); 1304 const rs = parseFloat(raw); 1305 1306 // Fix for Bug 1: if value is NaN, C7 hasn't populated it yet â retry 1307 if (isNaN(rs)) { 1308 allReady = false; 1309 return; 1310 } 1311 1312 const scaled = Math.min((rs / 12.5) * 100, 100); 1313 fill.style.width = `${scaled}%`; 1314 indicator.style.left = `${scaled}%`; 1315 indicator.style.opacity = 1; 1316 indicator.setAttribute("title", `${rs} g/L`); 1317 }); 1318 1319 // If any wrapper had an empty value, retry the whole pass 1320 if (!allReady) { 1321 setTimeout(initCollectionSugarScales, 300); 1322 } 1323 } 1324 1325 // Fix for Bug 2: handle case where DOMContentLoaded already fired 1326 if (document.readyState === "loading") { 1327 document.addEventListener("DOMContentLoaded", initCollectionSugarScales); 1328 } else {
1329 initCollectionSugarScales(); 1330 } 1331</script>
1331<script> 1332// C7 to dataLayer Bridge (for iframes and embeds) 1333window.dataLayer = window.dataLayer || []; 1334 1335// Listen for postMessage from Commerce7 iframes 1336window.addEventListener('message', function(e) { 1337 if (e.origin.includes('commerce7.com') && e.data && e.data.event) { 1338 dataLayer.push(e.data); 1339 } 1340}); 1341 1342// DOM Observer for dynamic Commerce7 elements (products, cart) 1343const observer = new MutationObserver(() => { 1344 // Product View 1345 document.querySelectorAll('[data-c7-product]').forEach(el => { 1346 if (!el.dataset.pushed) { 1347 dataLayer.push({ 1348 event: 'view_item', 1349 ecommerce: { 1350 currency: 'USD', 1351 value: parseFloat(el.dataset.price || 0) / 100, 1352 items: [{ 1353 item_id: el.dataset.handle, 1354 item_name: el.dataset.title || el.dataset.handle, 1355 price: parseFloat(el.dataset.price || 0) / 100, 1356 quantity: 1, 1357 item_brand: el.dataset.collection === 'all-glasses-raised' ? 'AGR' : 'KSV' 1358 }] 1359 } 1360 }); 1361 el.dataset.pushed = 'true'; 1362 } 1363 }); 1364 1365 // AddToCart (listen for buttons) 1366 document.querySelectorAll('[data-c7-add-to-cart]').forEach(btn => { 1367 btn.addEventListener('click', () => { 1368 const product = btn.closest('[data-c7-product]'); 1369 dataLayer.push({ 1370 event: 'add_to_cart', 1371 ecommerce: { 1372 currency: 'USD', 1373 value: parseFloat(product.dataset.price || 0) / 100, 1374 items: [{ 1375 item_id: product.dataset.handle, 1376 item_name: product.dataset.title, 1377 price: parseFloat(product.dataset.price || 0) / 100, 1378 quantity: 1, 1379 item_brand: product.dataset.collection === 'all-glasses-raised' ? 'AGR' : 'KSV' 1380 }] 1381 } 1382 }); 1383 }); 1384 }); 1385 1386 // InitiateCheckout 1387 document.querySelectorAll('[data-c7-checkout]').forEach(btn => { 1388 btn.addEventListener('click', () => { 1389 dataLayer.push({ event: 'begin_checkout' }); 1390 }); 1391 }); 1392 1393 // Purchase (on thank-you page - parse order if available) 1394 if (location.pathname.includes('/thankyou')) { 1395 // Assume Commerce7 pushes order data; fallback fetch if needed 1396 dataLayer.push({ 1397 event: 'purchase', 1398 ecommerce: { 1399 currency: 'USD', 1400 value: 0, // Calculated in GTM 1401 items: [] // Array of items with item_brand 1402 } 1403 }); 1404 } 1405}); 1406observer.observe(document.body, { childList: true, subtree: true }); 1407</script>
1407 1408</body> 1409</html> 1410 1411<!-- Cache served by breeze CACHE (Desktop) - Last modified: Fri, 09 Oct 2026 18:36:33 GMT --> 1412 1413<!-- plugin=object-cache-pro client=phpredis metric#hits=12627 metric#misses=51 metric#hit-ratio=99.6 metric#bytes=10039275 metric#prefetches=179 metric#store-reads=39 metric#store-writes=12 metric#store-hits=190 metric#store-misses=24 metric#sql-queries=41 metric#ms-total=1036.77 metric#ms-cache=38.19 metric#ms-cache-avg=0.7637 metric#ms-cache-ratio=3.7 sample#redis-hits=18965127 sample#redis-misses=2225375 sample#redis-hit-ratio=89.5 sample#redis-ops-per-sec=25 sample#redis-evicted-keys=0 sample#redis-used-memory=88245976 sample#redis-used-memory-rss=78217216 sample#redis-memory-fragmentation-ratio=0.9 sample#redis-connected-clients=1 sample#redis-tracking-clients=0 sample#redis-rejected-connections=0 sample#redis-keys=18228 -->
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.