.header-promotions .loyalty-link{color:#7c3aed}
.header-promotions .loyalty-link:hover,.header-promotions .loyalty-link[aria-current=page]{color:#7c3aed;border-bottom-color:#7c3aed}
.loyalty-lettering{white-space:pre}
.loyalty-lettering>span{display:inline-block;animation:loyalty-wave 3.6s ease-in-out infinite,loyalty-rainbow 7s linear infinite;animation-delay:calc(var(--letter)*95ms),calc(var(--letter)*-.55s)}
@keyframes loyalty-wave{0%,32%,100%{transform:translateY(0)}16%{transform:translateY(-2px)}}
@keyframes loyalty-rainbow{0%,100%{color:#7c3aed}16%{color:#b12ac6}32%{color:#c33363}48%{color:#b75015}64%{color:#287c3f}80%{color:#087c91}92%{color:#0569f5}}
@media(prefers-reduced-motion:reduce){.loyalty-lettering>span{animation:none;color:inherit}}
.loyalty-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 24px;padding:24px;border:1px solid #e4d5ff;border-radius:14px;background:#f3edff;color:#4c1d95}
.loyalty-banner h2{display:flex;align-items:center;gap:10px;font-size:1.5rem;margin-bottom:8px}.loyalty-banner p{font-size:.9375rem;line-height:1.5}
.loyalty-banner>strong{font-size:1.5rem;white-space:nowrap}.loyalty-banner small{display:block;font-size:.8125rem;font-weight:500;margin-top:5px}
.loyalty-price,.loyalty-totals{color:#6d28d9}.loyalty-add{color:#6d28d9;background:#f3edff;border-color:#d8b4fe}
.loyalty-add:disabled{opacity:.6;cursor:not-allowed}.loyalty-issue{display:block;font-size:.875rem;line-height:1.5;margin-top:8px;color:#7c2d12}
.loyalty-totals{padding-block:12px;margin-block:12px;border-block:1px solid #e4d5ff}.loyalty-totals p{display:flex;justify-content:space-between;gap:12px;margin:6px 0;font-size:.875rem}.loyalty-totals .loyalty-issue{display:block}
.reward-control{margin-top:8px}.loyalty-account{padding:18px;background:#f3edff;border:1px solid #e4d5ff;border-radius:10px;margin-bottom:20px;color:#4c1d95}.loyalty-account a{display:inline-block;margin-left:12px;text-decoration:underline}
@media(max-width:639px){.loyalty-banner{align-items:flex-start;flex-direction:column;gap:16px;padding:20px}.header-promotions{flex-wrap:wrap;gap:0 18px;padding-block:4px}.header-promotions .loyalty-link{min-height:44px}}
