figcaption { display: none !important; }
/* Homepage ONLY: Upcoming Events section
   Targets only the event cards that include .is-event-name
*/
.home .wp-block-group:has(.is-event-name) figcaption {
  display: none !important;
}

/* Force all event images to be uniform squares */
.home .wp-block-group:has(.is-event-name) figure,
.home .wp-block-group:has(.is-event-name) .wp-block-image {
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.home .wp-block-group:has(.is-event-name) figure img,
.home .wp-block-group:has(.is-event-name) .wp-block-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tastings-card-title a,
.food-card-title a,
.events-card-title a {
  color: #fff !important;
  text-decoration: none !important;
}
/* Make header overlay the hero on the FRONT PAGE (Kadence + WP) */
body.home #masthead,
body.front-page #masthead,
body.home .site-header,
body.front-page .site-header,
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap,
body.home .site-header-wrap,
body.front-page .site-header-wrap {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}

/* Remove “reserved space” above content that can keep hero pushed down */
body.home .site,
body.front-page .site,
body.home #page,
body.front-page #page,
body.home .content-area,
body.front-page .content-area {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Prevent the first Cover from hiding under the header (adjust as needed) */
body.home .wp-block-cover.alignfull:first-of-type,
body.front-page .wp-block-cover.alignfull:first-of-type {
  padding-top: 120px !important;
}
/* Keep logo from exceeding header height */
.home .site-branding img,
.front-page .site-branding img {
  max-height: 56px !important; /* adjust: 50–70px */
  height: auto !important;
}
/* HOME: force ALL header layers to be transparent */
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap,
body.home #masthead,
body.front-page #masthead,
body.home .site-header,
body.front-page .site-header,
body.home .kadence-header-row,
body.front-page .kadence-header-row,
body.home .kadence-header-column,
body.front-page .kadence-header-column,
body.home .site-branding,
body.front-page .site-branding {
  background: transparent !important;
}

/* If a pseudo-element is creating the white box, kill it */
body.home #masthead:before,
body.home #masthead:after,
body.front-page #masthead:before,
body.front-page #masthead:after,
body.home .kadence-header-wrap:before,
body.home .kadence-header-wrap:after,
body.front-page .kadence-header-wrap:before,
body.front-page .kadence-header-wrap:after {
  background: transparent !important;
  content: none !important;
}
/* Wine titles can wrap, but columns stay aligned */
.jcw-wine-title{
  min-height: 3.6em;      /* reserve space for ~2 lines */
  line-height: 1.2;
  text-align: center;
  margin-top: 16px;
  margin-bottom: 0;
}

/* Mobile: allow a bit more room since text wraps more */
@media (max-width: 781px){
  .jcw-wine-title{
    min-height: 4.8em;
  }
}
/* Normalize wine title spacing so all three sit on the same line */
.jcw-wine-title{
  width: 100%;
  text-align: center !important;
  min-height: 3.6em;          /* reserves space for wrapping */
  line-height: 1.2;
  margin: 14px 0 0 !important; /* SAME top spacing for all */
  padding: 0 !important;
  display: block;
}
/*
 * /* Make blog/archive card images the same height and crop consistently */
.blog .entry-media img,
.archive .entry-media img,
.blog .post-thumbnail img,
.archive .post-thumbnail img {
  width: 100%;
  height: 260px;          /* adjust: 220–320 */
  object-fit: cover;
  display: block;
}
/* HOMEPAGE ONLY: overlay header on hero video (no white gap) */
body.home #masthead,
body.front-page #masthead{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  background: transparent !important;
}

/* HOMEPAGE ONLY: remove reserved space above content */
body.home #content,
body.front-page #content{
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Optional: add top padding INSIDE the cover so headline clears the header */
body.home .wp-block-cover.alignfull:first-of-type,
body.front-page .wp-block-cover.alignfull:first-of-type{
  padding-top: 120px !important;  /* adjust 90–140 */
}
/* HOMEPAGE ONLY: kill the white header background layer */
body.home #masthead,
body.front-page #masthead,
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap,
body.home .site-header,
body.front-page .site-header,
body.home .kadence-header-row,
body.front-page .kadence-header-row,
body.home .kadence-header-column,
body.front-page .kadence-header-column {
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}
/* HOMEPAGE ONLY: tighten header height so no extra white space shows */
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.home .wp-block-cover.alignfull:first-of-type,
body.front-page .wp-block-cover.alignfull:first-of-type{
  margin-top: 0 !important;
}
/* Remove header bottom border (transparent header) */
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap,
body.home #masthead,
body.front-page #masthead{
  border-bottom: 0 !important;
  box-shadow: none !important;
}
/* Remove header bottom border (transparent header) */
body.home .kadence-header-wrap,
body.front-page .kadence-header-wrap,
body.home #masthead,
body.front-page #masthead{
  border-bottom: 0 !important;
  box-shadow: none !important;
}
body.home #masthead,
body.front-page #masthead{
  background: transparent !important;
}
/* HOMEPAGE ONLY: remove header bar + line and overlay on hero */
body.home header.site-header,
body.front-page header.site-header,
body.home #masthead,
body.front-page #masthead{
  position: absolute !important;
  top: 0; left: 0; right: 0;
  width: 100%;
  z-index: 99999;
  background: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Kill common “divider line” pseudo-elements */
body.home header.site-header:after,
body.front-page header.site-header:after,
body.home #masthead:after,
body.front-page #masthead:after{
  content: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Remove any reserved space above the hero */
