/* ================================================================
   Linfozen — Buybox no estilo NeuroDyne / nlabs (tema VERDE)
   Aplicado sobre o wrapper .lz-buybox (mantém a animação de
   entrada .builder-anim-zoom-in .delay do Pageus).
   ================================================================ */
/* O RESPIRO EM CIMA, e ele NÃO é gosto: sem margem, o selo "BEST VALUE!" bate
   nas logos (abc/CNN/NBC/CBS) logo acima. O selo é `position:absolute` com
   `top:-14px`, então ele sobe 14px PRA FORA do card e a colisão acontece num
   espaço que o card não declara ocupar -- por isso não aparece medindo altura
   de elemento, só olhando.

   48px = 34 de folga + os 14 que o selo invade. */
.lz-buybox{ width:100%; margin-top:48px; }
.lz-buybox *{ box-sizing:border-box; }
/* escondida até o vídeo chegar em 53:19 (revelada por assets/buybox-reveal.js) */
.lz-buybox.lz-gated{ display:none !important; }

.lz-pkgs{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

/* ---- Card ---- */
.lz-card{
  position:relative;
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:9px;
  background:#ffffff;
  border:2px solid #e0e8e0;
  border-radius:16px;
  padding:28px 16px 18px;
  text-decoration:none !important;
  color:#18181f !important;
  box-shadow:0 6px 18px rgba(4,61,10,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.lz-card:hover{
  transform:translateY(-4px);
  border-color:#0a8f2e;
  box-shadow:0 14px 30px rgba(4,61,10,.16);
}
.lz-card.lz-popular{
  border-color:#067a1f;
  box-shadow:0 16px 34px rgba(6,122,31,.20);
}
@media (min-width:641px){
  .lz-card.lz-popular{ transform:scale(1.045); }
  .lz-card.lz-popular:hover{ transform:scale(1.045) translateY(-4px); }
}

/* ---- Ribbon (data-headline) ---- */
.lz-ribbon{
  position:absolute; top:-14px; left:50%; transform:translateX(-50%);
  background:linear-gradient(90deg,#0aa037,#04680f);
  color:#fff; font-weight:800; font-size:.72em; letter-spacing:.08em;
  text-transform:uppercase; white-space:nowrap;
  padding:6px 16px; border-radius:999px;
  box-shadow:0 5px 12px rgba(6,122,31,.35);
}
.lz-card:not(.lz-popular) .lz-ribbon{ background:#eef3ee; color:#5a6b5a; box-shadow:none; }

/* ---- Header ---- */
.lz-head{ margin-top:6px; line-height:1; display:flex; align-items:baseline; gap:5px; }
.lz-qty{ font-family:var(--t-font-head, inherit); font-size:2.3em; font-weight:800; color:#0a5a17; letter-spacing:-.02em; }
.lz-unit{ font-size:1.05em; font-weight:700; color:#0a5a17; }
.lz-desc{ font-size:.85em; font-weight:600; color:#6b7280; }

/* ---- Image ---- */
.lz-imgwrap{
  width:100%; min-height:132px;
  background:#f3f8f3; border-radius:12px; padding:12px;
  display:flex; align-items:center; justify-content:center;
}
.lz-imgwrap img{ max-width:100%; max-height:150px; height:auto; display:block; }

/* ---- Price (preço por frasco em DESTAQUE, total abaixo) ---- */
.lz-price{ display:flex; align-items:baseline; justify-content:center; gap:3px; margin-top:6px; }
.lz-cur{ font-size:1.15em; font-weight:800; color:#067a1f; align-self:flex-start; margin-top:.4em; }
.lz-total{ font-size:2.6em; font-weight:800; color:#067a1f; line-height:.9; letter-spacing:-.02em; }
.lz-per{ font-size:.95em; font-weight:700; color:#067a1f; }
.lz-sub{ font-size:.92em; color:#4b5563; font-weight:600; margin-top:3px; }
.lz-sub b{ color:#18181f; font-weight:800; }
.lz-retail{ color:#aeb4bb; font-weight:600; text-decoration:line-through; margin-left:6px; }
.lz-save{
  display:inline-block; margin-top:3px;
  background:#fdeaec; color:#e11d2e; font-weight:800; font-size:.78em;
  padding:4px 12px; border-radius:999px;
}

/* ---- CTA button (data-button-text) ---- */
.lz-btn{
  margin-top:9px; width:100%;
  display:flex; align-items:center; justify-content:center; gap:8px;
  padding:14px 16px; border-radius:999px;
  background:linear-gradient(90deg,#0aa037,#04680f);
  color:#fff !important; font-weight:800; font-size:1.02em;
  letter-spacing:.06em; text-transform:uppercase;
  box-shadow:0 9px 20px rgba(6,122,31,.30);
  transition:filter .18s ease;
}
.lz-card:hover .lz-btn{ filter:brightness(1.07); }
.lz-card:not(.lz-popular) .lz-btn{ background:#fff; color:#067a1f !important; border:2px solid #067a1f; box-shadow:none; }

/* ---- Meta (shipping + guarantee) ---- */
.lz-meta{ display:flex; flex-direction:column; gap:3px; margin-top:3px; font-size:.8em; font-weight:600; color:#3f7a4a; }
.lz-meta span{ display:inline-flex; align-items:center; justify-content:center; gap:6px; }

/* ---- Stock note ---- */
.lz-note{ text-align:center; margin-top:24px; }
.lz-note .lz-stock{ font-weight:700; color:#18181f !important; font-size:.95em; margin:0; }
.lz-note .lz-stock b{ color:#e11d2e; }
.lz-note .lz-ship{ font-size:.8em; color:#9aa0a8 !important; max-width:540px; margin:6px auto 0; }

/* ---- Responsive ---- */
@media (max-width:640px){
  .lz-pkgs{ grid-template-columns:1fr; gap:24px; }
  .lz-card.lz-popular{ order:-1; }
}
