/* L'OFFRE DE BIENVENUE (03/10/2026) — lot Fondateur. Meme famille visuelle que l'offre de
   l'agent (carte or, encart vert, bouton vert pulse), voir agentStyles() dans index.html. */
.bv-pop{position:relative;text-align:center;padding:4px 2px 2px;max-width:460px;margin:0 auto}
.bv-ruban-haut{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ffd76a;background:#2a2208;border:1px solid #ffd76a66;border-radius:999px;padding:5px 14px;animation:bvDescend .5s cubic-bezier(.2,1.4,.4,1) both}
.bv-titre{font-size:26px;font-weight:900;color:#fff;margin:10px 0 2px;line-height:1.15;opacity:0;animation:bvFonduHaut .45s ease .2s forwards}
.bv-sous{font-size:14px;color:#cfe0ff;margin:0 8px 12px;opacity:0;animation:bvFonduHaut .45s ease .35s forwards}
.bv-lot{position:relative;overflow:hidden;margin:0 auto;max-width:360px;padding:16px 12px 14px;border-radius:20px;background:radial-gradient(120% 80% at 50% 0%,#5b4a12 0%,#2a2208 45%,#120f05 100%);border:2px solid #ffd76a;box-shadow:0 0 0 1px #000,0 10px 40px #ffd76a33;opacity:0;animation:bvRetourne .8s cubic-bezier(.2,.9,.3,1.2) .5s forwards}
.bv-lot-l{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ffe9a8;margin-bottom:10px}
.bv-pieces{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.bv-piece{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;border-radius:14px;background:#0000004d;border:1px solid #ffd76a33;opacity:0;animation:bvPop .5s cubic-bezier(.2,1.5,.4,1) forwards}
.bv-piece:nth-child(1){animation-delay:1s}.bv-piece:nth-child(2){animation-delay:1.15s}.bv-piece:nth-child(3){animation-delay:1.3s}
.bv-piece b{font-size:12.5px;color:#fff;line-height:1.2}
.bv-piece small{font-size:10.5px;color:#e8d9a8}
.bv-vis{width:64px;height:64px;display:flex;align-items:center;justify-content:center;position:relative}
.bv-vis img,.bv-vis svg{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;border-radius:50%}
/* Le cadre dessine par public/cosmetiques-rendu.js : tenu a la taille de la vignette, quel que soit l'ecran. */
.bv-vis .cosm-cadre{width:100%!important;height:100%!important;box-sizing:border-box;display:flex;overflow:hidden}
.bv-vis .cosm-cadre>*{width:100%!important;height:100%!important}
.bv-piece{min-width:0}
.bv-av{border-radius:50%;overflow:hidden;border:3px solid #ffd76a;background:#0b1024;box-shadow:0 0 16px #ffd76a66}
.bv-cadre{border-radius:50%;padding:4px;background:conic-gradient(from 0deg,#ffd76a,#fff3c4,#b8860b,#ffd76a,#fff3c4,#b8860b,#ffd76a);box-shadow:0 0 18px #ffd76a88}
.bv-cadre>*{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#0b1024;display:block}
.bv-badge svg{border-radius:0}
.bv-shine{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#fff6 50%,transparent 65%);transform:translateX(-120%);animation:bvBrille 1.1s ease 1.6s forwards;pointer-events:none}
.bv-exclu{font-size:11.5px;color:#ffe9a8;margin-top:10px;line-height:1.4}
.bv-plus{font-size:20px;font-weight:900;color:#ffd76a;margin:8px 0 4px;opacity:0;animation:bvFonduHaut .4s ease 1.5s forwards}
.bv-gain{margin:0 auto 12px;max-width:320px;padding:10px 12px;border-radius:16px;background:linear-gradient(135deg,#0f3d26,#0a2417);border:2px solid #3ddc97;box-shadow:0 0 30px #3ddc9733;opacity:0;animation:bvPop .55s cubic-bezier(.2,1.5,.4,1) 1.65s forwards}
.bv-gain-l{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9ff0c9}
.bv-gain-v{font-size:32px;font-weight:900;color:#3ddc97;text-shadow:0 0 20px #3ddc9799;line-height:1.15}
.bv-gain-s{font-size:12px;color:#9fb3c8}
.bv-fin{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#fff;background:#ffffff12;border:1px solid #ffffff22;border-radius:10px;padding:6px 12px;margin-bottom:12px;opacity:0;animation:bvFonduHaut .4s ease 1.9s forwards}
.bv-fin b{color:#ffd76a}
.bv-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:320px;margin:0 auto;padding:14px 20px;border:0;border-radius:14px;cursor:pointer;font-size:17px;font-weight:900;color:#06210f;background:linear-gradient(135deg,#5ef0a8,#22b86e);opacity:0;animation:bvFonduHaut .45s ease 2.1s forwards,bvPulse 1.8s ease-in-out 2.8s infinite}
.bv-cta b{font-size:20px;background:#06210f;color:#5ef0a8;border-radius:10px;padding:4px 10px;white-space:nowrap}
.bv-cta:disabled{opacity:.6;cursor:wait}
.bv-mention{font-size:11.5px;color:#7f93a8;margin:8px auto 0;max-width:340px;line-height:1.45;opacity:0;animation:bvFonduHaut .4s ease 2.25s forwards}
.bv-plustard{background:none;border:0;color:#7f93a8;text-decoration:underline;cursor:pointer;margin-top:8px;font-size:13px;opacity:0;animation:bvFonduHaut .4s ease 2.35s forwards}
.bv-finie{font-size:14px;color:#ffb4a8;margin:10px 0}
@keyframes bvDescend{from{opacity:0;transform:translateY(-24px) scale(.9)}to{opacity:1;transform:none}}
@keyframes bvFonduHaut{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes bvRetourne{0%{opacity:0;transform:rotateY(95deg) scale(.8)}60%{opacity:1;transform:rotateY(-10deg) scale(1.03)}100%{opacity:1;transform:rotateY(0) scale(1)}}
@keyframes bvBrille{to{transform:translateX(120%)}}
@keyframes bvPop{0%{opacity:0;transform:scale(.6)}100%{opacity:1;transform:scale(1)}}
@keyframes bvPulse{0%,100%{box-shadow:0 0 0 0 #3ddc9766}50%{box-shadow:0 0 0 12px #3ddc9700}}
@media (max-width:420px){
  .bv-ruban-haut{font-size:10px;letter-spacing:.06em;padding:5px 10px}
  .bv-titre{font-size:22px}
  .bv-vis{width:54px;height:54px}
  .bv-gain-v{font-size:28px}
  .bv-cta{font-size:15px;padding:13px 14px}
  .bv-cta b{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.bv-pop *{animation:none!important;opacity:1!important;transform:none!important}.bv-shine{display:none}}

/* LE RAPPEL DISCRET, en tete de la boutique, tant que l'offre est valable. */
.bv-rappel{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px;padding:10px 14px;border-radius:14px;background:linear-gradient(135deg,#2a2208,#16120a);border:1px solid #ffd76a66;text-align:left}
.bv-rappel-ic{font-size:22px;flex:none}
.bv-rappel-t{flex:1;min-width:180px;font-size:13px;color:#e8d9a8;line-height:1.4}
.bv-rappel-t b{color:#fff}
.bv-rappel button{flex:none;border:0;border-radius:10px;padding:8px 14px;font-weight:800;cursor:pointer;color:#06210f;background:linear-gradient(135deg,#5ef0a8,#22b86e)}
