/* ============================================================
   BetReward · Zambia landing  (graphics-led, no yellow)
   Brand: green #63A246 · navy #131C27 · CTA blue #2D76C5
   ============================================================ */

:root{
  --navy:#131C27;
  --navy-deep:#0A1017;
  --surface:#16222D;
  --surface-2:#1E2E3B;
  --green:#63A246;
  --green-br:#7FC45C;
  --blue:#2D76C5;
  --blue-br:#3F8FE6;
  --blue-deep:#1F5A9E;
  --text:#F4F7F5;
  --muted:#8FA0AD;
  --line:#1F2E3A;
  --ease:cubic-bezier(.22,.61,.36,1);
  --dur:.3s;
  --r:16px;
  --pad:16px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--navy-deep);color:var(--text);line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;padding-bottom:96px;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font:inherit;cursor:pointer;border:0}
.wrap{width:100%;max-width:600px;margin:0 auto;padding:0 var(--pad)}

/* ---------- NAV ---------- */
.nav{position:sticky;top:0;z-index:100;background:rgba(10,16,23,.93);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:10px;height:58px;max-width:600px;margin:0 auto;padding:0 var(--pad)}
.nav-brand{display:flex;align-items:center;flex:1}
.nav-brand img{height:24px;width:auto;filter:brightness(0) invert(1)}
.burger{display:grid;place-content:center;gap:4px;width:40px;height:40px;border-radius:10px;
  background:rgba(45,118,197,.18);transition:background var(--dur) var(--ease)}
.burger:active{background:rgba(45,118,197,.34)}
.burger span{display:block;width:18px;height:2px;border-radius:2px;background:#7FB4EA;transition:var(--dur) var(--ease)}
body.menu-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .burger span:nth-child(2){opacity:0}
body.menu-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.drawer{position:fixed;top:59px;left:0;right:0;bottom:0;z-index:99;height:auto;max-height:none;
  background:#0B131B;padding:6px var(--pad) 26px;transform:translateY(-10px);opacity:0;visibility:hidden;
  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease),visibility var(--dur);
  overflow-y:auto;-webkit-overflow-scrolling:touch}
body.menu-open .drawer{transform:translateY(0);opacity:1;visibility:visible}
.drawer a{display:flex;align-items:center;gap:12px;padding:15px 4px;font-size:15px;font-weight:600;
  color:#D6DEE7;border-bottom:1px solid rgba(255,255,255,.06)}
.drawer a em{font-style:normal;flex:0 0 auto;width:31px;height:31px;border-radius:9px;display:grid;place-items:center;
  background:rgba(45,118,197,.18);border:1px solid rgba(45,118,197,.4);font-size:13px}
.drawer .drawer-cta{display:block;margin-top:18px;text-align:center;border:0;border-radius:13px;
  background:linear-gradient(135deg,var(--blue),var(--blue-br));color:#fff;font-weight:900;font-size:15px;padding:15px}

/* ---------- HERO ---------- */
.hero{position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url('assets/hero.jpg') center 25%/cover no-repeat}
.hero-bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,14,20,.72) 0%,rgba(10,14,20,.90) 38%,rgba(10,16,23,.97) 66%,var(--navy-deep) 100%)}
.hero-glow{position:absolute;width:400px;height:400px;right:-140px;top:-90px;pointer-events:none;
  background:radial-gradient(circle,rgba(45,118,197,.30),transparent 68%);filter:blur(10px)}
.hero-body{position:relative;z-index:2;max-width:600px;margin:0 auto;padding:26px var(--pad) 22px}

.tag{display:inline-flex;align-items:center;gap:7px;background:rgba(13,20,28,.82);
  border:1px solid rgba(99,162,70,.75);color:var(--green-br);font-size:10px;font-weight:900;
  letter-spacing:1.5px;text-transform:uppercase;padding:6px 12px;border-radius:999px;margin-bottom:13px}
.pulse{width:6px;height:6px;border-radius:50%;background:var(--green-br);
  box-shadow:0 0 0 0 rgba(127,196,92,.85);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(127,196,92,0)}100%{box-shadow:0 0 0 0 rgba(127,196,92,0)}}

