/* Healio Buy 2 Get 1. Uses the theme's tokens (--rose, --berry, --wine ...). */

/* ---------- Announcement strip ---------- */
.b2g1-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 10px;padding:9px 16px;background:var(--wine,#2B0A14);color:#fff;font-family:var(--font-body,sans-serif);font-size:13px;line-height:1.35;text-align:center}
.b2g1-strip b{font-weight:700;letter-spacing:.02em;color:var(--blush,#E9C3D3)}
.b2g1-strip__sep{width:4px;height:4px;border-radius:50%;background:var(--rose,#C96790)}
.b2g1-strip__short{display:none}
@media (max-width:600px){.b2g1-strip{font-size:12.5px;padding:8px 16px;gap:6px}.b2g1-strip__sep,.b2g1-strip__long{display:none}.b2g1-strip__short{display:inline}}

/* ---------- PDP tier ---------- */
.healio-bundle__opt.is-b2g1 .healio-bundle__badge{background:var(--rose,#C96790)}
.healio-bundle__opt.is-b2g1 .healio-bundle__off{color:var(--mauve,#6B6165);font-weight:500;font-size:11px}
.healio-bundle__opt.is-b2g1 .healio-bundle__qty b{color:var(--berry,#8E2444);font-weight:700}
.b2g1-pdp-note{margin:10px 0 0;font-size:13px;line-height:1.4;color:var(--mauve,#6B6165)}
.b2g1-pdp-note b{color:var(--berry,#8E2444)}

/* ---------- Progress bar ---------- */
.b2g1-bar{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1.5px dashed var(--rose,#C96790);border-radius:14px;background:#fff;font-family:var(--font-body,sans-serif);color:var(--wine,#2B0A14)}
.b2g1-bar[hidden]{display:none!important}
.b2g1-bar.is-unlocked{border-style:solid;border-color:#3f9d6b;background:#f1faf5}
.b2g1-bar--drawer{margin:12px 20px 0}
.b2g1-bar--page{margin:0 0 20px}
.b2g1-bar__dots{display:flex;gap:5px;flex:0 0 auto}
.b2g1-dot{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--line,rgba(43,10,20,.12));background:#fff;color:var(--mauve,#6B6165);font-family:var(--font-mono,monospace);font-size:11px;font-weight:600}
.b2g1-dot.is-free{width:auto;min-width:26px;padding:0 7px;border-radius:999px;font-size:9.5px;letter-spacing:.06em;border-color:var(--rose,#C96790);color:var(--rose,#C96790)}
.b2g1-dot.is-on{background:var(--rose,#C96790);border-color:var(--rose,#C96790);color:#fff}
.b2g1-bar.is-unlocked .b2g1-dot.is-on{background:#3f9d6b;border-color:#3f9d6b}
.b2g1-bar__text{min-width:0}
.b2g1-bar .b2g1-bar__title,.b2g1-bar .b2g1-bar__sub{margin:0!important;max-width:none}
.b2g1-bar__title{font-size:14px;line-height:1.35}
.b2g1-bar__title b{color:var(--berry,#8E2444)}
.b2g1-bar.is-unlocked .b2g1-bar__title b{color:#2f7a52}
.b2g1-bar .b2g1-bar__sub{margin-top:3px!important}
.b2g1-bar__sub{font-size:12.5px;line-height:1.4;color:var(--mauve,#6B6165)}
.b2g1-bar__sub b{color:var(--wine,#2B0A14)}
.b2g1-bar__sub s{opacity:.7;margin-left:2px}
@media (max-width:600px){.b2g1-bar--drawer{margin:10px 16px 0}.b2g1-bar{gap:10px;padding:10px 12px}.b2g1-dot{width:22px;height:22px;font-size:10px}.b2g1-dot.is-free{min-width:22px}}

/* ---------- FREE tag on the free line ---------- */
.b2g1-tag,
.b2g1-free .wc-block-components-product-name::after{display:inline-block;align-self:flex-start;padding:2px 8px;border-radius:999px;background:#3f9d6b;color:#fff;font-family:var(--font-mono,monospace);font-size:10px;font-weight:600;letter-spacing:.08em;line-height:1.5;text-decoration:none}
.b2g1-free .wc-block-components-product-name::after{content:"FREE";margin-left:8px;vertical-align:2px}
.b2g1-free-2 .wc-block-components-product-name::after{content:"2 FREE"}
.b2g1-free-3 .wc-block-components-product-name::after{content:"3 FREE"}
/* Part of a line free (1 of 3 identical vials): say how many. */
.b2g1-free-1:not(.b2g1-full) .wc-block-components-product-name::after{content:"1 FREE"}

/* Free line total: old price struck through, what they pay beside it. The
   ::after is inline-block so the parent's line-through does not reach it. */
[data-b2g1-now]{text-decoration:line-through;text-decoration-thickness:1.5px;color:var(--mauve,#6B6165)!important;font-weight:500!important}
[data-b2g1-now]::after{content:attr(data-b2g1-now);display:inline-block;margin-left:8px;text-decoration:none;color:#2f7a52;font-weight:700}
/* The sale badge measures against the crossed-out catalog price, which
   undersells a free vial; FREE says it better. */
.b2g1-full .wc-block-components-sale-badge{display:none!important}
.hc-item__now.b2g1-now-free{color:#2f7a52;font-weight:700}
