/* v331 — Bankers page booking-code carousel fit (phones / Z Fold / tablets).
   Scoped to .bp-car / .bp-book so home #hp-carousel and Hot Picks #hot-carousel stay untouched. */
html body .bp-book .bp-car,
html body #bp-carousel .bp-car{
  scroll-padding-inline:2px;
  overscroll-behavior-x:contain;
  gap:clamp(8px,2.4vw,12px)!important;
  align-items:stretch;
}
html body .bp-book .bp-card,
html body #bp-carousel .bp-card{
  flex:0 0 auto!important;
  width:clamp(240px,82vw,340px)!important;
  max-width:92vw!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  align-self:stretch!important;
  padding:clamp(10px,2.8vw,14px) clamp(10px,3vw,14px)!important;
  box-sizing:border-box;
  overflow:hidden;
}
html body .bp-book .bp-card > *,
html body #bp-carousel .bp-card > *{flex:0 0 auto!important;min-width:0!important;max-width:100%}

/* undo flashy overflow-wrap:anywhere that was stacking Copy/Open/WhatsApp letter-by-letter */
html body .bp-book .bp-card .bp-card-a,
html body .bp-book .bp-card .bp-card-a *,
html body #bp-carousel .bp-card .bp-card-a,
html body #bp-carousel .bp-card .bp-card-a *{
  overflow-wrap:normal!important;
  word-break:normal!important;
  white-space:nowrap!important;
}
html body .bp-book .bp-card .bp-card-code,
html body #bp-carousel .bp-card .bp-card-code{
  font-size:clamp(1.05rem,4.6vw,1.35rem)!important;
  letter-spacing:.05em;
  margin:6px 0 2px;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  white-space:normal!important;
  line-height:1.15;
  max-width:100%;
}
html body .bp-book .bp-card .bp-card-l,
html body #bp-carousel .bp-card .bp-card-l{
  font-size:clamp(.72rem,3vw,.82rem)!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding-right:40px; /* room for grade badge */
}
html body .bp-book .bp-card .bp-card-m,
html body #bp-carousel .bp-card .bp-card-m{
  font-size:clamp(.74rem,3.1vw,.86rem)!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  overflow-wrap:normal!important;
}
html body .bp-book .bp-card .bp-card-n,
html body #bp-carousel .bp-card .bp-card-n{
  font-size:clamp(.68rem,2.8vw,.75rem)!important;
  line-height:1.3;
  white-space:normal;
  overflow-wrap:anywhere!important;
}

/* action row: always horizontal, never wraps mid-word */
html body .bp-book .bp-card .bp-card-a,
html body #bp-carousel .bp-card .bp-card-a{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch;
  gap:6px!important;
  margin-top:10px!important;
  width:100%;
}
html body .bp-book .bp-card .bp-card-a :is(button,a),
html body #bp-carousel .bp-card .bp-card-a :is(button,a){
  flex:1 1 0!important;
  min-width:0!important;
  min-height:36px!important;
  height:auto!important;
  padding:6px 6px!important;
  font-size:clamp(.72rem,2.8vw,.82rem)!important;
  line-height:1.15!important;
  border-radius:10px!important;
  white-space:nowrap!important;
  overflow:hidden;
  text-overflow:ellipsis;
  box-sizing:border-box;
}
/* WhatsApp: shorten label so three buttons fit; keep brand colour + icon */
html body .bp-book .bp-card .bp-card-a .bp-wa,
html body #bp-carousel .bp-card .bp-card-a .bp-wa{
  font-size:0!important;
  letter-spacing:0!important;
  gap:0!important;
  padding:6px 4px!important;
}
html body .bp-book .bp-card .bp-card-a .bp-wa::before,
html body #bp-carousel .bp-card .bp-card-a .bp-wa::before{
  content:"WA"!important;
  font-size:clamp(.72rem,2.8vw,.82rem)!important;
  font-weight:800;
  letter-spacing:.02em;
}
html body .bp-book .bp-card .bp-card-x,
html body #bp-carousel .bp-card .bp-card-x{
  min-height:36px!important;
  font-size:clamp(.72rem,2.9vw,.8rem)!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* locked premium card inside the carousel */
