/* v25: readable shopping labels, full-width photos, five footer benefits. */
.campaign-carousel .shop-flip-face .shop-channel-label,
.campaign-carousel .shop-flip-face .shop-channel-label>span{color:#8c1230;text-shadow:none}
.campaign-carousel .shop-flip-face .shop-channel-label small{color:#662320;font-weight:600;text-shadow:none}
.shop-flip-stage{animation:shop-float-v25 3.6s ease-in-out infinite}
.shop-flip-inner{animation-name:shop-flip-v25;animation-duration:7.2s}
/* Each image supplies its own height. No contain bars, stretching or crop. */
.shop-flip-face{inset:auto;top:50%;left:0;width:100%;height:auto;transform:translateY(-50%) rotateY(0deg) translateZ(1px)}
.shop-flip-face-back{transform:translateY(-50%) rotateY(180deg) translateZ(1px)}
.shop-flip-face>img{flex:none;display:block;width:100%;height:auto;min-height:0;object-fit:contain;background:transparent}
.campaign-banner[aria-hidden="true"] .shop-flip-stage{animation-play-state:paused}
@keyframes shop-flip-v25{0%,41.66667%{transform:rotateY(0)}50%,91.66667%{transform:rotateY(180deg)}100%{transform:rotateY(360deg)}}
@keyframes shop-float-v25{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* The exact supplied mark is windowed from its screenshot without repainting. */
.mini-app-logo-supplied{width:68%;overflow:hidden;border-radius:0;background:none;box-shadow:none}
.mini-app-logo-supplied>img{display:block;position:absolute;max-width:none;width:147.2%;height:auto;left:-23.6%;top:-109.6%}
/* Keep the QR view opaque throughout its reading hold. */
@keyframes app-qr-open-v24{0%,55%,100%{opacity:0;transform:translateY(8%)}61%,94%{opacity:1;transform:translateY(0)}98%{opacity:0;transform:translateY(0)}}

.footer-perk{max-width:190px;padding:12px 14px;gap:9px}
.footer-perk strong{font-size:12px}.footer-perk small{font-size:9px}.footer-perk>svg{width:21px;height:21px}
.footer-perk-early{top:10%;left:-4%}
.footer-perk-vip{top:29%;right:-4%}
.footer-perk-cashback{top:49%;left:-4%;--float-tilt:3deg;--float-rise:-13px;animation-duration:4.3s;animation-delay:-1.6s}
.footer-perk-offers{bottom:21%;right:-4%;--float-tilt:-3deg;--float-rise:-12px;animation-duration:3.8s;animation-delay:-.4s}
.footer-perk-gifts{bottom:3%;left:5%}
@media(min-width:701px) and (max-width:1100px){
 .footer-perk{max-width:165px;padding:9px 10px;gap:7px}.footer-perk strong{font-size:10px}.footer-perk small{font-size:8px}.footer-perk>svg{width:17px;height:17px}
 .footer-perk-early,.footer-perk-cashback{left:-5%}.footer-perk-vip,.footer-perk-offers{right:-5%}
}
@media(max-width:700px){
 .shop-destinations-art:has(.shop-flip-stage){justify-content:center}
 .shop-flip-stage{width:auto;height:88%;aspect-ratio:1.48;max-width:100%;flex:none}
 .shop-flip-face .shop-channel-label{padding:1.6cqw 2.3cqw;gap:1.5cqw}
 .shop-flip-face .shop-channel-label>span{font-size:2.35cqw}.shop-flip-face .shop-channel-label small{font-size:1.85cqw}
 .shop-flip-face .shop-browser-bar{padding:1.25cqw 2cqw}
 .footer-perk{max-width:39cqw;padding:1.5cqw 1.7cqw;gap:1.2cqw}
 .footer-perk strong{font-size:2.3cqw}.footer-perk small{font-size:1.65cqw}.footer-perk>svg{width:3.5cqw;height:3.5cqw}
 .footer-perk-early{top:3%;left:0}.footer-perk-vip{top:23%;right:0}
 .footer-perk-cashback{top:43%;left:0;--float-rise:-6px}.footer-perk-offers{bottom:17%;right:0;--float-rise:-6px}
 .footer-perk-gifts{bottom:0;left:3%}
 @keyframes shop-float-v25{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
}
@media(prefers-reduced-motion:reduce){
 .shop-flip-stage{animation:none!important;transform:none}
 .shop-flip-face{position:relative;top:auto;left:auto;transform:none;align-self:center}
 .shop-flip-stage{width:100%;height:88%;aspect-ratio:auto}
}
