/* V83 — premium CTA + rewards motion pass */
:root{--v83-red:#ef1f2f;--v83-deep:#9e0713;--v83-white:#fff;--v83-ink:#0b0d12}

/* HOMEPAGE HERO CTA UPGRADE */
.hero-v44-actions{gap:14px!important;align-items:stretch!important}
.hero-v44-actions .button,.hero-v44-actions .nav-toggle{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:68px;border-radius:18px!important;
  display:flex!important;align-items:center;justify-content:center;gap:12px;
  font-weight:900;letter-spacing:.045em;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,filter .22s ease;
}
.hero-v44-actions .button::before,.hero-v44-actions .nav-toggle::before{
  content:"";position:absolute;inset:-35% auto -35% -45%;width:34%;transform:skewX(-22deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);
  animation:v83ButtonSweep 4.2s ease-in-out infinite;pointer-events:none;z-index:-1
}
.hero-v44-actions .button::after,.hero-v44-actions .nav-toggle::after{
  content:"";position:absolute;inset:auto 18% -8px;height:16px;border-radius:50%;
  background:rgba(239,31,47,.58);filter:blur(14px);opacity:.58;z-index:-2;
  animation:v83ButtonGlow 2.6s ease-in-out infinite
}
.hero-v44-actions .button{background:linear-gradient(135deg,#ff2436 0%,#c80515 100%)!important;color:#fff!important}
.hero-v44-actions .button-outline{background:linear-gradient(145deg,#1a1d24,#0b0d12)!important;border-color:rgba(255,255,255,.34)!important}
.hero-v44-actions .button-dark{background:linear-gradient(145deg,#171a21,#08090d)!important;border-color:rgba(239,31,47,.58)!important}
.hero-v44-actions .nav-toggle{background:linear-gradient(145deg,#14171d,#08090d)!important;color:#fff!important;border-color:rgba(239,31,47,.72)!important}
.hero-v44-actions .button:hover,.hero-v44-actions .button:focus-visible,.hero-v44-actions .nav-toggle:hover,.hero-v44-actions .nav-toggle:focus-visible{
  transform:translateY(-4px) scale(1.015);border-color:#ff5360!important;
  box-shadow:0 20px 44px rgba(0,0,0,.42),0 0 26px rgba(239,31,47,.34),inset 0 1px 0 rgba(255,255,255,.25)
}
.hero-v44-benefits{overflow:hidden;border-radius:26px!important;background:linear-gradient(160deg,rgba(18,20,27,.96),rgba(7,8,12,.98))!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 20px 50px rgba(0,0,0,.3)!important}
.hero-v44-benefits>div{position:relative;transition:transform .25s ease,background .25s ease}
.hero-v44-benefits>div:hover{transform:translateY(-3px);background:rgba(239,31,47,.06)}
.hero-v44-benefits b{animation:v83IconPulse 2.8s ease-in-out infinite}
.hero-v44-benefits>div:nth-child(2) b{animation-delay:.3s}.hero-v44-benefits>div:nth-child(3) b{animation-delay:.6s}.hero-v44-benefits>div:nth-child(4) b{animation-delay:.9s}.hero-v44-benefits>div:nth-child(5) b{animation-delay:1.2s}

/* REWARDS MEMBER CARD */
.rewards-page .card-stage{perspective:1200px}
.rewards-page .reward-card{position:relative;overflow:hidden;transform-style:preserve-3d;will-change:transform;box-shadow:0 26px 70px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.08),0 0 32px rgba(239,31,47,.12)!important}
.rewards-page .reward-card::before{
  content:"";position:absolute;inset:-65% -40%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.05) 44%,rgba(255,255,255,.28) 49%,rgba(255,255,255,.05) 54%,transparent 63%);
  transform:translateX(-48%) rotate(6deg);animation:v83CardShine 5.6s ease-in-out infinite;pointer-events:none;z-index:4
}
.rewards-page .reward-card::after{
  content:"";position:absolute;width:62%;aspect-ratio:1;border:2px solid rgba(239,31,47,.20);border-radius:50%;right:-22%;bottom:-43%;box-shadow:0 0 42px rgba(239,31,47,.12);animation:v83Ring 8s linear infinite;pointer-events:none
}
.rewards-page .card-stage.show .reward-card,.rewards-page .card-stage.visible .reward-card{
  animation:v83CardEntrance 1.7s cubic-bezier(.18,.86,.24,1.1) both,v83CardIdle 4.8s 1.7s ease-in-out infinite!important
}
.rewards-page .reward-card .balance strong{animation:v83BalanceGlow 2.4s ease-in-out infinite}
.rewards-page .reward-card .bar i{position:relative;overflow:visible}
.rewards-page .reward-card .bar i::after{content:"";position:absolute;right:-5px;top:50%;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 18px #ff3345;transform:translateY(-50%);animation:v83Spark 1.6s ease-in-out infinite}

/* FREE ENROLLMENT FEATURE */
.rewards-page #join{position:relative;overflow:hidden}
.rewards-page #join::before{content:"";position:absolute;inset:8% -20% auto;height:58%;background:radial-gradient(circle,rgba(239,31,47,.18),transparent 64%);filter:blur(30px);pointer-events:none;animation:v83Ambient 5s ease-in-out infinite}
.rewards-page .join{position:relative;z-index:1;gap:34px!important}
.rewards-page .join-copy,.rewards-page .join-form-card{
  position:relative;overflow:hidden;border-radius:28px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.38),0 0 26px rgba(239,31,47,.07)
}
.rewards-page .join-copy::after,.rewards-page .join-form-card::after{content:"";position:absolute;inset:-40% auto -40% -40%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transform:skewX(-18deg);animation:v83PanelSweep 6s ease-in-out infinite;pointer-events:none}
.rewards-page .join-copy.show{animation:v83EnrollLeft .95s cubic-bezier(.2,.8,.2,1) both}
.rewards-page .join-form-card.show{animation:v83EnrollRight .95s .12s cubic-bezier(.2,.8,.2,1) both}
.rewards-page .join-form-card .btn{position:relative;overflow:hidden;isolation:isolate;min-height:64px;border-radius:16px!important;box-shadow:0 14px 34px rgba(239,31,47,.28)!important;animation:v83EnrollButton 2.2s ease-in-out infinite}
.rewards-page .join-form-card .btn::before{content:"";position:absolute;inset:-40% auto -40% -35%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-22deg);animation:v83ButtonSweep 3.4s ease-in-out infinite;pointer-events:none}
.rewards-page .join-form input:focus{outline:none;border-color:#ff4453!important;box-shadow:0 0 0 3px rgba(239,31,47,.14),0 10px 24px rgba(0,0,0,.18)}

@keyframes v83ButtonSweep{0%,52%{left:-45%;opacity:0}62%{opacity:1}82%,100%{left:125%;opacity:0}}
@keyframes v83ButtonGlow{0%,100%{opacity:.3;transform:scaleX(.8)}50%{opacity:.78;transform:scaleX(1.12)}}
@keyframes v83IconPulse{0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(239,31,47,0))}50%{transform:scale(1.13);filter:drop-shadow(0 0 10px rgba(239,31,47,.55))}}
@keyframes v83CardEntrance{0%{opacity:0;transform:translate3d(-90px,34px,0) rotateY(-14deg) rotateZ(-4deg) scale(.9)}45%{opacity:1;transform:translate3d(14px,-7px,0) rotateY(3deg) rotateZ(1deg) scale(1.02)}58%{transform:translate3d(-10px,1px,0) rotateY(-2deg) rotateZ(-.7deg)}69%{transform:translate3d(8px,0,0) rotateY(1deg) rotateZ(.45deg)}80%{transform:translate3d(-5px,0,0) rotateY(-.6deg) rotateZ(-.25deg)}100%{opacity:1;transform:none}}
@keyframes v83CardIdle{0%,100%{transform:translateY(0) rotateX(0) rotateY(0)}50%{transform:translateY(-9px) rotateX(1deg) rotateY(-1deg)}}
@keyframes v83CardShine{0%,58%{transform:translateX(-58%) rotate(6deg)}82%,100%{transform:translateX(65%) rotate(6deg)}}
@keyframes v83Ring{to{transform:rotate(360deg)}}
@keyframes v83BalanceGlow{0%,100%{text-shadow:0 0 0 rgba(239,31,47,0)}50%{text-shadow:0 0 24px rgba(239,31,47,.28)}}
@keyframes v83Spark{0%,100%{transform:translateY(-50%) scale(.75);opacity:.65}50%{transform:translateY(-50%) scale(1.25);opacity:1}}
@keyframes v83Ambient{0%,100%{opacity:.55;transform:translateX(-4%) scale(.94)}50%{opacity:1;transform:translateX(4%) scale(1.04)}}
@keyframes v83PanelSweep{0%,62%{left:-45%;opacity:0}72%{opacity:.75}90%,100%{left:120%;opacity:0}}
@keyframes v83EnrollLeft{from{opacity:0;transform:translate3d(-45px,20px,0)}to{opacity:1;transform:none}}
@keyframes v83EnrollRight{from{opacity:0;transform:translate3d(45px,20px,0)}to{opacity:1;transform:none}}
@keyframes v83EnrollButton{0%,100%{transform:translateY(0);box-shadow:0 14px 34px rgba(239,31,47,.22)}50%{transform:translateY(-3px);box-shadow:0 18px 44px rgba(239,31,47,.42)}}

@media(max-width:700px){
 .hero-v44-actions{grid-template-columns:1fr 1fr!important;gap:12px!important}
 .hero-v44-actions .button,.hero-v44-actions .nav-toggle{min-height:72px!important;font-size:15px!important;padding:14px 12px!important;border-radius:16px!important}
 .hero-v44-actions .button-dark,.hero-v44-actions .nav-toggle{grid-column:1/-1!important}
 .hero-v44-benefits{margin-top:18px!important}
 .rewards-page .card-stage.show .reward-card,.rewards-page .card-stage.visible .reward-card{animation:v83CardEntranceMobile 1.45s cubic-bezier(.18,.86,.24,1.08) both,v83CardIdleMobile 4.8s 1.45s ease-in-out infinite!important}
 .rewards-page .join{gap:26px!important}
 .rewards-page .join-copy,.rewards-page .join-form-card{border-radius:22px!important}
}
@keyframes v83CardEntranceMobile{0%{opacity:0;transform:translate3d(-44px,18px,0) rotateZ(-3deg) scale(.94)}45%{opacity:1;transform:translate3d(8px,-4px,0) rotateZ(.8deg) scale(1.01)}60%{transform:translate3d(-6px,0,0) rotateZ(-.4deg)}74%{transform:translate3d(4px,0,0) rotateZ(.25deg)}100%{opacity:1;transform:none}}
@keyframes v83CardIdleMobile{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

@media(prefers-reduced-motion:reduce){
 .hero-v44-actions .button::before,.hero-v44-actions .button::after,.hero-v44-actions .nav-toggle::before,.hero-v44-actions .nav-toggle::after,.hero-v44-benefits b,.rewards-page .reward-card,.rewards-page .reward-card::before,.rewards-page .reward-card::after,.rewards-page #join::before,.rewards-page .join-copy,.rewards-page .join-form-card,.rewards-page .join-form-card .btn{animation:none!important}
}