.hero h1{font-size:34px;font-weight:900;line-height:1.05;letter-spacing:-1.4px;margin-bottom:16px}
.spin-num{
  display:inline-block;font-size:44px;line-height:1;vertical-align:-4px;
  background:linear-gradient(135deg,var(--blue-br),#8EC5FF);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 0 40px rgba(45,118,197,.5)}
.hero h1 em{font-style:normal;color:#C9D6E0;font-size:26px;font-weight:800;letter-spacing:-.8px}

/* coupon */
.coupon{background:linear-gradient(165deg,rgba(26,40,52,.97),rgba(13,20,28,.97));
  border:1px solid rgba(45,118,197,.55);border-radius:var(--r);padding:14px;margin-bottom:14px;
  box-shadow:0 20px 44px -22px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.06);
  animation:glow 3.4s ease-in-out infinite}
@keyframes glow{
  0%,100%{box-shadow:0 20px 44px -22px rgba(0,0,0,.95),0 0 0 0 rgba(45,118,197,0),inset 0 1px 0 rgba(255,255,255,.06)}
  50%{box-shadow:0 20px 44px -22px rgba(0,0,0,.95),0 0 24px 2px rgba(45,118,197,.35),inset 0 1px 0 rgba(255,255,255,.06)}}
.coupon-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.coupon-label{font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:#9FB4C4}
.coupon-flag{background:rgba(99,162,70,.22);color:var(--green-br);border:1px solid rgba(99,162,70,.6);
  font-size:9px;font-weight:900;letter-spacing:1.1px;text-transform:uppercase;padding:4px 9px;border-radius:5px;white-space:nowrap}
.coupon-box{display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.38);
  border:1px solid rgba(63,143,230,.35);border-radius:12px;padding:11px 12px}
.coupon-code{flex:1;text-align:center;font-size:24px;font-weight:900;letter-spacing:3px;
  color:#8EC5FF;font-variant-numeric:tabular-nums;cursor:pointer;user-select:all;text-shadow:0 0 20px rgba(63,143,230,.6)}
.copy{background:linear-gradient(135deg,var(--blue),var(--blue-br));color:#fff;font-size:12px;font-weight:900;
  padding:10px 15px;border-radius:8px;white-space:nowrap;transition:var(--dur) var(--ease)}
.copy:active{transform:scale(.95)}
.copy.done{background:var(--green);color:#fff}
.coupon-foot{font-size:11px;color:var(--muted);text-align:center;margin-top:9px}

/* ---------- THE CTA (blue, animated, centred) ---------- */
.btn-cta{
  position:relative;display:block;width:100%;text-align:center;overflow:hidden;
  font-size:16px;font-weight:900;letter-spacing:.4px;padding:17px 20px;border-radius:13px;
  background:linear-gradient(135deg,var(--blue-deep) 0%,var(--blue) 45%,var(--blue-br) 100%);
  background-size:220% 100%;color:#fff;
  box-shadow:0 12px 32px -10px rgba(45,118,197,.95);
  transition:transform var(--dur) var(--ease),background-position .6s var(--ease);
  animation:ctaPulse 2.6s ease-in-out infinite;
}
@keyframes ctaPulse{
  0%,100%{box-shadow:0 12px 32px -10px rgba(45,118,197,.95),0 0 0 0 rgba(45,118,197,.55)}
  50%{box-shadow:0 12px 32px -10px rgba(45,118,197,.95),0 0 0 11px rgba(45,118,197,0)}}
.btn-cta::after{content:'';position:absolute;top:0;left:-120%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);
  transform:skewX(-18deg);animation:sheen 3.2s ease-in-out infinite}
@keyframes sheen{0%{left:-120%}55%{left:135%}100%{left:135%}}
.btn-cta:active{transform:translateY(1px) scale(.99);animation:none;background-position:100% 0}

.btn-ghost{display:block;width:100%;text-align:center;font-size:13.5px;font-weight:700;
  padding:13px 20px;border-radius:12px;background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.12);color:#B9C6D2}
.btn-ghost:active{background:rgba(255,255,255,.08)}
.legal{text-align:center;font-size:10px;color:#7D8C99;margin-top:10px;margin-bottom:16px}

/* ---------- SECTION HEADS ---------- */
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.sec-head h3{font-size:16px;font-weight:800;letter-spacing:-.4px}
.sec-head span{font-size:9.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);white-space:nowrap}

/* ---------- GAME RAIL ---------- */
.games{padding:26px 0 0}
.game-rail{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;margin:0 calc(-1 * var(--pad));padding-left:var(--pad);padding-right:var(--pad);
  scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}
.game-rail::-webkit-scrollbar{display:none}
.game{flex:0 0 104px;scroll-snap-align:start}
.game img{width:104px;height:104px;object-fit:cover;border-radius:13px;border:1px solid var(--line);
  transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.game:active img{transform:scale(.96);border-color:rgba(45,118,197,.6)}
.game span{display:block;font-size:10px;font-weight:700;color:#A9BAC7;text-align:center;margin-top:6px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- OFFER ---------- */
.offer{padding:26px 0 0}
.offer-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#1D3140 0%,#16222D 55%,#1A3042 100%);
  border:1px solid rgba(45,118,197,.34);border-radius:var(--r);padding:20px 18px}
.offer-card::before{content:'';position:absolute;top:-70px;right:-70px;width:220px;height:220px;
  background:radial-gradient(circle,rgba(45,118,197,.30),transparent 68%);pointer-events:none}
.kicker{display:block;font-size:10px;font-weight:900;letter-spacing:1.9px;text-transform:uppercase;
  color:#7FB4EA;margin-bottom:8px;position:relative}
.offer-card h2{font-size:24px;font-weight:900;line-height:1.12;letter-spacing:-.9px;margin-bottom:8px;position:relative}
.offer-card h2 span{display:block;color:#8EC5FF}
.offer-card>p{font-size:13px;color:#C0CCD6;line-height:1.55;margin-bottom:16px;position:relative}
.offer-card>p b{color:#8EC5FF;font-weight:800}
.promo-row{display:grid;gap:9px;margin-top:10px}
.promo{border-radius:13px;overflow:hidden;border:1px solid var(--line);
  transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.promo:active{transform:scale(.99);border-color:rgba(45,118,197,.5)}

/* ---------- SPORTS ---------- */
.sports{padding:26px 0 0}
.league-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.league{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:13px 8px;
  text-align:center;transition:var(--dur) var(--ease)}
.league:active{background:var(--surface-2);border-color:rgba(45,118,197,.45)}
.lg-badge{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 7px;border-radius:50%;
  font-size:10px;font-weight:900;letter-spacing:.2px;color:#fff;
  background:linear-gradient(135deg,var(--blue-deep),var(--blue));box-shadow:0 4px 14px -4px rgba(45,118,197,.9)}
.lg-badge.laliga{background:linear-gradient(135deg,#B3123A,#E02050);box-shadow:0 4px 14px -4px rgba(224,32,80,.8)}
.lg-badge.ucl{background:linear-gradient(135deg,#1B5FB0,#3F8FE6);box-shadow:0 4px 14px -4px rgba(63,143,230,.9)}
.league b{display:flex;flex-direction:column;justify-content:flex-end;font-size:10px;font-weight:700;color:#C3CFDA;line-height:1.3;min-height:27px}
.sports-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}
.sports-card h4{font-size:14.5px;font-weight:800;letter-spacing:-.3px;margin-bottom:6px}
.sports-card p{font-size:12.5px;color:var(--muted);line-height:1.55;margin-bottom:14px}

/* ---------- MONEY ---------- */
.money{padding:26px 0 0}
.money-card{background:linear-gradient(150deg,rgba(99,162,70,.16),rgba(99,162,70,.03));
  border:1px solid rgba(99,162,70,.34);border-radius:var(--r);padding:18px}
.money-card h4{font-size:15.5px;font-weight:900;letter-spacing:-.3px;margin-bottom:12px}
.pay-logos{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:4px}
.pay-logos img{height:44px;width:auto;border-radius:10px;background:#fff;padding:6px 11px;object-fit:contain;
  box-shadow:0 3px 12px rgba(0,0,0,.35)}
.money-list li{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:#CFD8E1;line-height:1.5;
  padding:9px 0;border-top:1px solid rgba(255,255,255,.06)}
.money-list li:first-child{border-top:0;padding-top:10px}
.money-list i{font-style:normal;font-size:11px;line-height:1.6;flex:0 0 auto}

/* ---------- TRUST ---------- */
.trust{padding:26px 0 0}
.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.tbox{background:rgba(255,255,255,.038);border:1px solid var(--line);border-radius:13px;padding:15px 10px;text-align:center}
.tbox b{display:block;font-size:17px;font-weight:900;color:#8EC5FF;letter-spacing:-.4px;margin-bottom:2px}
.tbox span{font-size:10px;color:var(--muted);font-weight:600;display:block}
.licence{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);
  border-radius:13px;padding:14px}
.licence-badge{flex:0 0 auto;background:rgba(45,118,197,.2);color:#7FB4EA;border:1px solid rgba(45,118,197,.45);
  font-size:8.5px;font-weight:900;letter-spacing:1.1px;padding:5px 8px;border-radius:5px}
.licence p{font-size:11px;color:var(--muted);line-height:1.55}
.licence p b{color:#D6DEE7;font-weight:700}

/* ---------- FINAL ---------- */
.final{padding:30px 0 8px;text-align:center}
.final h3{font-size:20px;font-weight:900;letter-spacing:-.7px;margin-bottom:6px}
.final p{font-size:12.5px;color:var(--muted)}
.final p b{color:#8EC5FF;letter-spacing:1.4px}

/* ---------- FOOTER ---------- */
footer{margin-top:24px;padding:24px 0 calc(18px + env(safe-area-inset-bottom));
  border-top:1px solid var(--line);text-align:center}
.age{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;
  border:1.5px solid #55636F;color:var(--muted);font-size:9.5px;font-weight:900;margin-bottom:10px}
footer p{font-size:10.5px;color:#586572;line-height:1.7}
footer .foot-brand{margin-bottom:5px;color:#7C8A98}
footer .foot-brand b{color:#9AA7B4}
footer .foot-legal{margin-top:6px;font-size:9px;color:#46525D}

/* ---------- STICKY ---------- */
.stickybar{position:fixed;left:0;right:0;bottom:0;z-index:90;
  padding:9px var(--pad) calc(9px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(10,16,23,0),rgba(10,16,23,.97) 38%);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-top:1px solid rgba(31,46,58,.7);
  transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease)}
.stickybar .btn-cta{max-width:600px;margin:0 auto}
.stickybar.is-hidden{transform:translateY(115%);opacity:0;pointer-events:none}

@media(min-width:601px){
  .hero h1{font-size:42px}
  .spin-num{font-size:54px}
  .offer-card h2{font-size:28px}
  .trust-grid{grid-template-columns:repeat(4,1fr)}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important}
}
