.elementor-459 .elementor-element.elementor-element-8bedd9a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:3em;--padding-bottom:5em;--padding-left:1em;--padding-right:1em;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}@media(min-width:768px){.elementor-459 .elementor-element.elementor-element-8bedd9a{--content-width:1440px;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for shortcode, class: .elementor-element-21f11c2 *//* =========================================
   HUDSON VALLEY TG — VENUE CARDS (Image-first)
   Premium club feel + great fallback
========================================= */

.hv-venues{
  width:100%;
  font-family: Georgia, serif;
}

.hv-venues__grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:18px;
}

.hv-venues__card{
  position:relative;
  background:#f8f6f1;
  border:1px solid #d6c9a8;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.06);
}

/* CAP */
.hv-venues__cap{
  display:block;
  position:relative;
  text-decoration:none;
  color:inherit;
  overflow:hidden; /* prevents overflow */

}

.hv-venues__img{
  width:100%;
  aspect-ratio: 4 / 3;   /* Perfect golf photo ratio */
  object-fit:cover;      /* crops evenly */
  object-position:center;
  display:block;
}

/* Dark gradient overlay for readability on images */
/* Image overlay (behind text) */
.hv-venues__cap::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to bottom,
    rgba(0,0,0,.05) 0%,
    rgba(0,0,0,.30) 60%,
    rgba(0,0,0,.55) 100%
  );
  pointer-events:none;
  z-index:1; /* behind text */
}


/* Image stays lowest */
.hv-venues__img{
  position:relative;
  z-index:0;
}

/* Text sits on top */
.hv-venues__cap-inner{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:14px 16px 14px 44px;
  border-top:3px solid #c6a756;
  z-index:2; /* ABOVE overlay */
}

/* Text overlay area */
.hv-venues__cap-inner{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:14px 16px 14px 44px;
  border-top:3px solid #c6a756; /* gold accent */
}

/* golf-ball icon */
.hv-venues__cap-inner::before{
  content:"";
  position:absolute;
  left:16px;
  bottom:18px;
  width:18px;
  height:18px;
  border-radius:999px;
  background:
    radial-gradient(circle at 30% 30%, rgba(11,61,46,.25) 0 2px, transparent 2.2px),
    radial-gradient(circle at 70% 35%, rgba(11,61,46,.25) 0 2px, transparent 2.2px),
    radial-gradient(circle at 40% 70%, rgba(11,61,46,.25) 0 2px, transparent 2.2px),
    radial-gradient(circle at 70% 75%, rgba(11,61,46,.25) 0 2px, transparent 2.2px),
    #f4e7c5;
  box-shadow:0 0 0 2px rgba(198,167,86,.35);
}

/* Title/Sub on image */
.hv-venues__title{
  margin:0;
  font-size:18px;
  font-weight:800;
  color:#f8f6f1;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

.hv-venues__sub{
  margin-top:6px;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#f4e7c5;
  opacity:.95;
  text-shadow:0 2px 10px rgba(0,0,0,.35);
}

/* FALLBACK when no image */
.hv-venues__fallback{
  width:100%;
  aspect-ratio: 4 / 3;
  display:flex;
  align-items:center;
  justify-content:center;
  background:radial-gradient(
    circle at 30% 20%,
    #2a6b50 0%,
    #0b3d2e 65%,
    #073126 100%
  );
}

.hv-venues__initials{
  width:74px;
  height:74px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  letter-spacing:.08em;
  color:#0b3d2e;
  background:linear-gradient(180deg, #f4e7c5, #c6a756);
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}

/* BODY */
.hv-venues__body{
  padding:16px;
  background:#f8f6f1;
  background-image:
    radial-gradient(circle at 25px 25px, rgba(198,167,86,.10) 0 2px, transparent 2.2px),
    radial-gradient(circle at 55px 40px, rgba(198,167,86,.08) 0 2px, transparent 2.2px),
    radial-gradient(circle at 80px 20px, rgba(198,167,86,.06) 0 2px, transparent 2.2px);
  background-size:140px 90px;
}

.hv-venues__row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-top:1px solid #e7dfc9;
  font-size:15px;
}
.hv-venues__row:first-child{ border-top:none; padding-top:0; }

.hv-venues__label{
  text-transform:uppercase;
  letter-spacing:.03em;
  font-size:12px;
  font-weight:800;
  color:#0b3d2e;
  opacity:.9;
  white-space:nowrap;
}

.hv-venues__value{
  color:#2b2b2b;
  text-align:right;
  word-break:break-word;
}
.hv-venues__value[href]{
  color:#0b3d2e;
  text-decoration:none;
  font-weight:800;
}
.hv-venues__value[href]:hover{ text-decoration:underline; }

/* ACTIONS */
.hv-venues__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.hv-venues__btn{
  display:inline-block;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(198,167,86,.55);
  background:#f2efe6;
  color:#0b3d2e;
  text-decoration:none;
  font-weight:800;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hv-venues__btn:hover{ background:#ebe4d3;
    color:#0b3d2e !important;
}

.hv-venues__btn--primary{
  background:#0b3d2e;
  color:#f4e7c5 !important;
  border-color:#0b3d2e;
}
.hv-venues__btn--primary:hover{ opacity:.92; }


/* GOLD SHIMMER HOVER */
.hv-venues__card::after{
  content:"";
  position:absolute;
  top:0;
  left:-60%;
  width:40%;
  height:100%;
  background:linear-gradient(
    120deg,
    rgba(198,167,86,0) 0%,
    rgba(198,167,86,.18) 45%,
    rgba(198,167,86,0) 100%
  );
  transform:skewX(-18deg);
  opacity:0;
}
.hv-venues__card:hover::after{
  animation:hvVenuesShimmer 700ms ease-in-out;
  opacity:1;
}
@keyframes hvVenuesShimmer{
  from{ left:-60%; }
  to{ left:120%; }
}

/* RESPONSIVE */
@media (max-width:1024px){
  .hv-venues__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width:640px){
  .hv-venues__grid{ grid-template-columns: 1fr; }
  .hv-venues__img,
  .hv-venues__fallback{ height:190px; }
}/* End custom CSS */