/* ── HOVER ZOOM GLOBAL PARA CARDS DE PRODUTO ── */
.vida-card-top img,
.ap-card-top img,
.guaira-card-top img,
.bn-card-top img,
.ac-card-top img,
.ca-card-top img {
  transition: transform .35s cubic-bezier(.4,0,.2,1) !important;
}
.vida-card:hover .vida-card-top img,
.ap-card:hover .ap-card-top img,
.guaira-card:hover .guaira-card-top img,
.bn-card:hover .bn-card-top img,
.ac-card:hover .ac-card-top img,
.ca-card:hover .ca-card-top img {
  transform: scale(1.1) translateY(-5px) !important;
}

/* ── LIGHTBOX GLOBAL ── */
#lbOverlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.88);
  z-index: 99999;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 16px;
  backdrop-filter: blur(4px);
  animation: lbFadeIn .22s ease;
}
#lbOverlay.open { display: flex; }
@keyframes lbFadeIn { from { opacity:0 } to { opacity:1 } }

#lbImgWrap {
  position: relative;
  max-width: min(92vw, 680px);
  max-height: 80vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
#lbImg {
  max-width: 100%;
  max-height: 78vh;
  object-fit: contain;
  border-radius: 12px;
  box-shadow: 0 8px 48px rgba(0,0,0,.6);
  transform: scale(.92);
  animation: lbZoomIn .28s ease forwards;
}
@keyframes lbZoomIn { to { transform: scale(1); } }

#lbCaption {
  margin-top: 14px;
  color: #fff;
  font-size: .95rem;
  text-align: center;
  opacity: .88;
  max-width: 600px;
  line-height: 1.4;
}

#lbClose {
  position: fixed;
  top: 16px;
  right: 20px;
  background: rgba(255,255,255,.15);
  border: none;
  color: #fff;
  font-size: 1.5rem;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s;
  z-index: 100000;
}
#lbClose:hover { background: rgba(255,255,255,.3); }
