/* BBOTO Campaign Spotlight v1.1 — lightweight, native scroll-snap carousel */
.bb-campaigns[hidden]{display:none!important}
.bb-campaigns{max-width:1180px;margin:16px auto 14px;padding:0;position:relative;font-family:'Sora',Arial,sans-serif}
.bb-campaigns-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 2px 9px}
.bb-campaigns-head h2{margin:5px 0 0;color:#101828;font-size:24px;line-height:1.1;letter-spacing:-.4px}.bb-campaigns-kicker{display:flex;align-items:center;gap:7px;color:#087333;font-size:10px;font-weight:850;letter-spacing:.42px;text-transform:uppercase}
.bb-campaigns-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:#ff8a00;box-shadow:0 0 0 4px rgba(255,138,0,.12)}
.bb-campaigns-nav{display:flex;align-items:center;gap:7px}
.bb-campaigns-arrow{display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid #dce8e0;border-radius:50%;background:#fff;color:#087333;cursor:pointer;box-shadow:0 5px 14px rgba(16,24,40,.06)}
.bb-campaigns-arrow svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2}
.bb-campaigns-arrow:disabled{opacity:.35;cursor:default}
.bb-campaigns-viewport{overflow:hidden;border-radius:22px}
.bb-campaigns-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:none;padding:1px 1px 5px}
.bb-campaigns-track::-webkit-scrollbar{display:none}
.bb-campaign-card{--card-bg:#063d24;--card-fg:#fff;--card-muted:rgba(255,255,255,.78);position:relative;isolation:isolate;display:flex;align-items:flex-end;flex:0 0 min(790px,72vw);min-height:214px;padding:25px 27px;border-radius:21px;overflow:hidden;scroll-snap-align:start;text-decoration:none;color:var(--card-fg);background:radial-gradient(circle at 82% 18%,rgba(15,159,77,.45),transparent 35%),linear-gradient(135deg,var(--card-bg),#021f12);box-shadow:0 14px 34px rgba(5,61,26,.14)}
.bb-campaign-card:before{content:"";position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:31px 31px;mask-image:linear-gradient(90deg,transparent,black)}
.bb-campaign-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(2,31,18,.93) 0%,rgba(2,31,18,.72) 50%,rgba(2,31,18,.08) 100%)}
.bb-campaign-media{position:absolute;inset:0;z-index:-2;margin:0}
.bb-campaign-media img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.bb-campaign-card[data-position="left"] .bb-campaign-media img{object-position:left center}
.bb-campaign-card[data-position="right"] .bb-campaign-media img{object-position:right center}
.bb-campaign-body{position:relative;z-index:2;width:min(520px,73%)}
.bb-campaign-label{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:6px 10px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#ff8a00;color:#fff;font-size:9px;font-weight:900;letter-spacing:.45px;text-transform:uppercase}
.bb-campaign-title{display:block;margin:0;color:var(--card-fg);font-size:28px;font-weight:850;line-height:1.08;letter-spacing:-.55px}
.bb-campaign-desc{display:block;margin:9px 0 15px;color:var(--card-muted);font-size:12px;font-weight:560;line-height:1.5}
.bb-campaign-cta{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border-radius:10px;background:#ff8a00;color:#fff;font-size:10px;font-weight:850;box-shadow:0 7px 16px rgba(255,138,0,.2)}
.bb-campaign-card.is-sponsored{--card-bg:#fff5e6;--card-fg:#3a250b;--card-muted:#755f42;background:linear-gradient(135deg,#fffaf1,#ffe2b8);border:1px solid #ffd59a;box-shadow:0 14px 30px rgba(175,100,0,.09)}
.bb-campaign-card.is-sponsored:before{background-image:radial-gradient(circle at 85% 20%,rgba(255,138,0,.16),transparent 34%);mask-image:none}
.bb-campaign-card.is-sponsored:after{background:linear-gradient(90deg,rgba(255,250,241,.97),rgba(255,242,220,.84) 63%,rgba(255,226,184,.12))}
.bb-campaign-card.is-sponsored .bb-campaign-label{border-color:#e7b66d;background:rgba(255,255,255,.74);color:#7b4b08}
.bb-campaign-card.theme-orange{--card-bg:#7b3300;background:radial-gradient(circle at 85% 15%,rgba(255,183,77,.55),transparent 32%),linear-gradient(135deg,#713000,#ff8a00)}
.bb-campaign-card.theme-black{--card-bg:#111827;background:radial-gradient(circle at 82% 15%,rgba(8,115,51,.5),transparent 36%),linear-gradient(135deg,#0b111c,#111827)}
.bb-campaign-dots{display:flex;justify-content:center;gap:6px;margin:7px 0 0}
.bb-campaign-dot{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#c9d4cd;cursor:pointer;transition:width .2s ease,background .2s ease}
.bb-campaign-dot.is-active{width:24px;background:#ff8a00}
.bb-campaign-card:focus-visible,.bb-campaign-arrow:focus-visible,.bb-campaign-dot:focus-visible{outline:3px solid rgba(8,115,51,.3);outline-offset:3px}

@media(max-width:980px){
  .bb-campaigns-head h2{font-size:21px}
  .bb-campaigns{margin:12px 0 10px}
  .bb-campaigns-head{padding:0 3px;margin-bottom:8px}
  .bb-campaigns-nav{display:none}
  .bb-campaigns-viewport{margin-right:-14px;border-radius:18px 0 0 18px}
  .bb-campaigns-track{gap:10px;padding-right:13vw}
  .bb-campaign-card{flex-basis:88%;min-height:174px;padding:18px;border-radius:18px}
  .bb-campaign-body{width:78%}
  .bb-campaign-title{font-size:22px;letter-spacing:-.4px}
  .bb-campaign-desc{font-size:10.5px;margin:7px 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .bb-campaign-label{font-size:8px;padding:5px 8px;margin-bottom:8px}
  .bb-campaign-cta{font-size:9px;padding:8px 10px}
}
@media(max-width:430px){
  .bb-campaigns{margin-left:0;margin-right:0}
  .bb-campaign-card{flex-basis:89%;min-height:166px}
  .bb-campaign-title{font-size:20px}
}
@media(prefers-reduced-motion:reduce){.bb-campaigns-track{scroll-behavior:auto}.bb-campaign-dot{transition:none}}
