/*
 * Billion Hopes Academy — Premium Cart v3
 * Layout-safe WooCommerce Blocks redesign.
 * WooCommerce continues to control cart data, quantities, coupons, totals and checkout.
 */

body.woocommerce-cart {
  --bhc-ink:#111936;
  --bhc-text:#5f6882;
  --bhc-line:rgba(30,42,82,.11);
  --bhc-blue:#485bd8;
  --bhc-violet:#765de4;
  --bhc-soft:#f5f7fb;
  --bhc-card:#fff;
  --bhc-shadow:0 26px 68px -44px rgba(26,36,78,.34);
  background:linear-gradient(180deg,#f8fafe 0%,#f2f5fa 100%)!important;
}

body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main,
body.woocommerce-cart .content-container,
body.woocommerce-cart .entry-content,
body.woocommerce-cart .entry-content-wrap{max-width:none!important}

body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main{margin-top:0!important}

body.woocommerce-cart .entry-header,
body.woocommerce-cart .page-header,
body.woocommerce-cart h1.entry-title{display:none!important}

body.woocommerce-cart .site-main>article,
body.woocommerce-cart article.page,
body.woocommerce-cart .entry.single-entry{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.woocommerce-cart .entry-content-wrap{padding:0!important}

body.woocommerce-cart .entry-content{
  width:min(1240px,calc(100% - 44px));
  margin:0 auto!important;
  padding:0 0 72px!important;
}

/* ---------- clean cart hero ---------- */
.bh-cart-hero{
  position:relative;
  overflow:hidden;
  margin:34px 0 28px;
  padding:30px 34px;
  border:1px solid rgba(255,255,255,.9);
  border-radius:28px;
  background:linear-gradient(135deg,#fff 0%,#fafbff 62%,#f4f7ff 100%);
  box-shadow:var(--bhc-shadow);
}

.bh-cart-hero:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,#e3bf6d,#5262dc,#765de4,#15a2d6);
}

.bh-cart-hero__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
}

.bh-cart-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}

.bh-cart-brand__logo{
  width:44px!important;
  height:44px!important;
  object-fit:contain;
  border-radius:10px;
  background:#fff;
}

