@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

.pbc-wrap{
    font-family:'Montserrat', sans-serif;
    position:relative;
    width:100%;
    overflow:hidden;
    z-index:9999;
    box-shadow:0 2px 12px rgba(0,0,0,.15);
}
.pbc-wrap.pbc-fixed{ position:fixed; top:0; left:0; right:0; }
.pbc-wrap.pbc-static{ position:relative; }

.pbc-track{ position:relative; width:100%; min-height:75px; overflow:hidden; }

.pbc-slide{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateX(28px) scale(.985);
    transition:opacity .6s cubic-bezier(.4,0,.2,1),
               transform .6s cubic-bezier(.4,0,.2,1),
               visibility .6s;
    padding:12px 56px;
    will-change:opacity, transform;
}
.pbc-slide.is-active{
    position:relative;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateX(0) scale(1);
    z-index:2;
}
.pbc-slide.is-leaving{
    position:absolute;
    opacity:0;
    visibility:visible;
    transform:translateX(-28px) scale(.985);
    z-index:1;
}

.pbc-slide.is-active .pbc-inner > *{
    animation:pbcFadeUp .55s cubic-bezier(.4,0,.2,1) both;
}
.pbc-slide.is-active .pbc-msg{ animation-delay:.05s; }
.pbc-slide.is-active .pbc-countdown{ animation-delay:.12s; }
.pbc-slide.is-active .pbc-cta{ animation-delay:.18s; }

@keyframes pbcFadeUp{
    from{ opacity:0; transform:translateY(6px); }
    to{ opacity:1; transform:translateY(0); }
}

@media (prefers-reduced-motion: reduce){
    .pbc-slide, .pbc-slide.is-active .pbc-inner > *{
        animation:none !important;
        transition:opacity .3s ease !important;
        transform:none !important;
    }
}

.pbc-inner{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
    max-width:1200px;
    margin:0 auto;
    width:100%;
}

.pbc-msg{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:center; }

.pbc-badge{
    background:rgba(255,255,255,.22);
    padding:4px 12px;
    border-radius:20px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.5px;
    text-transform:uppercase;
    white-space:nowrap;
}

.pbc-text{
    font-size:15px;
    font-weight:600;
    letter-spacing:.2px;
    text-align:center;
}
.pbc-sub{
    display:inline-block;
    margin-left:8px;
    font-weight:400;
    opacity:.85;
    font-size:13px;
}

.pbc-cta{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:rgba(255,255,255,.95);
    color:#1e1b4b;
    padding:8px 18px;
    border-radius:30px;
    font-weight:700;
    font-size:13px;
    text-decoration:none;
    white-space:nowrap;
    overflow:hidden;
    isolation:isolate;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1),
               box-shadow .35s cubic-bezier(.4,0,.2,1);
}
.pbc-cta::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.06);
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .4s cubic-bezier(.4,0,.2,1);
    z-index:-1;
}
.pbc-cta:hover{
    transform:translateY(-2px) scale(1.03);
    box-shadow:0 8px 20px rgba(0,0,0,.28);
}
.pbc-cta:hover::before{ transform:scaleX(1); }
.pbc-cta:active{ transform:translateY(0) scale(.98); }
.pbc-cta svg{
    width:14px;
    height:14px;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1);
}
.pbc-cta:hover svg{ transform:translateX(3px); }

