/* =========================================
   BSC HARD OVERRIDE (paste at end)
   ========================================= */

/* Root */
section.bsc-root{
  font-family:'Poppins',sans-serif !important;
  background:#f5f0eb !important;
  padding:70px 20px !important;
}
section.bsc-root .bsc-inner{
  width:100% !important;
  max-width:960px !important;
  margin:0 auto !important;
  text-align:center !important;
}

/* Headings */
section.bsc-root .bsc-title{
  font-family:'Unna',serif !important;
  font-size:44px !important;
  font-weight:400 !important;
  color:#101828 !important;
  line-height:56px !important;
  margin:0 0 12px !important;
}
section.bsc-root .bsc-underline{
  width:40px !important;
  height:2px !important;
  background:#FE3636 !important;
  margin:0 auto 20px !important;
  border-radius:2px !important;
}
section.bsc-root .bsc-subtitle{
  font-size:15px !important;
  color:#2F353A !important;
  line-height:24px !important;
  max-width:643px !important;
  margin:0 auto 52px !important;
  font-weight:400 !important;
}

/* Carousel containers */
section.bsc-root .bsc-carousel-scene{
  position:relative !important;
  width:100% !important;
  height:400px !important;
  perspective:1200px !important;
  overflow:visible !important;
}
section.bsc-root .bsc-carousel-track{
  position:relative !important;
  width:100% !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Slots base */
section.bsc-root .bsc-book-slot{
  position:absolute !important;
  width:278px !important;
  height:372px !important;
  transition:all .6s cubic-bezier(.4,0,.2,1) !important;
  cursor:pointer !important;
  will-change: transform, opacity !important;
}

/* Positions (desktop) */
section.bsc-root .bsc-book-slot.pos-center{
  z-index:3 !important;
  transform:translateX(0) scale(1) !important;
  opacity:1 !important;
  pointer-events:auto !important;
  filter:none !important;
}
section.bsc-root .bsc-book-slot.pos-left{
  z-index:2 !important;
  transform:translateX(-300px) scale(.78) rotateY(6deg) !important;
  opacity:1 !important;
  pointer-events:auto !important;
  filter:brightness(.9) !important;
}
section.bsc-root .bsc-book-slot.pos-right{
  z-index:2 !important;
  transform:translateX(300px) scale(.78) rotateY(-6deg) !important;
  opacity:1 !important;
  pointer-events:auto !important;
  filter:brightness(.9) !important;
}

/* ✅ Force HIDE anything other than 3 visible */
section.bsc-root .bsc-book-slot.pos-far-left,
section.bsc-root .bsc-book-slot.pos-far-right,
section.bsc-root .bsc-book-slot.pos-hidden-left,
section.bsc-root .bsc-book-slot.pos-hidden-right{
  opacity:0 !important;
  pointer-events:none !important;
}

/* Center card bg */
section.bsc-root .bsc-card-bg{
  position:absolute !important;
  inset:-12px -7px !important;
  background:#fff !important;
  border-radius:16px !important;
  border:2px solid #F1DFCF !important;
  opacity:0 !important;
  transition:opacity .5s ease !important;
  z-index:0 !important;
}
section.bsc-root .bsc-book-slot.pos-center .bsc-card-bg{
  opacity:1 !important;
}

/* Badge */
section.bsc-root .bsc-badge{
  position:absolute !important;
  top:-26px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  background:#F1DFCF !important;
  border:1px solid #F1DFCF !important;
  border-radius:27px !important;
  font-size:14px !important;
  line-height:12px !important;
  font-weight:500 !important;
  text-transform:uppercase !important;
  color:#2c2c2c !important;
  white-space:nowrap !important;
  z-index:1 !important;
  opacity:0 !important;
  width:112px !important;
  height:28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
section.bsc-root .bsc-book-slot.pos-center .bsc-badge{
  opacity:1 !important;
}

/* Book image */
section.bsc-root .bsc-book-3d{ position:relative !important; width:100% !important; height:100% !important; z-index:2 !important; }
section.bsc-root .bsc-book-cover{
  position:absolute !important;
  inset:0 !important;
  border-radius:3px 7px 7px 3px !important;
  overflow:hidden !important;
	display: flex;
    justify-content: center;
    align-items: center;
}
section.bsc-root .bsc-book-cover img{
  object-fit:cover !important;
  display:block !important;
  margin-top:12px !important;
	width: 74% !important;
    height: 84% !important;
}

/* Arrows (fix positions too) */
section.bsc-root .bsc-nav{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:46px !important;
  height:46px !important;
  border-radius:50% !important;
  border:1.8px solid #F1DFCF !important;
  background:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  z-index:10 !important;
}
section.bsc-root .bsc-nav.prev{ right:18px !important; left:auto !important; }
section.bsc-root .bsc-nav.next{ left:18px !important; right:auto !important; }
section.bsc-root .bsc-nav svg{
  width:17px !important;
  height:17px !important;
  stroke:#555 !important;
  fill:none !important;
  stroke-width:2.5 !important;
}

/* Dots */
section.bsc-root .bsc-dots{
  display:flex !important;
  justify-content:center !important;
  gap:4px !important;
  margin-top:14px !important;
}
section.bsc-root .bsc-dot{
  width:6px !important;
  height:6px !important;
  border-radius:50% !important;
  background:#F1DFCF !important;
  cursor:pointer !important;
}
section.bsc-root .bsc-dot.active{
  background:#F1DFCF !important;
  transform:scale(1.25) !important;
  width:24px !important;
  height:6px !important;
  border-radius:3px !important;
}

/* Info */
section.bsc-root .bsc-info{ margin-top:30px !important; }
section.bsc-root .bsc-info-title{
  font-family:'Unna',serif !important;
  font-size:36px !important;
  font-weight:400 !important;
  color:#101828 !important;
  line-height:44px !important;
  margin:0 0 5px !important;
}
section.bsc-root .bsc-info-sub{
  font-size:15px !important;
  color:#2F353A !important;
  font-weight:400 !important;
  margin:0 0 24px !important;
  line-height:24px !important;
}

/* Button */
section.bsc-root .bsc-btn{
  display:inline-flex !important;
  justify-content:center !important;
  width:204px !important;
  height:48px !important;
  align-items:center !important;
  gap:9px !important;
  background:#FE3636 !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:600 !important;
  border:none !important;
  border-radius:8px !important;
  text-decoration:none !important;
}

/* ✅ Fix button + SVG breaking on other themes */
section.bsc-root .bsc-btn{
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;

  width: 204px !important;
  height: 48px !important;

  padding: 0 18px !important;         /* safe padding */
  background: #FE3636 !important;
  color: #fff !important;

  border: 0 !important;
  border-radius: 8px !important;

  line-height: 1 !important;
  text-decoration: none !important;

  overflow: hidden !important;         /* IMPORTANT: prevents weird shapes */
}

/* Force button text */
section.bsc-root .bsc-btn{
  font-size: 16px !important;
  font-weight: 600 !important;
  font-family: 'Poppins', sans-serif !important;
  white-space: nowrap !important;
}

/* ✅ Hard lock SVG (this fixes the black triangle issue) */
section.bsc-root .bsc-btn svg{
  width: 22px !important;
  height: 22px !important;

  display: block !important;
  flex: 0 0 auto !important;

  position: static !important;
  inset: auto !important;
  transform: none !important;

  overflow: hidden !important;
  max-width: 22px !important;
  max-height: 22px !important;

  fill: none !important;
  stroke: #fff !important;
  stroke-width: 2.5 !important;
}

/* In case theme applies svg * selector */
section.bsc-root .bsc-btn svg *{
  fill: none !important;
  stroke: #fff !important;
}

/* optional hover */
section.bsc-root .bsc-btn:hover svg{
  transform: translateX(4px) !important;
}

/* Mobile: ONLY center slide */
@media (max-width:700px){
  section.bsc-root .bsc-book-slot{
    width:215px !important;
    height:293px !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(0) scale(.9) !important;
    filter:none !important;
  }
  section.bsc-root .bsc-book-slot.pos-center{
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(0) scale(1) !important;
    z-index:5 !important;
  }
  section.bsc-root .bsc-carousel-scene{
    height:350px !important;
  }
  section.bsc-root .bsc-nav.prev{ right:-10px !important; }
  section.bsc-root .bsc-nav.next{ left:-10px !important; }
  section.bsc-root .bsc-title{ font-size:32px !important; line-height:42px !important; }
  section.bsc-root .bsc-info-title{ font-size:30px !important; line-height:40px !important; }
  section.bsc-root .bsc-subtitle,
  section.bsc-root .bsc-info-sub{ font-size:14px !important; }
  section.bsc-root .bsc-info-sub{ margin:0 0 15px !important; }
}