/* A single, continuous ribbon. Real brand artwork is kept unmodified. */
.reward-brands-section{position:relative;min-width:0;padding:24px 0;scroll-margin-top:110px}
.reward-brands-heading{margin-bottom:14px}.reward-brands-heading h2{max-width:700px}.reward-brands-heading .eyebrow{color:#ac2962}
.reward-marquee{--reward-gap:20px;position:relative;width:100%;overflow-x:auto;overflow-y:hidden;direction:ltr;padding:22px 0 30px;scrollbar-width:thin;scrollbar-color:#e8bacd transparent;border-radius:20px;outline-offset:3px}
.reward-marquee.is-looping{overflow-x:hidden;mask-image:linear-gradient(to right,transparent,#000 2.5%,#000 97.5%,transparent)}
.reward-marquee-track{display:flex;width:max-content;will-change:transform}
.reward-marquee-group{display:flex;flex-shrink:0;align-items:stretch;gap:var(--reward-gap);padding-right:var(--reward-gap)}
.reward-marquee.is-looping .reward-marquee-track{animation:rewards-drift var(--reward-duration,44s) linear infinite}
.reward-marquee:hover .reward-marquee-track,.reward-marquee.is-paused .reward-marquee-track{animation-play-state:paused}
/* Keyboard/touch exploration becomes a normal scrollable, non-duplicated row. */
.reward-marquee:focus-within{overflow-x:auto;mask-image:none}
.reward-marquee:focus-within .reward-marquee-track{animation:none;transform:none}
.reward-marquee:focus-within [data-reward-clone]{display:none}
.reward-brand-card{--brand:#ae2861;--wash:#fcecf3;--card-turn:-5deg;--rx:0deg;--ry:0deg;flex:0 0 clamp(248px,21vw,320px);width:clamp(248px,21vw,320px);box-sizing:border-box;background:#fff;border:1px solid #efdee6;border-radius:23px;box-shadow:0 8px 20px #78314b08;overflow:hidden;outline-offset:4px;transition:box-shadow .3s,border-color .3s,transform .3s}
.reward-brand-card:hover,.reward-brand-card:focus-visible{transform:translateY(-5px);box-shadow:0 15px 27px #78314b18;border-color:color-mix(in srgb,var(--brand) 35%,white)}
.reward-brand-card:focus-visible,.reward-marquee:focus-visible{outline:2px solid #b02963}
.reward-card-art{position:relative;display:grid;place-items:center;height:220px;padding:45px 24px 22px;box-sizing:border-box;background:radial-gradient(ellipse at 80% 20%,#fff 0,transparent 65%),var(--wash);perspective:850px;isolation:isolate}
.reward-card-art::before{content:'';position:absolute;width:170px;height:170px;border:1px solid color-mix(in srgb,var(--brand) 12%,transparent);border-radius:50%;right:-45px;bottom:-75px;z-index:-1}
.reward-card-kind{position:absolute;left:20px;top:17px;font-size:9px;line-height:1.4;letter-spacing:1.25px;font-weight:700;color:color-mix(in srgb,var(--brand) 60%,#523c46)}
.reward-card-face{position:relative;display:grid;place-items:center;width:100%;max-width:240px;aspect-ratio:1.575;border-radius:12px;background:white;box-shadow:0 12px 15px -8px #36203066;transform:rotate(var(--card-turn)) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s;overflow:hidden}
.reward-card-face>img{display:block;width:100%;height:100%;object-fit:cover}
.reward-card-face::after{content:'';position:absolute;inset:-80%;background:linear-gradient(115deg,transparent 44%,#ffffff80 50%,transparent 56%);transform:translateX(-65%);transition:transform .8s;pointer-events:none}
.reward-brand-card:hover .reward-card-face,.reward-brand-card:focus-visible .reward-card-face{transform:translateY(-5px) rotate(0) rotateX(var(--rx)) rotateY(var(--ry));box-shadow:0 18px 20px -10px #36203066}
.reward-brand-card:hover .reward-card-face::after,.reward-brand-card:focus-visible .reward-card-face::after{transform:translateX(65%)}
.reward-card-sparkle{position:absolute;right:12px;top:48px;font-size:19px;color:var(--brand);opacity:.7;transition:transform .5s}
.reward-brand-card:hover .reward-card-sparkle{transform:rotate(90deg) scale(1.15)}
.reward-card-copy{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:20px;background:#fff;position:relative}
.reward-card-copy h3{font-size:18px;font-weight:750;letter-spacing:-.5px;margin:0 0 5px;color:#30242b}
.reward-card-copy p{font-size:11px;line-height:1.5;color:#816e77;margin:0}
.reward-card-symbol{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border:1px solid #f0dfe7;border-radius:50%;color:#ae2861;font-size:16px;transition:background .3s,color .3s}
.reward-brand-card:hover .reward-card-symbol{background:#b02963;color:white}
.reward-google-play{--brand:#188c50;--wash:#edf8f0;--card-turn:-5deg}.reward-steam{--brand:#286b9b;--wash:#edf2fa;--card-turn:5deg}.reward-starbucks{--brand:#006241;--wash:#eaf5ee;--card-turn:-5deg}.reward-paypal{--brand:#1e66b6;--wash:#eaf4ff;--card-turn:5deg}.reward-disney{--brand:#7050a6;--wash:#f4edfa;--card-turn:-5deg}
.reward-paypal-face{background:linear-gradient(135deg,#fff,#f8fbff)}.reward-paypal-face>img{position:absolute;mix-blend-mode:multiply;object-fit:contain}.reward-paypal-face>img:first-child{width:69%;height:90%;top:-13%;left:15.5%}.reward-paypal-face>img:nth-child(2){width:78%;height:70%;top:32%;left:11%}
.reward-logo-face{background:#fff}.reward-logo-face>img{width:74%;height:70%;object-fit:contain}.reward-steam-face{background:#182838}.reward-steam-face>img{width:78%;height:auto}.reward-starbucks-face{background:linear-gradient(135deg,#fff,#f9fdf9)}.reward-starbucks-face>img{width:42%;height:auto;max-height:76%}.reward-disney-face{background:linear-gradient(135deg,#fff,#fcfaff)}.reward-disney-face>img{width:65%;height:auto}
.reward-brands-disclaimer{text-align:center;max-width:820px;margin:0 auto;font-size:10px;line-height:1.8;color:#8a747f}
@keyframes rewards-drift{to{transform:translateX(calc(-1 * var(--reward-loop-width)))}}
@media(max-width:600px){.reward-brand-card{flex-basis:248px;width:248px}.reward-card-art{height:205px}.reward-card-copy{padding:17px}.reward-marquee{--reward-gap:14px}.reward-brands-heading h2{font-size:28px}.reward-brands-heading p{font-size:13px}.reward-brands-section{padding-top:10px}}
@media(prefers-reduced-motion:reduce){.reward-marquee.is-looping{overflow-x:auto;mask-image:none}.reward-marquee .reward-marquee-track{animation:none!important;transform:none!important}.reward-marquee [data-reward-clone]{display:none}.reward-brand-card,.reward-brand-card *{transition:none!important}.reward-card-face::after{display:none}}