html body .bp-book .bp-card .p2u-lock,
html body #bp-carousel .bp-card .p2u-lock,
html body .bp-book .bp-card.p2u-bp-lock .p2u-lock,
html body .bp-car > .p2u-bp-lock .p2u-lock,
html body .bp-car > .p2u-lock{
  margin:4px 0 0!important;
  padding:clamp(8px,2.4vw,12px)!important;
  max-width:100%!important;
  box-sizing:border-box;
  overflow:hidden;
}
html body .bp-book .bp-card .p2u-lock > b,
html body #bp-carousel .bp-card .p2u-lock > b,
html body .bp-car > .p2u-bp-lock .p2u-lock > b,
html body .bp-car > .p2u-lock > b{
  font-size:clamp(.82rem,3.4vw,.98rem)!important;
  line-height:1.25!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
html body .bp-book .bp-card .p2u-lock > p,
html body #bp-carousel .bp-card .p2u-lock > p,
html body .bp-car > .p2u-bp-lock .p2u-lock > p,
html body .bp-car > .p2u-lock > p{
  font-size:clamp(.7rem,2.9vw,.8rem)!important;
  line-height:1.3!important;
  margin:4px 0 8px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
html body .bp-book .bp-card .p2u-lock-row,
html body #bp-carousel .bp-card .p2u-lock-row,
html body .bp-car > .p2u-bp-lock .p2u-lock-row,
html body .bp-car > .p2u-lock .p2u-lock-row{
  display:flex!important;
  flex-direction:column!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  width:100%;
  margin:0!important;
}
html body .bp-book .bp-card .p2u-lock-btn,
html body #bp-carousel .bp-card .p2u-lock-btn,
html body .bp-car > .p2u-bp-lock .p2u-lock-btn,
html body .bp-car > .p2u-lock .p2u-lock-btn{
  width:100%!important;
  max-width:100%!important;
  min-height:36px!important;
  padding:6px 10px!important;
  font-size:clamp(.76rem,3.1vw,.9rem)!important;
  white-space:normal!important;
  line-height:1.2!important;
  box-sizing:border-box;
}
html body .bp-book .bp-card .p2u-lock-r,
html body #bp-carousel .bp-card .p2u-lock-r,
html body .bp-car > .p2u-bp-lock .p2u-lock-r{
  min-height:32px!important;
  margin:0!important;
  align-self:flex-start;
}
html body .bp-car > .p2u-bp-lock,
html body .bp-car > .p2u-lock{
  flex:0 0 auto!important;
  width:clamp(240px,82vw,340px)!important;
  max-width:92vw!important;
  box-sizing:border-box;
  padding:clamp(10px,2.8vw,14px)!important;
  border-radius:16px;
  background:linear-gradient(160deg,#2a2208,#120e04)!important;
  border:1px solid rgba(224,184,58,.45);
  scroll-snap-align:start;
}

/* Z Fold cover / tiny phones */
@media (max-width:344px){
  html body .bp-book .bp-card,
  html body #bp-carousel .bp-card,
  html body .bp-car > .p2u-bp-lock,
  html body .bp-car > .p2u-lock{width:86vw!important;max-width:86vw!important}
  html body .bp-book .bp-card .bp-card-a :is(button,a),
  html body #bp-carousel .bp-card .bp-card-a :is(button,a){
    padding:6px 3px!important;
    font-size:.7rem!important;
  }
  html body .bp-book .bp-card .bp-card-a .bp-open,
  html body #bp-carousel .bp-card .bp-card-a .bp-open{font-size:0!important}
  html body .bp-book .bp-card .bp-card-a .bp-open::after,
  html body #bp-carousel .bp-card .bp-card-a .bp-open::after{
    content:"Open";
    font-size:.7rem;
    font-weight:800;
  }
  html body .p2u-bankers-page{padding-left:8px;padding-right:8px}
}

/* ~2 cards on Z Fold inner / small tablets */
@media (min-width:560px){
  html body .bp-book .bp-card,
  html body #bp-carousel .bp-card,
  html body .bp-car > .p2u-bp-lock,
  html body .bp-car > .p2u-lock{
    width:calc((100% - 24px) / 2.15)!important;
    min-width:220px;
    max-width:320px!important;
  }
  /* keep short WA label — full "WhatsApp" still overflows ~270px cards */
}

/* ~3 cards on large tablets / desktop */
@media (min-width:900px){
  html body .bp-book .bp-card,
  html body #bp-carousel .bp-card,
  html body .bp-car > .p2u-bp-lock,
  html body .bp-car > .p2u-lock{
    width:calc((100% - 36px) / 3.2)!important;
    min-width:210px;
    max-width:280px!important;
  }
}

/* locked card polish for whole-card paywall replacement */
html body .bp-car > .p2u-bp-lock,
html body .bp-book .bp-card.p2u-bp-lock{
  display:flex!important;flex-direction:column!important;gap:6px!important;overflow:hidden!important
}
html body .bp-car > .p2u-bp-lock .bp-risk,
html body .bp-book .p2u-bp-lock .bp-risk{align-self:flex-start}
html body .bp-car > .p2u-bp-lock .p2u-lock > b,
html body .bp-book .p2u-bp-lock .p2u-lock > b{
  font-size:clamp(.78rem,3.2vw,.92rem)!important;line-height:1.2!important
}
html body .bp-car > .p2u-bp-lock .p2u-lock > p,
html body .bp-book .p2u-bp-lock .p2u-lock > p{
  -webkit-line-clamp:2!important;font-size:clamp(.68rem,2.7vw,.76rem)!important
}
html body .bp-car > .p2u-bp-lock .p2u-lock-btn,
html body .bp-book .p2u-bp-lock .p2u-lock-btn{
  font-size:clamp(.72rem,2.9vw,.84rem)!important;padding:6px 8px!important;min-height:34px!important;
  white-space:normal!important;line-height:1.15!important
}
html body .bp-car > .p2u-bp-lock .p2u-lock-btn .p2u-lock-fx,
html body .bp-book .p2u-bp-lock .p2u-lock-btn .p2u-lock-fx{display:block;margin-left:0;font-size:.85em}
@media (min-width:900px){
  html body .bp-book .bp-card .bp-card-a .bp-wa,
  html body #bp-carousel .bp-card .bp-card-a .bp-wa{font-size:0!important}
  html body .bp-book .bp-card .bp-card-a .bp-wa::before,
  html body #bp-carousel .bp-card .bp-card-a .bp-wa::before{
    content:"WhatsApp"!important;font-size:clamp(.72rem,1.6vw,.8rem)!important
  }
}