.bh-cart-brand__text{display:grid;gap:2px}
.bh-cart-brand__label{
  color:#4456c7;
  font-size:10px;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.bh-cart-brand__name{
  color:#263250;
  font-size:13px;
  font-weight:750;
}

.bh-cart-kicker{display:none!important}

.bh-cart-hero h1{
  margin:0 0 8px!important;
  color:var(--bhc-ink)!important;
  font-size:clamp(2.35rem,1.8rem + 1.6vw,3.7rem)!important;
  font-weight:850!important;
  letter-spacing:-.045em!important;
  line-height:1.02!important;
}

.bh-cart-hero p{
  max-width:690px;
  margin:0!important;
  color:var(--bhc-text);
  font-size:15px;
  line-height:1.65;
}

.bh-cart-steps{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border:1px solid var(--bhc-line);
  border-radius:16px;
  background:#fff;
  white-space:nowrap;
}

.bh-cart-step{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#707990;
  font-size:12px;
  font-weight:730;
}

.bh-cart-step b{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#eef1f7;
  color:#5b6580;
  font-size:10px;
}

.bh-cart-step.is-active{color:#3247bd}
.bh-cart-step.is-active b{background:linear-gradient(135deg,var(--bhc-blue),var(--bhc-violet));color:#fff}
.bh-cart-step-sep{color:#b0b7c8;font-size:12px}

/* ---------- FIX WooCommerce block widths ---------- */
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wc-block-cart{
  margin:0!important;
}

body.woocommerce-cart .wc-block-cart,
body.woocommerce-cart .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(390px,400px)!important;
  grid-template-areas:"main sidebar" "marquee sidebar"!important;
  column-gap:34px!important;
  row-gap:22px!important;
  align-items:start!important;
  flex-wrap:unset!important;
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main{
  grid-area:main!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  flex-basis:auto!important;
  box-sizing:border-box!important;
  padding-right:0!important;
  margin:0!important;
}

body.woocommerce-cart .wc-block-cart__sidebar,
body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{
  grid-area:sidebar!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  flex-basis:auto!important;
  box-sizing:border-box!important;
  padding-left:0!important;
  margin:0!important;
}

/* ---------- product panel ---------- */
body.woocommerce-cart .wc-block-cart__main{
  overflow:visible!important;
  padding:12px 28px 10px!important;
  border:1px solid var(--bhc-line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--bhc-shadow);
}

body.woocommerce-cart .wc-block-cart-items{margin:0!important;border:0!important}
body.woocommerce-cart .wc-block-cart-items thead{border:0!important}

body.woocommerce-cart .wc-block-cart-items th{
  padding:14px 6px 15px!important;
  border:0!important;
  color:#80889e!important;
  font-size:10px!important;
  font-weight:850!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}

body.woocommerce-cart .wc-block-cart-items th:last-child{
  padding-right:22px!important;
  text-align:right!important;
}

body.woocommerce-cart .wc-block-cart-item__total{
  min-width:132px!important;
  padding-right:22px!important;
  text-align:right!important;
  box-sizing:border-box!important;
}

body.woocommerce-cart .wc-block-cart__sidebar > *,
body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar > *{
  max-width:100%!important;
  box-sizing:border-box!important;
}

body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-cart .wc-block-cart-items tbody tr{
  border-top:1px solid rgba(30,42,82,.09)!important;
}

body.woocommerce-cart .wc-block-cart-items__row td,
body.woocommerce-cart .wc-block-cart-items td{
  padding-top:22px!important;
  padding-bottom:22px!important;
  border:0!important;
  vertical-align:middle!important;
}

body.woocommerce-cart .wc-block-cart-item__image{
  width:118px!important;
  padding-right:18px!important;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-cart .wc-block-components-product-image img{
  width:100%!important;
  aspect-ratio:1/1;
  object-fit:cover;
  border:1px solid rgba(30,42,82,.10);
  border-radius:16px!important;
  box-shadow:0 14px 30px -22px rgba(25,35,75,.38);
}

body.woocommerce-cart .wc-block-components-product-name{
  color:var(--bhc-ink)!important;
  font-size:18px!important;
  font-weight:800!important;
  line-height:1.3!important;
  text-decoration:none!important;
}

body.woocommerce-cart .wc-block-components-product-price,
body.woocommerce-cart .wc-block-components-product-price__value,
body.woocommerce-cart .wc-block-cart-item__prices{
  color:#35405d!important;
  font-size:14px!important;
  font-weight:720!important;
}

body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price,
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
  color:var(--bhc-ink)!important;
  font-size:16px!important;
  font-weight:820!important;
}

body.woocommerce-cart .wc-block-components-quantity-selector{
  min-width:128px!important;
  overflow:hidden;
  border:1px solid #dbe1ee!important;
  border-radius:12px!important;
  background:#f8faff!important;
}

body.woocommerce-cart .wc-block-components-quantity-selector input,
body.woocommerce-cart .wc-block-components-quantity-selector button{
  min-height:38px!important;
  color:#27314d!important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link{
  margin-top:9px!important;
  color:#8b93a8!important;
  font-size:12px!important;
  font-weight:680!important;
  text-decoration:none!important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover{color:#bd405b!important}

/* ---------- order summary panel ---------- */
body.woocommerce-cart .wc-block-cart__sidebar{
  position:sticky!important;
  top:24px!important;
  overflow:visible!important;
  padding:28px!important;
  border:1px solid var(--bhc-line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--bhc-shadow);
}

body.woocommerce-cart .wc-block-cart__sidebar:before{display:none!important;content:none!important}

body.woocommerce-cart .wc-block-cart__totals-title{
  margin:0 0 12px!important;
  padding:0 0 16px!important;
  border-bottom:1px solid rgba(30,42,82,.09)!important;
  color:var(--bhc-ink)!important;
  font-size:21px!important;
  font-weight:830!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
  white-space:normal!important;
}

body.woocommerce-cart .wc-block-components-totals-wrapper{
  padding:15px 0!important;
  border-color:rgba(30,42,82,.09)!important;
}

body.woocommerce-cart .wc-block-components-totals-item__label{
  color:#535d78!important;
  font-size:14px!important;
  font-weight:680!important;
}

body.woocommerce-cart .wc-block-components-totals-item__value{
  color:var(--bhc-ink)!important;
  font-size:15px!important;
  font-weight:800!important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item{
  padding-top:18px!important;
  border-top:1px solid rgba(30,42,82,.11)!important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-size:20px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

body.woocommerce-cart .wc-block-components-panel__button,
body.woocommerce-cart .wc-block-components-totals-coupon__button{
  color:#46506b!important;
  font-size:14px!important;
  font-weight:720!important;
}

body.woocommerce-cart .wc-block-components-totals-coupon__content input,
body.woocommerce-cart .wc-block-components-text-input input{
  border:1px solid #d9e0ed!important;
  border-radius:10px!important;
  background:#fff!important;
}

body.woocommerce-cart .wc-block-cart__submit-container{margin-top:14px!important}

body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button{
  min-height:56px!important;
  width:100%!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#465bd9 0%,#755de4 100%)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.2!important;
  white-space:normal!important;
  box-shadow:0 17px 32px -22px rgba(70,91,217,.8)!important;
}

body.woocommerce-cart .wc-block-cart__submit-button:hover{transform:translateY(-1px)}

/* ---------- compact reassurance ---------- */
.bh-cart-summary-brand{
  display:flex;
  align-items:center;
  gap:10px;
  margin:16px 0 0;
  padding:12px 13px;
  border:1px solid rgba(30,42,82,.08);
  border-radius:14px;
  background:#fafbfe;
}

.bh-cart-summary-brand img{
  width:38px!important;
  height:38px!important;
  object-fit:contain;
}

.bh-cart-summary-brand b{
  display:block;
  color:var(--bhc-ink);
  font-size:12px;
  font-weight:800;
}

.bh-cart-summary-brand span{
  display:block;
  margin-top:2px;
  color:#707991;
  font-size:10px;
  line-height:1.35;
}

.bh-cart-trust{
  display:grid;
  gap:8px;
  margin-top:12px;
  padding:13px;
  border:1px solid rgba(30,42,82,.08);
  border-radius:14px;
  background:#f8faff;
}

.bh-cart-trust-title{
  color:var(--bhc-ink);
  font-size:12px;
  font-weight:800;
}

.bh-cart-trust-item{
  display:flex;
  gap:8px;
  color:#68718a;
  font-size:10px;
  font-weight:620;
  line-height:1.4;
}

.bh-cart-trust-item:before{
  content:"✓";
  display:grid;
  place-items:center;
  flex:0 0 17px;
  width:17px;
  height:17px;
  border-radius:50%;
  background:#e9f7f0;
  color:#18825e;
  font-size:9px;
  font-weight:900;
}

body.woocommerce-cart a.bh-cart-add-more,
body.woocommerce-cart .bh-add-more-courses-link,
body.woocommerce-cart a[href*="/courses/"][aria-label*="more courses" i]{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin:24px auto 0!important;
  padding:11px 21px!important;
  border:1px solid rgba(72,91,216,.15)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#4053c5!important;
  font-size:13px!important;
  font-weight:780!important;
  text-decoration:none!important;
}

.bh-cart-bottom-actions{display:flex;justify-content:center}

body.woocommerce-cart .wc-block-components-notice-banner{border-radius:12px!important}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block{
  padding:48px 28px!important;
  border:1px solid var(--bhc-line);
  border-radius:24px;
  background:#fff;
  box-shadow:var(--bhc-shadow);
  text-align:center;
}


/* ---------- other courses marquee ---------- */
.bh-cart-course-marquee{
  grid-area:marquee!important;
  min-width:0;
  overflow:hidden;
  padding:20px 0 18px;
  border:1px solid var(--bhc-line);
  border-radius:24px;
  background:linear-gradient(135deg,#fff 0%,#fafbff 100%);
  box-shadow:var(--bhc-shadow);
}

.bh-cart-course-marquee__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:0 24px 16px;
}

.bh-cart-course-marquee__eyebrow{
  display:block;
  margin-bottom:4px;
  color:#5262cf;
  font-size:10px;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.bh-cart-course-marquee__head h3{
  margin:0!important;
  color:var(--bhc-ink)!important;
  font-size:18px!important;
  font-weight:820!important;
  letter-spacing:-.02em!important;
}

.bh-cart-course-marquee__hint{
  color:#858da1;
  font-size:11px;
  font-weight:650;
  white-space:nowrap;
}

.bh-cart-course-marquee__viewport{
  position:relative;
  overflow:hidden;
  width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);
}

.bh-cart-course-marquee__track{
  display:flex;
  align-items:stretch;
  gap:12px;
  width:max-content;
  padding:2px 0;
  animation:bhCartCourseMarquee 32s linear infinite;
  will-change:transform;
}

.bh-cart-course-marquee:hover .bh-cart-course-marquee__track{
  animation-play-state:paused;
}

.bh-cart-course-marquee__card{
  display:flex;
  align-items:center;
  gap:12px;
  width:245px;
  min-height:76px;
  padding:12px 14px;
  border:1px solid rgba(30,42,82,.09);
  border-radius:16px;
  background:#fff;
  color:inherit!important;
  text-decoration:none!important;
  box-shadow:0 12px 28px -24px rgba(30,42,82,.45);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.bh-cart-course-marquee__card:hover{
  transform:translateY(-2px);
  border-color:rgba(72,91,216,.20);
  box-shadow:0 18px 30px -24px rgba(72,91,216,.52);
}

.bh-cart-course-marquee__icon{
  display:grid;
  place-items:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:13px;
  background:linear-gradient(135deg,#eef1ff,#f5f1ff);
  color:#4558cb;
  font-size:13px;
  font-weight:900;
  letter-spacing:-.02em;
}

.bh-cart-course-marquee__copy{
  min-width:0;
}

.bh-cart-course-marquee__tag{
  display:block;
  margin-bottom:3px;
  color:#8a92a6;
  font-size:9px;
  font-weight:820;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.bh-cart-course-marquee__title{
  display:block;
  overflow:hidden;
  color:#19213d;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

@keyframes bhCartCourseMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 6px))}
}

@media(max-width:1050px){
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-cart .wc-block-components-sidebar-layout{
    grid-template-columns:1fr!important;
    grid-template-areas:"main" "sidebar" "marquee"!important;
    row-gap:20px!important;
  }
  body.woocommerce-cart .wc-block-cart__sidebar{
    position:relative!important;
    top:auto!important;
  }
  .bh-cart-course-marquee{grid-area:marquee!important}
  .bh-cart-hero__inner{grid-template-columns:1fr}
  .bh-cart-steps{width:max-content;max-width:100%;white-space:normal}
}

@media(max-width:680px){
  body.woocommerce-cart .entry-content{width:min(100% - 22px,1240px)}
  .bh-cart-hero{margin-top:22px;padding:22px 18px;border-radius:22px}
  .bh-cart-hero h1{font-size:2.25rem!important}
  .bh-cart-hero p{font-size:14px}
  .bh-cart-step-sep{display:none}
  .bh-cart-steps{gap:10px;padding:12px}
  body.woocommerce-cart .wc-block-cart__main,
  body.woocommerce-cart .wc-block-cart__sidebar{padding:18px!important;border-radius:20px}
  .bh-cart-course-marquee{border-radius:20px;padding-top:17px}
  .bh-cart-course-marquee__head{padding:0 18px 14px}
  .bh-cart-course-marquee__hint{display:none}
  .bh-cart-course-marquee__card{width:220px}
  body.woocommerce-cart .wc-block-cart-item__image{width:82px!important;padding-right:10px!important}
  body.woocommerce-cart .wc-block-components-product-name{font-size:15px!important}
}

@media(prefers-reduced-motion:reduce){
  .bh-cart-course-marquee__track{animation:none!important}
}

/* ==========================================================
   V5 — SIDEBAR CLIP FIX + SLOW IMAGE COURSE MARQUEE
   ========================================================== */

/* Give the order summary more breathing room and neutralize the negative
   offsets/margins that WooCommerce Blocks can apply inside the sidebar. */
@media (min-width:1051px){
  body.woocommerce-cart .wc-block-cart,
  body.woocommerce-cart .wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1fr) 430px!important;
    column-gap:38px!important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar,
  body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar{
    width:430px!important;
    min-width:430px!important;
    max-width:430px!important;
    padding:30px 30px 28px 38px!important;
    overflow:visible!important;
  }
}

body.woocommerce-cart .wc-block-cart__sidebar > *,
body.woocommerce-cart .wc-block-cart__sidebar > div,
body.woocommerce-cart .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-panel,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-coupon{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-cart__totals-title{
  padding-left:2px!important;
  padding-right:2px!important;
  overflow:visible!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper{
  padding-left:2px!important;
  padding-right:2px!important;
  overflow:visible!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__description,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value{
  position:static!important;
  margin-left:0!important;
  margin-right:0!important;
  padding-left:0!important;
  padding-right:0!important;
  transform:none!important;
  overflow:visible!important;
  text-indent:0!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__label{
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  padding-left:18px!important;
}

/* Slower, richer course ribbon with actual Academy course artwork. */
.bh-cart-course-marquee__viewport{
  padding:2px 16px 4px!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0,#000 3%,#000 97%,transparent 100%)!important;
}

.bh-cart-course-marquee__track{
  gap:14px!important;
  animation-duration:68s!important;
}

.bh-cart-course-marquee__card{
  align-items:center!important;
  gap:13px!important;
  width:300px!important;
  min-height:92px!important;
  padding:10px 13px!important;
  border-radius:17px!important;
}

.bh-cart-course-marquee__image{
  display:block;
  flex:0 0 104px;
  width:104px;
  height:60px;
  overflow:hidden;
  border:1px solid rgba(30,42,82,.10);
  border-radius:12px;
  background:#eef2f8;
  box-shadow:0 10px 22px -18px rgba(24,34,76,.48);
}

.bh-cart-course-marquee__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.bh-cart-course-marquee__copy{
  min-width:0;
  flex:1 1 auto;
}

.bh-cart-course-marquee__tag{
  margin-bottom:4px!important;
  font-size:9px!important;
}

.bh-cart-course-marquee__title{
  font-size:12px!important;
  line-height:1.32!important;
  -webkit-line-clamp:3!important;
}

/* Icon fallback is retained only if an image cannot be supplied. */
.bh-cart-course-marquee__icon{
  flex:0 0 48px!important;
  width:48px!important;
  height:48px!important;
}

@media(max-width:680px){
  .bh-cart-course-marquee__card{
    width:270px!important;
    min-height:86px!important;
  }
  .bh-cart-course-marquee__image{
    flex-basis:92px;
    width:92px;
    height:54px;
  }
}


/* ---------- premium empty-cart state ---------- */
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block.bh-cart-empty-enhanced{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block.bh-cart-empty-enhanced > :not(.bh-cart-empty-state){
  display:none!important;
}

.bh-cart-empty-state{
  position:relative;
  overflow:hidden;
  padding:28px;
  border:1px solid var(--bhc-line);
  border-radius:28px;
  background:linear-gradient(135deg,#fff 0%,#fbfcff 58%,#f6f8fe 100%);
  box-shadow:var(--bhc-shadow);
}

.bh-cart-empty-state:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,#e3bf6d,#5262dc,#765de4,#15a2d6);
}

.bh-cart-empty-state:after{
  content:"";
  position:absolute;
  right:-140px;
  top:-120px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(21,162,214,.10),transparent 68%);
  pointer-events:none;
}

.bh-cart-empty-state__hero{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);
  gap:28px;
  align-items:center;
  margin-bottom:26px;
}

.bh-cart-empty-state__copy{
  min-width:0;
}

.bh-cart-empty-state__brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}

.bh-cart-empty-state__brand img{
  width:50px;
  height:50px;
  object-fit:contain;
  border-radius:12px;
  background:#fff;
}

.bh-cart-empty-state__brandtext{display:grid;gap:3px}
.bh-cart-empty-state__brandtext b{
  color:#4456c7;
  font-size:11px;
  font-weight:850;
  letter-spacing:.10em;
  line-height:1;
  text-transform:uppercase;
}
.bh-cart-empty-state__brandtext span{
  color:#21304d;
  font-size:14px;
  font-weight:760;
  line-height:1.25;
}

.bh-cart-empty-state__kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  margin-bottom:14px;
  border-radius:999px;
  background:#eef2ff;
  color:#4456c7;
  font-size:11px;
  font-weight:850;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.bh-cart-empty-state__kicker:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--bhc-blue),var(--bhc-violet));
  box-shadow:0 0 0 5px rgba(72,91,216,.10);
}

.bh-cart-empty-state__title{
  margin:0 0 10px!important;
  color:var(--bhc-ink);
  font-size:clamp(2rem,1.45rem + 1.5vw,3rem);
  font-weight:850;
  letter-spacing:-.04em;
  line-height:1.05;
}

.bh-cart-empty-state__desc{
  max-width:640px;
  margin:0;
  color:var(--bhc-text);
  font-size:16px;
  line-height:1.7;
}

.bh-cart-empty-state__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

.bh-cart-empty-state__cta,
.bh-cart-empty-state__ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px;
  border-radius:14px;
  font-size:14px;
  font-weight:800;
  text-decoration:none!important;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.bh-cart-empty-state__cta{
  background:linear-gradient(135deg,#465bd9 0%,#755de4 100%);
  color:#fff!important;
  box-shadow:0 18px 34px -24px rgba(70,91,217,.72);
}

.bh-cart-empty-state__cta:hover{transform:translateY(-1px)}

.bh-cart-empty-state__ghost{
  border:1px solid rgba(72,91,216,.15);
  background:#fff;
  color:#4053c5!important;
}

.bh-cart-empty-state__ghost:hover{background:#eef2ff}

.bh-cart-empty-state__panel{
  position:relative;
  min-height:100%;
  padding:22px 22px 20px;
  border:1px solid rgba(30,42,82,.08);
  border-radius:22px;
  background:linear-gradient(180deg,#ffffff,#f9fbff);
}

.bh-cart-empty-state__icon{
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  margin-bottom:16px;
  border-radius:18px;
  background:linear-gradient(135deg,#2d2b87 0%,#465bd9 48%,#755de4 100%);
  color:#fff;
  font-size:30px;
  box-shadow:0 24px 40px -28px rgba(70,91,217,.72);
}

.bh-cart-empty-state__panel h3{
  margin:0 0 8px!important;
  color:var(--bhc-ink);
  font-size:23px;
  font-weight:840;
  letter-spacing:-.03em;
  line-height:1.12;
}

.bh-cart-empty-state__panel p{
  margin:0 0 18px;
  color:#667089;
  font-size:14px;
  line-height:1.6;
}

.bh-cart-empty-state__list{display:grid;gap:10px}
.bh-cart-empty-state__listitem{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#5f6882;
  font-size:13px;
  font-weight:650;
  line-height:1.5;
}

.bh-cart-empty-state__listitem:before{
  content:"✓";
  display:grid;
  place-items:center;
  flex:0 0 20px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#e8f7f0;
  color:#1b8660;
  font-size:10px;
  font-weight:900;
}

.bh-cart-empty-showcase{
  position:relative;
  z-index:1;
  padding:24px;
  border:1px solid rgba(30,42,82,.09);
  border-radius:24px;
  background:#fff;
}

.bh-cart-empty-showcase__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}

.bh-cart-empty-showcase__eyebrow{
  display:block;
  margin-bottom:8px;
  color:#4456c7;
  font-size:11px;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.bh-cart-empty-showcase__head h3{
  margin:0!important;
  color:var(--bhc-ink);
  font-size:30px;
  font-weight:840;
  letter-spacing:-.035em;
  line-height:1.08;
}

.bh-cart-empty-showcase__hint{
  color:#8590aa;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}

.bh-cart-empty-marquee{
  overflow:hidden;
  border-radius:18px;
  background:linear-gradient(180deg,#fbfcff,#f8fafe);
  border:1px solid rgba(30,42,82,.07);
}

.bh-cart-empty-marquee__track{
  display:flex;
  gap:16px;
  width:max-content;
  padding:10px 14px 14px;
  animation:bhCartEmptyMarquee 78s linear infinite;
}

.bh-cart-empty-marquee:hover .bh-cart-empty-marquee__track{animation-play-state:paused}

@keyframes bhCartEmptyMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 8px))}
}

.bh-cart-empty-card{
  display:flex;
  flex-direction:column;
  width:254px;
  min-width:254px;
  overflow:hidden;
  border:1px solid rgba(30,42,82,.08);
  border-radius:20px;
  background:#fff;
  text-decoration:none!important;
  box-shadow:0 18px 36px -30px rgba(26,36,78,.24);
  transition:transform .18s ease, box-shadow .18s ease;
}

.bh-cart-empty-card:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 42px -28px rgba(26,36,78,.28);
}

.bh-cart-empty-card__image{
  aspect-ratio:16/9;
  overflow:hidden;
  background:#eef2ff;
}

.bh-cart-empty-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.bh-cart-empty-card__body{
  display:grid;
  gap:8px;
  padding:14px 15px 16px;
}

.bh-cart-empty-card__tag{
  color:#7a84a0;
  font-size:10px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.bh-cart-empty-card__title{
  color:var(--bhc-ink);
  font-size:18px;
  font-weight:820;
  line-height:1.25;
}

.bh-cart-empty-card__price{
  color:#4456c7;
  font-size:14px;
  font-weight:800;
}

@media (max-width: 1024px){
  .bh-cart-empty-state__hero{grid-template-columns:1fr;gap:20px}
}

@media (max-width: 680px){
  .bh-cart-empty-state{padding:20px}
  .bh-cart-empty-state__title{font-size:2rem}
  .bh-cart-empty-state__desc{font-size:14px}
  .bh-cart-empty-state__actions{margin-top:18px}
  .bh-cart-empty-state__cta,.bh-cart-empty-state__ghost{width:100%}
  .bh-cart-empty-state__panel{padding:18px}
  .bh-cart-empty-showcase{padding:18px}
  .bh-cart-empty-showcase__head{display:grid;align-items:start}
  .bh-cart-empty-showcase__head h3{font-size:24px}
  .bh-cart-empty-card{width:230px;min-width:230px}
}
