/* Shared: "New" nav badge + launch offer banner (linked on every page) */
.nav-links a.nav-new{display:inline-flex;align-items:center;gap:7px}
.new-badge{display:inline-flex;align-items:center;gap:3px;background:#0a0f1e;color:#fff;font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1;padding:4px 8px 4px 6px;border-radius:999px;position:relative;overflow:hidden;animation:nbFloat 3s ease-in-out infinite}
.new-badge .nb-star{color:#f5b301;font-size:11px;display:inline-block;animation:nbStar 2.4s ease-in-out infinite}
.new-badge::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:nbShine 3.6s ease-in-out infinite}
@keyframes nbFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes nbStar{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.3) rotate(25deg)}}
@keyframes nbShine{0%,55%{left:-60%}100%{left:130%}}

.launch-offer{max-width:912px;margin:18px auto;padding:14px 22px;background:linear-gradient(100deg,#0a0f1e,#1a2540 55%,#2f3e63);background-size:200% 100%;color:#fff;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:8px 14px;flex-wrap:wrap;font-size:14.5px;font-weight:600;letter-spacing:-.005em;text-align:center;box-shadow:0 8px 24px -6px rgba(10,15,30,.2);position:relative;overflow:hidden;animation:loBg 8s ease-in-out infinite}
.launch-offer[hidden]{display:none}
.launch-offer .lo-pct{background:#fff;color:#0a0f1e;padding:3px 12px;border-radius:999px;font-weight:800;font-size:13px;animation:loPulse 2.6s ease-in-out infinite}
.launch-offer .lo-count{color:#c9d2e4;font-weight:500;font-variant-numeric:tabular-nums}
@keyframes loBg{0%,100%{background-position:0 0}50%{background-position:100% 0}}
@keyframes loPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.45)}50%{box-shadow:0 0 0 7px rgba(255,255,255,0)}}
@media(max-width:600px){.launch-offer{margin:14px 16px;font-size:13.5px}}
@media(prefers-reduced-motion:reduce){.new-badge,.new-badge .nb-star,.new-badge::after,.launch-offer,.launch-offer .lo-pct{animation:none}.new-badge::after{display:none}}

/* Home USP pill — same look as the launch offer, pops in then "breathes" to catch the eye */
.usp-pop{max-width:912px;margin:14px auto 22px;padding:16px 26px;background:linear-gradient(100deg,#0a0f1e,#1a2540 55%,#2f3e63);background-size:200% 100%;color:#fff;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:17px;font-weight:500;letter-spacing:-.01em;line-height:1.35;text-align:center;box-shadow:0 10px 28px -8px rgba(10,15,30,.28);animation:uspIn .7s cubic-bezier(.2,.9,.3,1.25) both,uspBreathe 4.2s ease-in-out .7s infinite,loBg 8s ease-in-out infinite}
.usp-pop strong{font-weight:800}
.usp-pop .usp-spark{flex:none;width:30px;height:30px;border-radius:999px;background:#fff;color:#0a0f1e;display:grid;place-items:center;font-size:15px;animation:loPulse 2.6s ease-in-out infinite}
/* the offer banner breathes too, half a cycle out of phase so the two never pulse together */
.launch-offer{animation:loBg 8s ease-in-out infinite,uspBreathe 4.2s ease-in-out 2.1s infinite}
@keyframes uspIn{from{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:none}}
@keyframes uspBreathe{0%,100%{transform:scale(1);box-shadow:0 10px 28px -8px rgba(10,15,30,.28)}50%{transform:scale(1.025);box-shadow:0 16px 40px -8px rgba(47,62,99,.45)}}
@media(max-width:600px){.usp-pop{margin:12px 16px 18px;padding:14px 18px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.usp-pop,.usp-pop .usp-spark,.launch-offer{animation:none}}
