/* BT anniversary campaign — one connected composition, scoped to slide one. */
.anniversary-slide .anniversary-hero{grid-template-columns:1fr 1.08fr;gap:40px;padding:44px 52px;align-items:center}
.anniversary-slide .anniversary-copy h1{font:650 clamp(40px,4.5vw,64px)/1.04 Inter,"Segoe UI",sans-serif;letter-spacing:-.055em;max-width:600px;text-wrap:initial;margin:20px 0}
.celebration-heading-accent{color:#abd7e4}
.anniversary-slide .anniversary-copy .hero-text{font:400 15px/1.8 Inter,"Segoe UI",sans-serif;max-width:490px;color:#b9cedb}
.celebration-threshold{margin-top:27px;border-left:2px solid #f39b60;padding-left:17px;display:grid;grid-template-columns:auto 1fr;column-gap:15px;align-items:center}
.celebration-threshold>span{grid-column:1/-1;font-size:9px;letter-spacing:.18em;color:#efa873;font-weight:600}
.celebration-threshold strong{font:600 42px/1.2 Inter,"Segoe UI",sans-serif;letter-spacing:-.045em;color:#fff}
.celebration-threshold small{font-size:13px;font-weight:400;letter-spacing:0;margin-left:8px;color:#b8ccd8}
.celebration-threshold p{grid-column:1/-1;font-size:12px;color:#b8ccd8;margin:4px 0 0}
.anniversary-stage.celebration-scene{position:relative;display:block;min-height:0;width:100%;max-width:none;margin:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;transform:none;isolation:isolate}
.celebration-scene::before,.celebration-scene::after,.celebration-scene>.bt-energy-field{display:none}
.celebration-brand{display:flex;gap:12px;align-items:center;padding:0 10px 12px;border-bottom:1px solid #7594a32e;color:#e0edf3;font:600 10px/1.5 Inter,"Segoe UI",sans-serif;letter-spacing:.08em}
.celebration-brand img{width:42px;height:48px;object-fit:contain}.celebration-brand small{display:block;font-size:9px;font-weight:400;color:#8baaba;letter-spacing:.15em;margin-top:3px}
.celebration-brand .celebration-edition{margin-left:auto;text-align:right;font-size:8px;line-height:1.7;font-weight:400;color:#9bb9c9}
.celebration-art{height:285px;position:relative;display:grid;place-items:center;isolation:isolate;background:radial-gradient(ellipse at 50% 65%,#277b982d,transparent 65%)}
.celebration-number{position:absolute;left:3%;top:8px;font:700 240px/.95 Inter,"Segoe UI",sans-serif;letter-spacing:-.09em;color:#86b6cc0a;-webkit-text-stroke:1px #80b5cb3a;z-index:-1;user-select:none}
.celebration-mascot{display:block;width:275px;height:275px;max-width:75%;object-fit:contain;position:relative;margin-left:36px;filter:drop-shadow(0 16px 18px #041b3655);animation:celebration-float 6s ease-in-out infinite}
.celebration-circuit{position:absolute;inset:0;width:100%;height:100%;fill:none;pointer-events:none}
.celebration-tracks{stroke:#63a9bd55;stroke-width:1}.celebration-current{stroke:#75d9e8;stroke-width:2;stroke-dasharray:18 230;animation:celebration-flow 6s linear infinite}.celebration-terminals{fill:#eca16a}
.celebration-orbit-label{position:absolute;bottom:6px;right:6px;font:500 7px/1.4 Inter,"Segoe UI",sans-serif;letter-spacing:.18em;color:#90b0c0}
.celebration-rewards{border:1px solid #638b9d55;border-radius:10px;background:linear-gradient(120deg,#19374acd,#163348a8);padding:14px 14px 8px;position:relative}
.celebration-rewards-heading{display:flex;justify-content:space-between;gap:10px;font:500 8px/1.5 Inter,"Segoe UI",sans-serif;letter-spacing:.1em;color:#9cbccc;margin-bottom:12px}
.celebration-rewards-heading span:last-child{color:#edac7f}
.celebration-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.celebration-options button{min-width:0;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:103px;padding:9px 7px 36px;border:1px solid #83a7b62b;border-radius:5px;background:#0b283c44;color:#d3e3ec;text-align:left;font:500 10px/1.4 Inter,"Segoe UI",sans-serif;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.celebration-options button>span{font-size:8px;letter-spacing:.1em;color:#82a8ba;display:block;margin-bottom:6px}
.celebration-options svg{position:absolute;bottom:8px;right:8px;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.2}
.celebration-options button:hover,.celebration-options button[aria-pressed=true]{background:#edac78;color:#132f41;border-color:#f2bd93}.celebration-options button[aria-pressed=true]>span,.celebration-options button:hover>span{color:#805337}
.celebration-options button:focus-visible{outline:2px solid #c9f1ff;outline-offset:3px}
.celebration-selection{font:400 9px/1.5 Inter,"Segoe UI",sans-serif;color:#89a9bb;margin:9px 0 0}.celebration-selection strong{font-weight:500;color:#c3dae6}
.celebration-draw{display:flex;align-items:center;gap:12px;margin-top:12px;padding:12px 0;border-bottom:1px solid #7594a32e}.celebration-draw-mark{display:grid;place-items:center;width:32px;height:32px;border:1px solid #d2926255;color:#f5ad79;border-radius:50%;font-size:18px;flex:none}
.celebration-draw strong{display:block;font:600 12px/1.5 Inter,"Segoe UI",sans-serif;color:#e2eef4}.celebration-draw div>span{display:block;font:400 10px/1.6 Inter,"Segoe UI",sans-serif;color:#9db7c7;margin-top:2px}
@keyframes celebration-float{50%{translate:0 -7px}}@keyframes celebration-flow{to{stroke-dashoffset:-248}}
.motion-paused .celebration-mascot,.motion-paused .celebration-current{animation-play-state:paused}
@media(max-width:1050px){.anniversary-slide .anniversary-hero{padding:40px 28px 52px;gap:26px}.anniversary-slide .anniversary-copy h1{font-size:42px}.celebration-art{height:255px}.celebration-mascot{height:245px;width:245px;margin-left:18px}.celebration-number{font-size:210px;top:15px}.celebration-rewards{padding:12px 10px 8px}.celebration-options button{font-size:9px;padding-inline:6px}}
@media(max-width:800px){.anniversary-slide .anniversary-hero{grid-template-columns:1fr;padding:38px 26px 58px;gap:32px}.anniversary-stage.celebration-scene{max-width:520px;margin:auto}.anniversary-slide .anniversary-copy{max-width:600px}.anniversary-slide .anniversary-copy h1{font-size:clamp(38px,7vw,54px)}.celebration-art{height:285px}.celebration-mascot{width:280px;height:280px}.celebration-number{font-size:240px}.celebration-options button{font-size:11px}.celebration-threshold{margin-top:20px}.anniversary-actions{margin-top:22px}}
@media(max-width:400px){.anniversary-slide .anniversary-hero{padding-inline:20px}.celebration-options{grid-template-columns:repeat(2,minmax(0,1fr))}.celebration-options button{min-height:84px;font-size:11px}.celebration-rewards-heading{font-size:7px}.celebration-art{height:245px}.celebration-number{font-size:210px}.celebration-mascot{height:240px;width:240px}.celebration-brand{padding-inline:0}}
@media(prefers-reduced-motion:reduce){.celebration-mascot,.celebration-current{animation:none}.celebration-options button{transition:none}}
/* Rewards occupy the circuit endpoints, framing the original mascot. */
.celebration-satellites{position:absolute;inset:0;pointer-events:none}
.reward-satellite{position:absolute;width:24%;display:flex;flex-direction:column;gap:4px;color:#d2e7ef;text-shadow:0 2px 12px #0d2134}
.reward-satellite svg{width:25px;height:25px;fill:none;stroke:#efb17f;stroke-width:1.2;margin-bottom:3px;filter:drop-shadow(0 0 8px #efa76a22)}
.reward-satellite small{font:500 6px/1.5 Inter,"Segoe UI",sans-serif;letter-spacing:.13em;color:#90b8cb}
.reward-satellite strong{font:500 10px/1.45 Inter,"Segoe UI",sans-serif}
.reward-satellite-1{left:1%;top:12%}.reward-satellite-2{right:1%;top:12%;align-items:flex-end;text-align:right}
.reward-satellite-3{left:1%;bottom:13%}.reward-satellite-4{right:1%;bottom:13%;align-items:flex-end;text-align:right}
.celebration-art .celebration-mascot{margin-left:0;max-width:66%}
.celebration-art .celebration-number{opacity:.6}
@media(max-width:1050px){.reward-satellite strong{font-size:9px}.reward-satellite svg{width:21px;height:21px}.reward-satellite{width:25%}}
@media(max-width:400px){.reward-satellite strong{font-size:8px}.reward-satellite small{font-size:5px}.reward-satellite svg{width:20px;height:20px}.reward-satellite-1,.reward-satellite-2{top:10%}.reward-satellite-3,.reward-satellite-4{bottom:14%}}
.reward-detail-dialog{width:min(680px,calc(100% - 32px));max-height:85vh;box-sizing:border-box;overflow:auto;border:1px solid #426172;border-radius:16px;padding:32px;background:#122d40;color:#e6f1f5;box-shadow:0 30px 90px #0008;font-family:Inter,"Segoe UI",sans-serif}
.reward-detail-dialog::backdrop{background:#061521bf;backdrop-filter:blur(5px)}.reward-detail-dialog h2{font-size:30px;line-height:1.2;margin:14px 35px 20px 0;color:#fff}.reward-detail-dialog .eyebrow{color:#efac7c;font-size:9px;letter-spacing:.12em}.reward-detail-close{position:absolute;right:12px;top:12px;border:1px solid #7893a055;background:transparent;border-radius:50%;width:36px;height:36px;color:#fff;font-size:24px;cursor:pointer}.reward-detail-content p{font-size:14px;line-height:1.8;white-space:pre-wrap;color:#bed3de}.reward-detail-gallery{display:grid;gap:12px}.reward-detail-gallery img{width:100%;height:auto;border-radius:8px;display:block}.reward-detail-dialog .btn{margin-top:15px}.reward-detail-close:focus-visible{outline:2px solid #ffb57e;outline-offset:3px}
.reward-detail-dialog{width:min(780px,calc(100% - 32px))}.reward-video-link{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid #648d9f66;border-radius:9px;background:linear-gradient(110deg,#244c60,#18374b);color:#edf6fa;text-decoration:none;margin:22px 0}.reward-video-link>span:last-child{margin-left:auto;color:#ffb780}.reward-video-link strong{font-size:14px;display:block}.reward-video-link small{display:block;font-size:11px;color:#a9c7d5;margin-top:5px}.reward-play{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f4ae7e;color:#122d40}.reward-album{margin-top:28px;padding-top:20px;border-top:1px solid #779bab33}.reward-album h3{font:600 20px/1.4 Inter,"Segoe UI",sans-serif;color:#fff;margin:0 0 8px}.reward-detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.reward-detail-gallery.gallery-cover{grid-template-columns:1fr;max-width:420px;margin:18px auto 0}.reward-detail-gallery a{display:block;border-radius:8px;overflow:hidden;outline-offset:3px}.reward-detail-gallery a:focus-visible,.reward-video-link:focus-visible{outline:2px solid #ffb780}.reward-detail-gallery img{height:auto;object-fit:contain}.reward-detail-close{position:sticky;float:right;top:0;background:#122d40;z-index:2}@media(max-width:500px){.reward-detail-dialog{padding:22px}.reward-detail-gallery{grid-template-columns:1fr}.reward-album h3{font-size:18px}}

.reward-introduction{padding:22px;margin:18px 0;border-radius:10px;background:linear-gradient(120deg,#21475b,#16364a);border:1px solid #7da5b333}.reward-introduction>svg{width:44px;height:44px;fill:none;stroke:#f4b384;stroke-width:1.2;margin-bottom:14px}.reward-introduction h3{font:600 22px/1.4 Inter,'Segoe UI',sans-serif;margin:0;color:#eef7fb}.reward-introduction p{margin-bottom:0}


.voucher-gallery .reward-detail-gallery{grid-template-columns:1fr}.voucher-gallery .reward-detail-gallery a{border:1px solid #739aae44}.voucher-gallery .reward-detail-gallery img{width:100%;height:auto}


.buddy-presentation h3{color:#c7e5f0;font:500 12px/1.5 Inter,'Segoe UI',sans-serif;margin:20px 0 10px}.buddy-presentation .gallery-cover{max-width:none;margin:0}.buddy-presentation .reward-detail-gallery img{width:100%;height:auto}