.pbc-dots{
    position:absolute;
    bottom:6px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:6px;
    z-index:2;
}
.pbc-dot{
    width:8px; height:8px;
    border-radius:50%;
    border:none;
    background:rgba(255,255,255,.45);
    cursor:pointer;
    padding:0;
    transition:background .3s, transform .3s;
}
.pbc-dot.is-active{ background:#fff; transform:scale(1.3); box-shadow:0 0 0 3px rgba(255,255,255,.25); }
.pbc-dot{ transition:background .35s cubic-bezier(.4,0,.2,1), transform .35s cubic-bezier(.4,0,.2,1), box-shadow .35s; }

.pbc-close{
    position:absolute;
    top:8px;
    right:12px;
    z-index:3;
    background:rgba(255,255,255,.18);
    border:none;
    border-radius:50%;
    width:26px;
    height:26px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    cursor:pointer;
    transition:background .2s;
}
.pbc-close:hover{ background:rgba(255,255,255,.35); }
.pbc-close svg{ width:14px; height:14px; }

@media (max-width: 768px){
    .pbc-wrap{ z-index:900; }
    .pbc-slide{ padding:12px 42px; min-height:75px; }
    .pbc-inner{ flex-direction:column; gap:8px; }
    .pbc-text{ font-size:13px; }
    .pbc-sub{ display:block; margin-left:0; margin-top:2px; }
    .pbc-cta{ font-size:12px; padding:7px 14px; }
    .pbc-dots{ position:relative; bottom:auto; margin-top:6px; }
}

body.pbc-has-fixed-banner{ /* opcional: añadir vía JS un padding-top al body si el cintillo es fixed */ }


/* ===== Countdown ===== */
.pbc-countdown{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    justify-content:center;
}
.pbc-cd-label{
    font-size:12px;
    font-weight:600;
    opacity:.9;
    white-space:nowrap;
}
.pbc-cd-units{
    display:flex;
    gap:6px;
}
.pbc-cd-unit{
    display:flex;
    flex-direction:column;
    align-items:center;
    background:rgba(255,255,255,.16);
    backdrop-filter:blur(2px);
    border-radius:8px;
    padding:4px 8px;
    min-width:42px;
}
.pbc-cd-num{
    font-size:16px;
    font-weight:800;
    line-height:1;
    font-family:'Montserrat', sans-serif;
    letter-spacing:.5px;
}
.pbc-cd-lbl{
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.5px;
    opacity:.8;
    margin-top:1px;
}
.pbc-countdown.pbc-cd-expired .pbc-cd-units{ display:none; }
.pbc-cd-expired-msg{ font-weight:700; font-size:13px; display:none; }
.pbc-countdown.pbc-cd-expired .pbc-cd-expired-msg{ display:inline; }

/* ===== WhatsApp button ===== */
.pbc-cta-wa{
    background:linear-gradient(135deg, #25D366, #1DA851);
    color:#fff !important;
    box-shadow:0 4px 14px rgba(0,0,0,.2);
}
.pbc-cta-wa::before{ background:rgba(255,255,255,.15); }
.pbc-cta-wa:hover{
    box-shadow:0 10px 24px rgba(37,211,102,.5);
    animation:pbcWaPulse 1.4s ease-in-out infinite;
}
.pbc-wa-icon{
    width:18px;
    height:18px;
    flex-shrink:0;
    transition:transform .35s cubic-bezier(.34,1.56,.64,1);
}
.pbc-cta-wa:hover .pbc-wa-icon{
    transform:scale(1.35) rotate(-6deg);
}
@keyframes pbcWaPulse{
    0%, 100%{ box-shadow:0 10px 24px rgba(37,211,102,.5); }
    50%{ box-shadow:0 10px 30px rgba(37,211,102,.75); }
}

@media (max-width: 768px){
    .pbc-cd-units{ gap:4px; }
    .pbc-cd-unit{ min-width:36px; padding:3px 6px; }
    .pbc-cd-num{ font-size:14px; }
    .pbc-cd-lbl{ font-size:8px; }
    .pbc-countdown{ gap:6px; }
}

.pbc-wrap.pbc-fixed.pbc-offset-applied{ box-shadow:0 4px 14px rgba(0,0,0,.12); }


/* v1.5.1 equal-height normalization */
.pbc-track{
    min-height: 75px;
}
.pbc-slide,
.pbc-slide.is-active,
.pbc-slide.is-leaving{
    min-height: 75px;
}
.pbc-inner{
    min-height: 51px;
}
.pbc-countdown{
    min-height: 40px;
}
.pbc-countdown:empty,
.pbc-countdown[hidden]{
    display:none;
}
@media (max-width: 768px){
    .pbc-track{ min-height: 75px; }
    .pbc-slide,
    .pbc-slide.is-active,
    .pbc-slide.is-leaving{ min-height: 75px; }
    .pbc-inner{ min-height: 51px; }
}
