/* Base */
.bfg, .bfg .swiper-wrapper, .bfg .swiper-slide{height:100%}
.bfg{position:relative; overflow:hidden; background:#0000}
.bfg .swiper-slide{position:relative; display:flex; align-items:center; justify-content:center; line-height:0}
.bfg .swiper-slide img{width:100%; height:100%; object-fit:cover; display:block}

/* Full width mode (auto height) */
.bfg.bfg--fullwidth, .bfg.bfg--fullwidth .swiper-wrapper{height:auto}
.bfg.bfg--fullwidth .swiper-slide{height:auto}
.bfg.bfg--fullwidth .swiper-slide img{height:auto; object-fit:contain}

/* Full height mode fills the column; mobile overrides below */
.bfg.bfg--fullheight{height:100%}

/* Make sure it fills the Elementor column height */
.elementor-widget-container > .bfg{height:100%}

/* Mobile full width */
@media(max-width:1024px){
  .bfg.bfg--mobile-fullwidth{height:auto}
  .bfg.bfg--mobile-fullwidth .swiper-slide img{height:auto; object-fit:cover}
}

/* Dots capsule: iOS liquid glass */
.bfg .swiper-pagination{
  position:absolute; left:50%; transform:translateX(-50%);
  bottom:16px; display:inline-flex; align-items:center; gap:10px;
  padding:8px 14px; min-width:96px; height:40px; border-radius:9999px;
  background:rgba(255,255,255,.16);
  -webkit-backdrop-filter: blur(18px) saturate(1.25);
  backdrop-filter: blur(18px) saturate(1.25);
  box-shadow: inset 0 10px 25px rgba(0,0,0,.15), 0 2px 10px rgba(0,0,0,.06);
  border:1px solid rgba(255,255,255,.35);
}
.bfg .swiper-pagination-bullet{
  width:8px; height:8px; margin:0 !important; opacity:1;
  background:rgba(255,255,255,.55); border-radius:9999px;
  transition:all .25s ease; box-shadow:0 1px 2px rgba(0,0,0,.25);
}
.bfg .swiper-pagination-bullet-active{
  width:22px; background:#fff; box-shadow:0 4px 12px rgba(0,0,0,.25);
}

/* Arrows */
.bfg .swiper-button-prev, .bfg .swiper-button-next{
  color:#fff; width:44px; height:44px;
  background:rgba(0,0,0,.15);
  border-radius:999px; top:50%; transform:translateY(-50%);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
}
.bfg .swiper-button-prev::after, .bfg .swiper-button-next::after{font-size:18px}
@media(max-width:1024px){
  .bfg .swiper-button-prev, .bfg .swiper-button-next{display:none}
}

/* Captions */
.bfg .bfg__cap{
  position:absolute; z-index:3; max-width:85%;
  color:#fff; font-size:clamp(16px, 2.3vw, 28px); line-height:1.2; font-weight:600;
  padding:10px 14px; border-radius:14px;
  background: linear-gradient( to bottom, rgba(0,0,0,0.25), rgba(0,0,0,0.5) );
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}
.bfg.bfg--cap-bl .bfg__cap{ left:16px; bottom:16px; }
.bfg.bfg--cap-br .bfg__cap{ right:16px; bottom:16px; text-align:right; }
.bfg.bfg--cap-tl .bfg__cap{ left:16px; top:16px; }
.bfg.bfg--cap-tr .bfg__cap{ right:16px; top:16px; text-align:right; }
.bfg.bfg--cap-bc .bfg__cap{ left:50%; bottom:16px; transform:translateX(-50%); text-align:center; }
.bfg.bfg--cap-tc .bfg__cap{ left:50%; top:16px; transform:translateX(-50%); text-align:center; }
.bfg.bfg--cap-cc .bfg__cap{ left:50%; top:50%; transform:translate(-50%,-50%); text-align:center; }

/* Placeholder */
.bfg.bfg--placeholder{display:flex; align-items:center; justify-content:center; background:#f5f5f7; color:#333}
.bfg.bfg--placeholder>div{background:#fff; padding:12px 16px; border-radius:12px; box-shadow:0 6px 22px rgba(0,0,0,.08)}


/* === Force arrows centered (override theme rules) === */
.bfg .swiper-button-prev, .bfg .swiper-button-next{
  position: absolute !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  left: 16px;
}
.bfg .swiper-button-next{ right: 16px; left: auto; }


/* === Ensure arrow icons even without Swiper CSS === */
.bfg .swiper-button-prev, .bfg .swiper-button-next{
  cursor: pointer;
  pointer-events: auto;
}
.bfg .swiper-button-prev::after{ content: '‹'; line-height: 44px; text-align:center; display:block; }
.bfg .swiper-button-next::after{ content: '›'; line-height: 44px; text-align:center; display:block; }
