/* A restrained 90s collector-card finish: foil lives inside the controls, never behind them. */
.store-body .button:not(:disabled),.store-body .hero .button-light:not(:disabled){
  background-image:linear-gradient(135deg,#ffffff24 0%,transparent 36%,#c99f5230 72%,#ffffff1c 100%)!important;
  background-blend-mode:screen;
  box-shadow:inset 0 1px 0 #ffffff75,inset 0 0 0 2px #211b1420,inset 0 -12px 23px #dfba6754!important;
  border-radius:5px;animation:collector-light 3.7s ease-in-out infinite!important;
}
@keyframes collector-light{0%,100%{box-shadow:inset 0 1px 0 #ffffff75,inset 0 0 0 2px #211b1420,inset 0 -12px 23px #dfba6754}50%{box-shadow:inset 0 1px 0 #fff,inset 0 0 0 2px #211b1420,inset 0 -16px 27px #eed18a73}}
.store-body .button:not(:disabled)::after{content:"";position:absolute;inset:3px;border:1px solid #ffffff2c;border-radius:2px;pointer-events:none}
.store-body .button-light:not(:disabled)::after{border-color:#6044172b}
.store-body .button:not(:disabled):is(:hover,:focus-visible){box-shadow:inset 0 1px 0 #fff,inset 0 0 0 2px #211b1420,inset 0 -16px 28px #e6c16c75!important}
.store-body .card-detail-link{position:relative;overflow:hidden;border-radius:50%;background:linear-gradient(135deg,#fffdf7a8,#eddfc599)!important}
.store-body .card-detail-link::after{content:"";position:absolute;inset:3px;border:1px solid #c9ae804d;border-radius:50%;pointer-events:none}
/* Icons have purpose-specific movement rather than one repeated wiggle. */
.store-body i.fa-solid,.store-body i.fa-regular,.store-body i.fa-brands{animation:icon-breathe 4.2s ease-in-out infinite!important}
.store-body .nav-leading.fa-house{animation:icon-home 3.8s ease-in-out infinite!important}
.store-body .nav-leading.fa-compass{animation:icon-compass 4.8s ease-in-out infinite!important}
.store-body .nav-leading.fa-award{animation:icon-award 4.2s ease-in-out infinite!important}
.store-body :is(.fa-magnifying-glass,.fa-sliders){animation:icon-focus 3.4s ease-in-out infinite!important}
.store-body :is(.fa-arrow-right,.fa-chevron-right,.fa-arrow-up-right-from-square){animation:icon-arrow 3s ease-in-out infinite!important}
.store-body :is(.fa-star,.fa-sparkles){animation:icon-spark 3.2s ease-in-out infinite!important}
.store-body .pokeball-button{animation:icon-ball 5.5s ease-in-out infinite!important}
.store-body .pokeball-button:hover{animation-play-state:paused!important}
.store-body :is(a,button,summary):is(:hover,:focus-visible) i{animation-play-state:paused!important;transform:translateX(2px)}
@keyframes icon-breathe{0%,78%,100%{opacity:1;transform:translateY(0)}87%{opacity:.76;transform:translateY(-1px)}}
.store-body .globe-icon{animation:icon-compass 5.5s ease-in-out infinite}
.store-body .chevron-icon{animation:icon-arrow 3.5s ease-in-out infinite}
@keyframes icon-home{0%,80%,100%{transform:translateY(0)}85%{transform:translateY(-2px)}}
@keyframes icon-compass{0%,75%,100%{transform:rotate(0)}83%{transform:rotate(14deg)}91%{transform:rotate(-5deg)}}
@keyframes icon-award{0%,75%,100%{transform:rotate(0)}86%{transform:rotate(-9deg)}}
@keyframes icon-focus{0%,76%,100%{transform:scale(1)}86%{transform:scale(1.13)}}
@keyframes icon-arrow{0%,72%,100%{transform:translateX(0)}82%{transform:translateX(3px)}}
@keyframes icon-spark{0%,75%,100%{opacity:1;transform:scale(1)}85%{opacity:.7;transform:scale(.88)}}
@keyframes icon-ball{0%,78%,100%{transform:rotate(0)}87%{transform:rotate(9deg)}94%{transform:rotate(-4deg)}}
/* The key headline should never begin invisible while the page arrives. */
.store-body .hero-copy>*{animation-duration:.38s!important}
@keyframes hero-arrive{from{opacity:.72;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.store-body .nav-leading,.store-body i.fa-solid,.store-body i.fa-regular,.store-body i.fa-brands,.store-body .pokeball-button,.store-body .hero-copy>*{animation:none!important}}
.store-body .hero-copy>*{animation-delay:0s!important}
