.partner-programmes[data-motion="running"] .partner-programme::before{animation-play-state:running}
.partner-programme{isolation:isolate}
.partner-programme>h3,.partner-programme>.partner-programme__name,.partner-programme>.partner-programme__detail,.partner-programme>.partner-programme__link,.partner-programme>.partner-programme__review,.partner-programme>.partner-programme__top{position:relative;z-index:2}
.partner-programme::before{content:"";position:absolute;z-index:3;pointer-events:none;top:-65%;left:-75%;width:62%;height:230%;background:linear-gradient(90deg,transparent 0%,rgba(222,255,191,.025) 28%,rgba(239,255,213,.25) 48%,rgba(255,255,238,.1) 54%,transparent 78%);mix-blend-mode:screen;transform:translate3d(-180%,0,0) rotate(19deg);opacity:0;animation:partner-card-sheen 10.8s ease-in-out infinite;animation-play-state:paused}
.partner-programme[data-programme="microsoft"]::before{animation-delay:2.5s;animation-duration:12.3s}
.partner-programme[data-programme="nvidia"]::before{animation-delay:5s;animation-duration:9.7s}
@keyframes partner-card-sheen{0%,9%{transform:translate3d(-180%,0,0) rotate(19deg);opacity:0}13%{opacity:.55}18%{opacity:.3}23%{opacity:.6}29%{opacity:.35}38%,100%{transform:translate3d(470%,0,0) rotate(19deg);opacity:0}}
.partner-status--listed{position:relative;overflow:visible;box-shadow:0 0 20px #bfff6b14}
.partner-stars{position:absolute;pointer-events:none;right:0;top:100%;width:92px;height:94px;z-index:1}
.partner-star{position:absolute;left:var(--x);top:-3px;width:var(--size);height:var(--size);background:#e9ffd0;clip-path:polygon(50% 0,61% 36%,100% 50%,61% 63%,50% 100%,38% 63%,0 50%,38% 36%);filter:drop-shadow(0 0 3px #d7ff9b);opacity:0;transform:translate(0,0);animation:partner-star-fall var(--duration) linear infinite;animation-delay:var(--delay);animation-play-state:paused}
.partner-programmes[data-motion="running"] .partner-star{animation-play-state:running}
@keyframes partner-star-fall{0%{opacity:0;transform:translate3d(0,-3px,0) rotate(0deg) scale(.45)}10%{opacity:.9}30%{opacity:.35}48%{opacity:.85}75%{opacity:.3}100%{opacity:0;transform:translate3d(var(--drift),83px,0) rotate(145deg) scale(.15)}}
.partner-programme--listed{padding-bottom:112px;border-bottom-color:#b3934b}
.partner-fire{position:absolute!important;z-index:0;left:0;right:0;bottom:0;height:94px;overflow:hidden;pointer-events:none;contain:strict;background:radial-gradient(ellipse at 50% 100%,#f49b1c45,transparent 75%)}
.partner-fire::after{content:"";position:absolute;inset:0;box-shadow:inset 0 -1px 0 #f8cc7070;pointer-events:none}
.partner-fire canvas{display:block;width:100%;height:100%;opacity:.92;filter:saturate(.9);mask-image:linear-gradient(to top,#000 0%,#000 76%,transparent 100%)}
.partner-programme--listed .partner-programme__link{border-top-color:#48623b;text-shadow:0 1px 8px #061811}
.partner-programme--listed::after{content:"";position:absolute;inset:auto 0 0;height:12px;pointer-events:none;z-index:1;background:linear-gradient(0deg,#ffb83d15,transparent)}
.partner-fire[data-renderer="static"] canvas{display:none}
.partner-programmes[data-motion="paused"] .partner-programme::before,.partner-programmes[data-motion="paused"] .partner-star{animation-play-state:paused}
@media(max-width:760px){.partner-programme--listed{padding-bottom:112px}.partner-fire{height:90px}}
@media(prefers-reduced-motion:reduce){.partner-programme::before,.partner-programme::after,.partner-star{animation:none!important;transition:none!important}.partner-stars{display:none}.partner-fire canvas{opacity:.5}}

/* Decorative mini flames for pending programme status labels. */
.partner-status--pending{position:relative;padding-left:29px}
.partner-status--pending::before,.partner-status--pending::after{content:"";position:absolute;pointer-events:none;transform-origin:50% 100%;animation-play-state:paused}
.partner-status--pending::before{left:9px;bottom:6px;width:11px;height:17px;border-radius:72% 28% 62% 38% / 78% 58% 42% 22%;background:linear-gradient(12deg,#d95713 5%,#fca52b 55%,#ffe8a0 100%);box-shadow:0 0 8px #fb9b2745;transform:rotate(-12deg);animation:pending-flame-flicker 1.73s ease-in-out infinite;animation-play-state:paused}
.partner-status--pending::after{left:13px;bottom:7px;width:5px;height:10px;border-radius:72% 28% 65% 35%;background:linear-gradient(0deg,#fff1b4,#ffc550);opacity:.9;transform:rotate(12deg);animation:pending-flame-core 1.21s ease-in-out infinite;animation-play-state:paused}
.partner-programme[data-programme="nvidia"] .partner-status--pending::before{animation-duration:2.13s;animation-delay:-.81s}
.partner-programme[data-programme="apple"] .partner-status--pending::before{animation-duration:1.91s;animation-delay:-1.31s}
.partner-programmes[data-motion="running"] .partner-status--pending::before,.partner-programmes[data-motion="running"] .partner-status--pending::after{animation-play-state:running}
.partner-programmes[data-motion="paused"] .partner-status--pending::before,.partner-programmes[data-motion="paused"] .partner-status--pending::after,body[data-portfolio-motion="paused"] .partner-status--pending::before,body[data-portfolio-motion="paused"] .partner-status--pending::after{animation-play-state:paused}
@keyframes pending-flame-flicker{0%,100%{transform:rotate(-12deg) scale(.95,1);opacity:.88}21%{transform:rotate(3deg) scale(1.04,.86);opacity:.98}47%{transform:rotate(-19deg) scale(.91,1.07);opacity:.82}69%{transform:rotate(-6deg) scale(1.05,.94);opacity:.96}83%{transform:rotate(-15deg) scale(.97,1.03);opacity:.9}}
@keyframes pending-flame-core{0%,100%{transform:rotate(12deg) scale(.95);opacity:.9}37%{transform:rotate(-7deg) scale(.85,1.08);opacity:.73}72%{transform:rotate(18deg) scale(1.05,.91);opacity:1}}
@media(prefers-reduced-motion:reduce){.partner-status--pending::before,.partner-status--pending::after{animation:none!important}}
