/* Axion v2.0.21 — shared database-driven banner/theme system */
.ax-campaign-group{position:relative;isolation:isolate;width:100%;color:#fff;font-family:Manrope,Inter,sans-serif}
.ax-campaign-track{position:relative;width:100%}
.ax-campaign-banner{position:relative;display:none;align-items:center;gap:18px;width:100%;min-height:58px;padding:13px 20px;border:1px solid rgba(255,255,255,.12);border-radius:16px;overflow:hidden;background:var(--ax-banner-bg,linear-gradient(110deg,#36105f,#7d20db,#f10bb9));box-shadow:0 16px 40px rgba(18,2,34,.22);transition:opacity .28s ease,transform .28s ease,border-color .28s ease}
.ax-campaign-banner.is-active{display:flex}
.ax-campaign-banner::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--ax-banner-image,none) center/cover no-repeat;opacity:.42}
.ax-campaign-banner::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(4,1,9,.18),rgba(4,1,9,.62));pointer-events:none}
.ax-campaign-art{width:8px;align-self:stretch;flex:0 0 8px;border-radius:999px;background:linear-gradient(180deg,#ff86eb,#fff 52%,#9b66ff);box-shadow:0 0 22px rgba(255,70,215,.52)}
.ax-campaign-copy{min-width:0;flex:1 1 auto}
.ax-campaign-copy small{display:block;margin-bottom:3px;color:rgba(255,255,255,.7);font-size:9px;line-height:1.2;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.ax-campaign-copy strong{display:block;color:#fff;font-size:14px;line-height:1.25;font-weight:900;letter-spacing:-.01em}
.ax-campaign-copy p{margin:3px 0 0;color:rgba(255,255,255,.78);font-size:11.5px;line-height:1.42}
.ax-campaign-timer{display:grid;gap:2px;min-width:104px;padding:8px 11px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(4,1,9,.32);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ax-campaign-timer span{color:rgba(255,255,255,.62);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.ax-campaign-timer b{font:800 12px/1.25 "JetBrains Mono",monospace;font-variant-numeric:tabular-nums;white-space:nowrap;color:#fff}
.ax-campaign-cta{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 13px;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:rgba(5,2,10,.28);color:#fff!important;font-size:10.5px;font-weight:900;white-space:nowrap;text-decoration:none!important;transition:transform .18s ease,background .18s ease,border-color .18s ease}
.ax-campaign-cta:hover{transform:translateY(-1px);background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.48)}
.ax-campaign-controls{position:absolute;right:9px;bottom:-13px;z-index:6;display:flex;align-items:center;gap:5px;padding:4px;border:1px solid rgba(255,255,255,.11);border-radius:999px;background:rgba(7,3,12,.84);box-shadow:0 8px 24px rgba(0,0,0,.3);backdrop-filter:blur(12px)}
.ax-campaign-controls button{appearance:none;border:0;background:transparent;color:#fff;min-width:28px;height:26px;border-radius:999px;cursor:pointer;font:800 11px Manrope,sans-serif}
.ax-campaign-controls button:hover{background:rgba(255,255,255,.1)}
.ax-campaign-controls span{padding:0 4px;color:rgba(255,255,255,.65);font-size:8.5px;font-weight:800;white-space:nowrap}
.ax-campaign-group[data-mode="stack"] .ax-campaign-track{display:grid;gap:8px}
.ax-campaign-group[data-mode="stack"] .ax-campaign-banner{display:flex}

/* Compact */
.ax-campaign-banner--compact{min-height:44px;padding:9px 16px;border-radius:0;border-left:0;border-right:0;box-shadow:none}
.ax-campaign-banner--compact .ax-campaign-art{width:4px;flex-basis:4px}
.ax-campaign-banner--compact .ax-campaign-copy{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.ax-campaign-banner--compact .ax-campaign-copy small{display:none}
.ax-campaign-banner--compact .ax-campaign-copy p{margin:0}

/* Glow */
.ax-campaign-banner--glow{border-color:rgba(255,89,222,.28);box-shadow:0 16px 45px rgba(91,20,145,.2),inset 0 1px rgba(255,255,255,.06)}
.ax-campaign-banner--glow::after{background:radial-gradient(500px 120px at 70% 0%,rgba(255,104,230,.18),transparent 62%),linear-gradient(90deg,rgba(4,1,9,.12),rgba(4,1,9,.54))}

/* Feature */
.ax-campaign-banner--feature{min-height:78px;padding:16px 20px}
.ax-campaign-banner--feature .ax-campaign-copy strong{font-size:17px}
.ax-campaign-banner--feature .ax-campaign-copy p{font-size:12px;max-width:720px}

/* Seasonal */
.ax-campaign-banner--seasonal{min-height:86px;padding:17px 22px;border-color:rgba(255,255,255,.2);box-shadow:0 22px 60px rgba(19,2,34,.3)}
.ax-campaign-banner--seasonal::before{opacity:.62}
.ax-campaign-banner--seasonal::after{background:linear-gradient(90deg,rgba(5,1,10,.82) 0%,rgba(5,1,10,.55) 55%,rgba(5,1,10,.2) 100%)}
.ax-campaign-banner--seasonal .ax-campaign-copy strong{font-size:18px}

/* Website placement */
.ax-campaign-group--website_top{z-index:9998;border-bottom:1px solid rgba(255,255,255,.06)}
.ax-campaign-group--website_top .ax-campaign-banner{border-radius:0;border-left:0;border-right:0}
.ax-campaign-group--website_top .ax-campaign-controls{bottom:5px;right:10px}

/* Checkout placement */
.ax-campaign-group--checkout{margin:0 0 16px}
.ax-campaign-group--checkout .ax-campaign-banner{background:var(--ax-banner-bg,linear-gradient(110deg,rgba(141,44,255,.2),rgba(255,11,199,.12)));border-color:rgba(255,91,224,.24)}

/* Optional full-site seasonal artwork. Applied only by a website_top banner. */
body.ax-campaign-theme::after{content:"";position:fixed;inset:0;z-index:-4;pointer-events:none;background-image:var(--ax-campaign-theme,none);background-position:center top;background-size:cover;background-repeat:no-repeat;opacity:.26;mix-blend-mode:screen;filter:saturate(.9) contrast(.92)}

@media(max-width:760px){
  .ax-campaign-banner{align-items:flex-start;gap:10px;padding:12px 13px;flex-wrap:wrap}
  .ax-campaign-banner::before{background-image:var(--ax-banner-image-mobile,var(--ax-banner-image,none))}
  .ax-campaign-art{width:5px;flex-basis:5px;min-height:42px}
  .ax-campaign-copy{flex:1 1 calc(100% - 24px)}
  .ax-campaign-copy strong{font-size:13px}
  .ax-campaign-copy p{font-size:10.5px}
  .ax-campaign-timer{min-width:0;flex:1 1 auto;margin-left:15px}
  .ax-campaign-cta{margin-left:auto}
  .ax-campaign-controls{position:static;width:max-content;margin:-9px 8px 4px auto}
  .ax-campaign-banner--compact{padding:9px 11px;flex-wrap:nowrap}
  .ax-campaign-banner--compact .ax-campaign-copy{display:block}
  .ax-campaign-banner--compact .ax-campaign-copy p{display:none}
  .ax-campaign-banner--feature,.ax-campaign-banner--seasonal{min-height:76px}
  body.ax-campaign-theme::after{background-image:var(--ax-campaign-theme-mobile,var(--ax-campaign-theme,none));opacity:.2}
}
@media(prefers-reduced-motion:reduce){.ax-campaign-banner,.ax-campaign-cta{transition:none!important}.ax-campaign-controls{backdrop-filter:none}}

/* ============================================================
   Axion v2.0.21b — expanded banner visual system
   ============================================================ */

/* Split spotlight */
.ax-campaign-banner--split{min-height:116px;padding:14px 18px;display:none;grid-template-columns:minmax(150px,24%) minmax(0,1fr) auto auto;align-items:center;gap:18px}
.ax-campaign-banner--split.is-active{display:grid}
.ax-campaign-banner--split::before{opacity:.1}
.ax-campaign-banner--split .ax-campaign-art{width:100%;min-height:86px;align-self:stretch;flex-basis:auto;border-radius:13px;background-image:var(--ax-banner-image,linear-gradient(145deg,rgba(255,255,255,.18),rgba(96,21,155,.7)));background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 10px 30px rgba(0,0,0,.22)}
.ax-campaign-banner--split .ax-campaign-copy strong{font-size:18px}.ax-campaign-banner--split .ax-campaign-copy p{max-width:650px}

/* Glass panel */
.ax-campaign-banner--glass{min-height:78px;background:linear-gradient(135deg,rgba(72,25,102,.52),rgba(18,8,28,.7));border-color:rgba(255,255,255,.2);box-shadow:0 22px 55px rgba(7,2,12,.28),inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(20px) saturate(1.15);-webkit-backdrop-filter:blur(20px) saturate(1.15)}
.ax-campaign-banner--glass::after{background:linear-gradient(100deg,rgba(255,255,255,.045),rgba(255,255,255,0) 45%),radial-gradient(420px 120px at 88% 15%,rgba(255,80,220,.14),transparent 70%)}
.ax-campaign-banner--glass .ax-campaign-art{background:linear-gradient(180deg,#fff,#d46fff 48%,#7e48ff)}
.ax-campaign-banner--glass .ax-campaign-timer,.ax-campaign-banner--glass .ax-campaign-cta{background:rgba(5,2,10,.18)}

/* Countdown-first */
.ax-campaign-banner--countdown{min-height:92px;display:none;grid-template-columns:8px minmax(0,1fr) minmax(180px,auto) auto;gap:18px;background:radial-gradient(560px 180px at 78% 50%,rgba(255,40,198,.2),transparent 70%),var(--ax-banner-bg)}
.ax-campaign-banner--countdown.is-active{display:grid}
.ax-campaign-banner--countdown .ax-campaign-copy strong{font-size:17px}
.ax-campaign-banner--countdown .ax-campaign-timer{min-width:180px;padding:10px 14px;text-align:center;border-color:rgba(255,255,255,.23);background:rgba(4,1,9,.42)}
.ax-campaign-banner--countdown .ax-campaign-timer span{font-size:9px}.ax-campaign-banner--countdown .ax-campaign-timer b{font-size:20px;letter-spacing:-.03em}

/* Signal ribbon */
.ax-campaign-banner--ribbon{min-height:56px;border-radius:12px;padding:10px 16px 10px 18px;border-color:rgba(255,58,205,.34);background:linear-gradient(100deg,#17051f 0%,#6d19ae 54%,#ed0bb7 100%);box-shadow:0 14px 34px rgba(68,8,86,.24)}
.ax-campaign-banner--ribbon::before{opacity:.18}.ax-campaign-banner--ribbon::after{background:linear-gradient(90deg,rgba(4,1,8,.06),rgba(4,1,8,.28))}
.ax-campaign-banner--ribbon .ax-campaign-art{width:5px;flex-basis:5px;background:#fff;box-shadow:0 0 18px rgba(255,255,255,.55)}
.ax-campaign-banner--ribbon .ax-campaign-copy{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.ax-campaign-banner--ribbon .ax-campaign-copy small{display:none}.ax-campaign-banner--ribbon .ax-campaign-copy p{margin:0;opacity:.88}
.ax-campaign-banner--ribbon .ax-campaign-cta{background:#fff;color:#351050!important;border-color:#fff}.ax-campaign-banner--ribbon .ax-campaign-cta:hover{background:#f7eaff}

/* Center spotlight */
.ax-campaign-banner--spotlight{min-height:116px;justify-content:center;text-align:center;padding:18px 24px;background:radial-gradient(480px 150px at 50% 0%,rgba(255,100,230,.24),transparent 72%),linear-gradient(110deg,#10051b,#3a0e60 48%,#17051f)}
.ax-campaign-banner--spotlight .ax-campaign-art{display:none}.ax-campaign-banner--spotlight .ax-campaign-copy{flex:0 1 720px}.ax-campaign-banner--spotlight .ax-campaign-copy strong{font-size:21px}.ax-campaign-banner--spotlight .ax-campaign-copy p{font-size:12px}
.ax-campaign-banner--spotlight .ax-campaign-timer{min-width:150px}.ax-campaign-banner--spotlight .ax-campaign-cta{background:linear-gradient(135deg,#8c2cff,#f20bbd);border-color:rgba(255,255,255,.2)}

/* Better website-global positioning */
.ax-campaign-group--website_top{width:100%}

@media(max-width:760px){
  .ax-campaign-banner--split,.ax-campaign-banner--countdown{display:none;grid-template-columns:5px minmax(0,1fr);gap:10px}
  .ax-campaign-banner--split.is-active,.ax-campaign-banner--countdown.is-active{display:grid}
  .ax-campaign-banner--split .ax-campaign-art{grid-column:1/-1;min-height:120px;width:100%}
  .ax-campaign-banner--split .ax-campaign-copy,.ax-campaign-banner--countdown .ax-campaign-copy{grid-column:2}
  .ax-campaign-banner--split .ax-campaign-timer,.ax-campaign-banner--split .ax-campaign-cta,.ax-campaign-banner--countdown .ax-campaign-timer,.ax-campaign-banner--countdown .ax-campaign-cta{grid-column:2;margin-left:0;width:100%}
  .ax-campaign-banner--countdown .ax-campaign-timer{min-width:0}
  .ax-campaign-banner--ribbon{flex-wrap:wrap}.ax-campaign-banner--ribbon .ax-campaign-copy{display:block}.ax-campaign-banner--ribbon .ax-campaign-copy p{margin-top:3px}
  .ax-campaign-banner--spotlight{align-items:center}.ax-campaign-banner--spotlight .ax-campaign-copy strong{font-size:17px}
}