body.home #content,
body.front-page #content{
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* ========= HOMEPAGE ONLY: overlay header on top of hero/video ========= */
body.home header.site-header,
body.front-page header.site-header,
body.home #masthead,
body.front-page #masthead,
body.home .site-header,
body.front-page .site-header,
body.home .header,
body.front-page .header,
body.home .header-wrap,
body.front-page .header-wrap,
body.home .main-header,
body.front-page .main-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
  background: transparent !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Kill any “line” drawn by pseudo-elements */
body.home header.site-header:after,
body.front-page header.site-header:after,
body.home #masthead:after,
body.front-page #masthead:after,
body.home .site-header:after,
body.front-page .site-header:after {
  content: none !important;
}

/* Remove any reserved top spacing so your video sits right behind header */
body.home #content,
body.front-page #content,
body.home .site-content,
body.front-page .site-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Optional: give your hero text breathing room under the header */
body.home .wp-block-cover.alignfull:first-of-type,
body.front-page .wp-block-cover.alignfull:first-of-type {
  padding-top: 120px !important; /* tweak 90–150 */
}


/* ========= ALL OTHER PAGES: normal solid header ========= */
body:not(.home):not(.front-page) header.site-header,
body:not(.home):not(.front-page) #masthead,
body:not(.home):not(.front-page) .site-header,
body:not(.home):not(.front-page) .header,
body:not(.home):not(.front-page) .header-wrap,
body:not(.home):not(.front-page) .main-header {
  position: relative !important;
  background: #ffffff !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
/* HOMEPAGE ONLY: make nav links green */
body.home .main-navigation a,
body.front-page .main-navigation a,
body.home nav a,
body.front-page nav a {
  color: #5aa63a !important;
}

body.home .main-navigation a:hover,
body.front-page .main-navigation a:hover,
body.home nav a:hover,
body.front-page nav a:hover {
  color: #3f7f26 !important;
}
/* HOMEPAGE ONLY: remove background from common topbar/header wrappers */
body.home .top-bar,
body.front-page .top-bar,
body.home .header-top,
body.front-page .header-top {
  background: transparent !important;
}
/* HOMEPAGE ONLY: overlay header + remove white background/line */
body.home .site-header-row-container,
body.home .site-main-header-inner-wrap,
body.home .site-header-row,
body.home .site-header-row-container-inner,
body.home #mobile-header {
  background: transparent !important;
  box-shadow: none !important;
  border-bottom: 0 !important;
}

/* Put the main header row on top of the page content */
body.home .site-main-header-wrap,
body.home .site-header-row-container[data-section="kadence_customizer_header_main"]{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}

/* Remove any reserved spacing pushing the hero down */
body.home #content,
body.home .site-content,
body.home .content-area{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Give the hero text room under the overlay header (adjust if needed) */
body.home .wp-block-cover.alignfull:first-of-type{
  padding-top: 120px !important;
}
/* ALL OTHER PAGES: keep header normal and solid */
body:not(.home) .site-main-header-wrap,
body:not(.home) .site-header-row-container[data-section="kadence_customizer_header_main"]{
  position: relative !important;
}
/* HOMEPAGE ONLY: make nav links green */
body.home .site-header-section-right a,
body.home .site-header-section-left a,
body.home .site-header-section-center a{
  color: #5aa63a !important;
}

body.home .site-header-section-right a:hover,
body.home .site-header-section-left a:hover,
body.home .site-header-section-center a:hover{
  color: #3f7f26 !important;
}
/* === TEMP: Duplicate "new homepage" page only (page-id-10998) === */

/* Overlay header on top of hero/video and remove white background/line */
.page-id-10998 #masthead,
.page-id-10998 .site-header-row-container,
.page-id-10998 .site-main-header-wrap,
.page-id-10998 .site-header-row,
.page-id-10998 .site-main-header-inner-wrap{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.page-id-10998 #masthead{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}

/* Make menu links green on this page only */
.page-id-10998 #masthead a{
  color: #5aa63a !important;
}
.page-id-10998 #masthead a:hover{
  color: #3f7f26 !important;
}

/* Give the hero a top cushion so text isn't hidden behind the header */
.page-id-10998 .wp-block-cover.alignfull:first-of-type{
  padding-top: 120px !important; /* tweak 90–150 */
}
/* ===== Page 10998 ONLY: remove Kadence TOP row white band ===== */
.page-id-10998 .site-header-row-container[data-section="kadence_customizer_header_top"]{
  display: none !important;
}

/* Make sure MAIN header row is the one overlaying and transparent */
.page-id-10998 .site-header-row-container[data-section="kadence_customizer_header_main"],
.page-id-10998 .site-main-header-wrap,
.page-id-10998 #masthead{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

.page-id-10998 .site-main-header-wrap,
.page-id-10998 .site-header-row-container[data-section="kadence_customizer_header_main"]{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}
/* Make all wine titles sit at the same height */
.jcw-wine-title{
  width: 100%;
  text-align: center !important;
  min-height: 3.6em;     /* reserves 2 lines */
  line-height: 1.2;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  display: block;
}

/* Make the button area consistent in every column */
.wp-block-buttons{
  justify-content: center;
  margin-top: 14px !important;
}

/* If one column’s buttons block has extra bottom margin, normalize it */
.wp-block-buttons:last-child{
  margin-bottom: 0 !important;
}
/* Titles wrap but stay aligned (only inside JCW wine grid) */
.jcw-wine-grid .jcw-wine-title{
  width: 100%;
  text-align: center !important;
  min-height: 3.6em;
  line-height: 1.2;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  display: block;
}

/* Make the Buttons block spacing identical in each column */
.jcw-wine-grid .wp-block-buttons{
  justify-content: center !important;
  margin-top: 14px !important;
  margin-bottom: 0 !important;
}

/* Remove random extra spacing some columns add around buttons */
.jcw-wine-grid .wp-block-button{
  margin: 0 !important;
}