/* PROMO_NOV10 (2026-11-05): the 10 % notice. Bottom left (WhatsApp and the chat sit at the right), never a blocking modal. */
.bjm-promo{--p:#7828c8;--pd:#5b1f99;--ps:#f3ebfb;--ink:#1d1a22;--mu:#5f5a66;--ln:#e7e3ec;--ok:#1f7a52;
  position:fixed;z-index:1040;left:calc(1rem + env(safe-area-inset-left,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));
  width:min(21rem,calc(100vw - 6rem));box-sizing:border-box;background:#fff;color:var(--ink);border:1px solid var(--ln);border-radius:14px;
  box-shadow:0 10px 30px rgba(40,20,70,.16);padding:.9rem .95rem .95rem;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem .8rem;
  font-family:Manrope,sans-serif;line-height:1.4;text-align:left}
.bjm-promo[hidden],.bjm-promo-pill[hidden]{display:none!important}
.bjm-promo__x{position:absolute;top:.25rem;right:.25rem;width:2.75rem;height:2.75rem;border:0;background:transparent;color:var(--mu);font-size:1.25rem;line-height:1;cursor:pointer;border-radius:10px}
.bjm-promo__tag{grid-row:1/3;align-self:start;width:3.6rem;height:3.6rem;border-radius:12px;background:var(--p);color:#fff;display:grid;place-items:center;font-weight:800;font-size:1.1rem;letter-spacing:-.02em}
.bjm-promo__title{font-size:.9375rem;font-weight:800;margin:.15rem 2rem 0 0;line-height:1.25;color:var(--ink)}
.bjm-promo__text{margin:0;font-size:.8125rem;color:var(--mu)}
.bjm-promo__code{grid-column:1/-1;display:flex;align-items:center;gap:.5rem;margin-top:.65rem;border:1.5px dashed var(--p);border-radius:10px;padding:.3rem .3rem .3rem .75rem;background:var(--ps)}
.bjm-promo__code b{flex:1;font-size:1rem;letter-spacing:.12em;color:var(--p);font-weight:800}
.bjm-promo__code button{font:inherit;font-weight:700;font-size:.8125rem;border:0;border-radius:8px;background:var(--p);color:#fff;padding:.5rem .8rem;min-height:2.5rem;cursor:pointer}
.bjm-promo__code button:hover{background:var(--pd)}
.bjm-promo__code button.is-done{background:var(--ok)}
.bjm-promo__fine{grid-column:1/-1;margin:.45rem 0 0;font-size:.75rem;color:var(--mu)}
.bjm-promo button:focus-visible,.bjm-promo-pill:focus-visible{outline:2px solid var(--p);outline-offset:2px}
.bjm-promo-pill{position:fixed;z-index:1040;left:calc(1rem + env(safe-area-inset-left,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));
  border:0;border-radius:999px;background:#7828c8;color:#fff;font-family:Manrope,sans-serif;font-weight:800;font-size:.8125rem;padding:.55rem .9rem;min-height:2.75rem;
  box-shadow:0 6px 18px rgba(40,20,70,.2);cursor:pointer}
.bjm-promo-pill span{font-weight:600;opacity:.9}
.bjm-promo-cart{margin:.75rem 0 .35rem;padding:.6rem .75rem;border:1.5px dashed #7828c8;border-radius:10px;background:#f3ebfb;color:#1d1a22;font-size:.875rem;line-height:1.4}
/* Phone: compact, and above the chat tab (Tawk's «Chatear» tab sits at the bottom right, about 4.5rem tall). */
@media (max-width:575px){
  .bjm-promo{left:calc(.6rem + env(safe-area-inset-left,0px));right:calc(.6rem + env(safe-area-inset-right,0px));width:auto;
    bottom:calc(5.25rem + env(safe-area-inset-bottom,0px));padding:.7rem .75rem .75rem;gap:.1rem .65rem}
  .bjm-promo__tag{width:2.75rem;height:2.75rem;font-size:.875rem;border-radius:10px;grid-row:1/2;align-self:center}
  .bjm-promo__title{align-self:center;margin-top:0}
  .bjm-promo__text{display:none}
  .bjm-promo__code{margin-top:.5rem}
  .bjm-promo__fine{margin-top:.35rem}
  .bjm-promo-pill{left:calc(.6rem + env(safe-area-inset-left,0px));bottom:calc(.75rem + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:no-preference){
  .bjm-promo.is-in{animation:bjmPromoUp .45s cubic-bezier(.2,.8,.2,1) both}
  .bjm-promo.is-in .bjm-promo__tag{animation:bjmPromoStamp .5s .35s cubic-bezier(.3,1.6,.5,1) both}
  @keyframes bjmPromoUp{from{transform:translateY(1.25rem);opacity:0}to{transform:none;opacity:1}}
  @keyframes bjmPromoStamp{0%{transform:scale(.6) rotate(-14deg);opacity:0}70%{transform:scale(1.08) rotate(3deg);opacity:1}100%{transform:none}}
}
@media print{.bjm-promo,.bjm-promo-pill{display:none!important}}
