/* CPMLS 5 週年活動頁：所有樣式都限定在 .a5 內，不影響佈景主題 */
.a5{position:relative;clip-path:inset(0);isolation:isolate}
.a5 *,.a5 *::before,.a5 *::after{box-sizing:border-box}
.a5 a,.a5 a:hover,.a5 a:focus{color:inherit;text-decoration:none}
.a5 h1,.a5 h2,.a5 h3,.a5 h4,.a5 p,.a5 ul,.a5 ol,.a5 li,.a5 figure,.a5 dl,.a5 dd{margin:0;padding:0;color:inherit;font-family:inherit;text-transform:none;letter-spacing:inherit;line-height:inherit;background:none;border:0}
.a5 ul,.a5 ol{list-style:none}
.a5 img{height:auto}
.a5 button{font-family:inherit;line-height:inherit;text-transform:none;letter-spacing:normal;min-height:0;box-shadow:none}
.a5 [hidden]{display:none !important}
body.cpmls-a5-page{background:#02040B}
.a5{color-scheme: dark;
  --void:#02040B; --abyss:#071633; --deep:#0C2A5E; --azure:#2E8BFF; --ice:#BFD8FF;
  --gold:#E6B85C; --ink:#EEF3FF; --muted:#93A6C8; --line:rgba(191,216,255,.14);
  --accent:var(--gold);
  --display:"Big Shoulders Display","Noto Sans TC",Impact,"Arial Narrow",sans-serif;
  --body:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;
  box-sizing:border-box;}

.a5{margin:0;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.75;
  background:radial-gradient(120% 90% at 70% 10%, var(--abyss), var(--void) 70%) fixed, var(--void);
  -webkit-font-smoothing:antialiased;}
.a5 img,.a5 canvas{max-width:100%;display:block}
.a5 a{color:inherit}
.a5 :focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.a5 #galaxy{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.a5 .page{position:relative;z-index:1}
.a5 .wrap{width:min(1080px,100% - 40px);margin-inline:auto}
.a5 .todo{display:inline-block;font-size:12px;line-height:1;padding:5px 8px;border-radius:999px;
  border:1px dashed var(--muted);color:var(--muted);vertical-align:middle;margin-left:8px;font-weight:500;letter-spacing:0;}
.a5 .shadow-text{text-shadow:0 2px 18px rgba(2,4,11,.9),0 0 2px rgba(2,4,11,.8)}
.a5 .btn,.a5 .tool,.a5 .seg button,.a5 .chips span,.a5 .todo,.a5 .timeline li.now .what::after,.a5 .links a{text-shadow:none}
.a5 .hero{min-height:100svh;display:flex;align-items:center;padding:96px 0 72px}
.a5 .hero .years{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.08em;color:var(--gold)}
.a5 .hero h1{margin:10px 0 18px;font-weight:900;line-height:1.08;font-size:clamp(44px,8.4vw,104px);letter-spacing:.01em}
.a5 .hero h1 .num{font-family:var(--display);font-weight:900;color:var(--gold)}
.a5 .hero h1 small{display:block;font-size:.44em;font-weight:700;letter-spacing:.3em;margin-top:10px;color:var(--ice)}
.a5 .hero .tagline{margin:0 0 10px;font-size:clamp(17px,2.2vw,21px);font-weight:500;max-width:24em}
.a5 .hero .story{margin:0 0 30px;color:var(--ice);font-size:clamp(15px,1.9vw,17px);max-width:26em}
.a5 .hero .when{font-size:14px;color:var(--muted);margin:0 0 26px}
.a5 .btns{display:flex;gap:12px;flex-wrap:wrap}
.a5 .btn{display:inline-block;text-decoration:none;font-weight:700;font-size:16px;line-height:1;
  padding:15px 26px;border-radius:999px;border:1px solid var(--gold);color:var(--gold);
  background:rgba(2,4,11,.35);transition:background .2s,color .2s;}
.a5 .btn.primary{background:var(--gold);color:#1b1404}
.a5 .btn:hover{background:var(--gold);color:#1b1404}
.a5 .btn.primary:hover{background:#f1cb78}
.a5 section.block{padding:112px 0 0}
.a5 .block h2{margin:0 0 10px;font-weight:900;line-height:1.35;
  font-size:clamp(26px,3.8vw,38px);letter-spacing:.28em;}
.a5 .block .sub{margin:0 0 30px;color:var(--ice);font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:.06em}
.a5 .block .lead{margin:0 0 32px;color:var(--ice);max-width:34em}
.a5 .prose p{margin:0 0 16px;max-width:34em;font-size:17px}
.a5 .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 16px}
@media (max-width:720px){.a5 .stats{grid-template-columns:repeat(2,1fr)}}
.a5 .stat .v{font-family:var(--display);font-weight:900;font-size:clamp(38px,4.6vw,58px);line-height:1;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.a5 .stat .k{color:var(--ice);font-size:15px;margin-top:6px}
.a5 .showroom{position:relative;margin-top:40px;
  background:radial-gradient(60% 60% at 50% 58%, rgba(2,4,11,.62), rgba(2,4,11,.25) 70%, transparent);}
.a5 .showroom-head{padding-bottom:6px}
.a5 .stage{position:relative;height:min(72vh,640px);min-height:400px}
.a5 .stage canvas{width:100%;height:100%;touch-action:pan-y;cursor:grab;transition:opacity .18s ease}
.a5 .stage canvas:active{cursor:grabbing}
.a5 .stage canvas.swap{opacity:0}
.a5 .car-label{position:absolute;left:clamp(20px,4vw,48px);top:24px;pointer-events:none}
.a5 .car-label .name{font-weight:900;font-size:clamp(22px,3.4vw,32px);line-height:1.2;color:var(--accent);transition:color .2s}
.a5 .car-label .base{color:var(--ice);font-size:14px}
.a5 .showroom{--accent:var(--azure)}
.a5 .showroom[data-car="b"]{--accent:var(--gold)}
.a5 .hint{position:absolute;left:50%;top:24px;transform:translateX(-50%);font-size:13px;color:var(--ice);white-space:nowrap;pointer-events:none;transition:opacity .4s}
.a5 .hint.gone{opacity:0}
.a5 .status{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:var(--ice);font-size:15px;pointer-events:none;padding:20px}
.a5 .status[hidden]{display:none}
.a5 .dial{position:absolute;left:50%;bottom:84px;transform:translateX(-50%);width:min(280px,60%);height:2px;background:var(--line);border-radius:2px;overflow:hidden;pointer-events:none}
.a5 .dial i{position:absolute;top:0;height:100%;width:12%;background:var(--accent);border-radius:2px}
.a5 .dock{position:absolute;left:0;right:0;bottom:20px;display:flex;justify-content:center;padding:0 16px}
.a5 .tools{position:absolute;right:clamp(16px,4vw,48px);top:22px;display:flex;gap:8px}
.a5 .seg{display:inline-flex;padding:4px;border-radius:999px;background:rgba(7,22,51,.82);border:1px solid var(--line)}
.a5 .seg button{font:inherit;font-weight:700;font-size:15px;color:var(--ice);background:none;border:0;padding:10px 20px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.a5 .seg button[aria-pressed="true"][data-car="a"]{background:var(--azure);color:#fff}
.a5 .seg button[aria-pressed="true"][data-car="b"]{background:var(--gold);color:#1b1404}
.a5 .tool{font:inherit;font-size:14px;color:var(--ink);background:rgba(7,22,51,.82);border:1px solid var(--line);border-radius:999px;padding:10px 16px;cursor:pointer}
.a5 .tool[aria-pressed="false"]{color:var(--muted)}
@media (max-width:720px){.a5 .hint{top:auto;bottom:100px}
.a5 .dial{bottom:80px}
.a5 .tool{font-size:13px;padding:8px 12px}
.a5 .tools{flex-direction:column;align-items:flex-end}}
.a5 .gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:12px;grid-auto-flow:dense}
.a5 .gallery .big{grid-column:span 2;grid-row:span 2}
.a5 .gallery .wide{grid-column:span 2}
@media (max-width:720px){.a5 .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px;gap:8px}}
.a5 .tile{position:relative;margin:0;padding:0;border:1px solid var(--line);border-radius:6px;overflow:hidden;cursor:zoom-in;
  background:radial-gradient(circle at 50% 62%, rgba(46,139,255,.22), rgba(7,22,51,.7) 62%, rgba(2,4,11,.8));
  font:inherit;color:inherit;text-align:left;width:100%;height:100%;}
.a5 .tile img{position:absolute;inset:10px 10px 34px;width:calc(100% - 20px);height:calc(100% - 44px);object-fit:contain;transition:transform .35s ease}
.a5 .tile:hover img,.a5 .tile:focus-visible img{transform:scale(1.04)}
.a5 .tile .cap{position:absolute;left:12px;right:12px;bottom:9px;font-size:13px;color:var(--ice);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.a5 .tile .cap b{color:var(--gold);margin-right:6px}
.a5 .tile[data-car="b"] .cap b{color:var(--azure)}
.a5 .lightbox{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.68);padding:24px}
.a5 .lightbox.open{display:flex}
.a5 .lightbox figure{margin:0;max-width:min(1200px,100%);width:100%}
.a5 .lightbox img{width:100%;max-height:78vh;object-fit:contain}
.a5 .lightbox figcaption{text-align:center;color:var(--ice);margin-top:12px;font-size:15px}
.a5 .lb-btn{position:absolute;font:inherit;font-size:15px;color:var(--ink);background:rgba(7,22,51,.85);border:1px solid var(--line);border-radius:999px;padding:10px 16px;cursor:pointer}
.a5 .lb-close{top:calc(16px + env(safe-area-inset-top,0px));right:16px}
.a5 .lb-prev{left:16px;top:50%;transform:translateY(-50%)}
.a5 .lb-next{right:16px;top:50%;transform:translateY(-50%)}
@media (max-width:720px){.a5 .lb-prev,.a5 .lb-next{top:auto;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:none}}
.a5 .rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.a5 .reward{padding:26px 26px 22px;border-left:3px solid var(--gold);background:linear-gradient(90deg,rgba(230,184,92,.12),rgba(2,4,11,.5) 75%)}
.a5 .reward.az{border-left-color:var(--azure);background:linear-gradient(90deg,rgba(46,139,255,.14),rgba(2,4,11,.5) 75%)}
.a5 .reward .n{font-family:var(--display);font-weight:900;font-size:72px;line-height:1}
.a5 .reward .n small{font-family:var(--body);font-size:17px;font-weight:700;margin-left:6px}
.a5 .reward p{margin:8px 0 0;color:var(--ice);font-size:16px}
.a5 .info{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:end;padding:34px;border:1px solid var(--line);border-radius:8px;background:rgba(2,4,11,.62)}
@media (max-width:820px){.a5 .info{grid-template-columns:1fr;padding:24px}}
.a5 .info h3{margin:0 0 6px;font-size:clamp(20px,2.6vw,26px);line-height:1.45;font-weight:900}
.a5 .info .note{margin:0 0 14px;color:var(--gold);font-weight:700}
.a5 .info ul{margin:0;padding-left:1.2em;color:var(--ice)}
.a5 .info li{margin:4px 0}
.a5 .timeline{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.a5 .timeline li{position:relative;padding:4px 0 26px 28px}
.a5 .timeline li::before{content:"";position:absolute;left:-5px;top:12px;width:9px;height:9px;border-radius:50%;background:var(--void);border:2px solid var(--gold)}
.a5 .timeline .when{font-family:var(--display);font-weight:700;font-size:22px;color:var(--gold)}
.a5 .timeline .what{font-weight:700;font-size:19px}
.a5 .timeline .detail{color:var(--ice);font-size:15px}
.a5 .timeline li.now::before{background:var(--gold)}
.a5 .timeline li.now .what::after{content:"進行中";display:inline-block;margin-left:10px;padding:3px 8px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.2;vertical-align:middle;background:var(--gold);color:#1b1404}
.a5 .timeline li.past{opacity:.45}
.a5 .block .lead-tight{margin-bottom:8px}
.a5 .ticket{margin:4px 0 12px;font-weight:900;font-size:clamp(23px,4.6vw,44px);line-height:1.3;color:var(--gold)}
.a5 .countdown{display:flex;gap:clamp(14px,4vw,44px);flex-wrap:wrap}
.a5 .countdown div{min-width:0}
@media (max-width:720px){.a5 .countdown b{font-size:46px}}
.a5 .countdown{flex-wrap:nowrap}
.a5 .countdown b{display:block;font-family:var(--display);font-weight:900;font-size:clamp(54px,9vw,96px);line-height:1;font-variant-numeric:tabular-nums}
.a5 .countdown span{color:var(--ice);font-size:14px}
.a5 .thanks{list-style:none;margin:0;padding:0}
.a5 .thanks li{font-size:clamp(17px,2.2vw,20px);margin:0 0 10px}
.a5 .thanks li:last-child{color:var(--gold);font-weight:700;margin-top:18px}
.a5 footer{padding:120px 0 56px;color:var(--muted);font-size:13px}
@media (prefers-reduced-motion:reduce){.a5 .stage canvas,.a5 .tile img{transition:none}}
.a5 .intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.a5 .halves{display:flex;justify-content:center;gap:4px}
.a5 .half{width:min(46%,300px);height:auto;will-change:transform;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}
@media (max-width:720px){.a5 .intro-grid{grid-template-columns:1fr}
.a5 .half{width:min(44%,220px)}}
.a5 .film-wrap{padding-top:120px}
.a5 .film{position:relative;aspect-ratio:16/9;border:1px solid var(--line);border-radius:6px;overflow:hidden;
  background:radial-gradient(70% 80% at 50% 60%, rgba(46,139,255,.16), rgba(2,4,11,.82))}
.a5 .film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.a5 .film-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:6px;color:var(--ice)}
.a5 .film-empty span{font-weight:900;font-size:clamp(18px,2.6vw,26px);letter-spacing:.2em}
.a5 .film-empty small{color:var(--muted);font-size:13px}
.a5 .film.has-video .film-empty{display:none}
.a5 .page{overflow-x:hidden;overflow-x:clip}
.a5 .duo-inner{position:relative;display:grid;gap:14px}
.a5 .duo-row{display:flex;align-items:center;gap:clamp(10px,1.6vw,22px);will-change:transform}
.a5 .duo-row.top{justify-content:center;margin-right:8%}
.a5 .duo-row.bottom{justify-content:center;margin-left:8%}
.a5 .duo-word{flex:none;font-family:var(--display);font-weight:900;line-height:.9;font-size:clamp(76px,12.5vw,190px);color:#fff;
  transform:skewX(-9deg);text-shadow:0 0 18px rgba(46,139,255,.85),0 0 46px rgba(46,139,255,.55),0 0 90px rgba(46,139,255,.35)}
.a5 .duo-word.right{text-shadow:0 0 18px rgba(230,184,92,.8),0 0 46px rgba(230,184,92,.5),0 0 90px rgba(230,184,92,.3)}
.a5 .para{flex:none;width:clamp(170px,32vw,420px);margin:0;aspect-ratio:16/10;clip-path:polygon(17% 0,100% 0,83% 100%,0 100%);background:var(--abyss)}
.a5 .para + .para{margin-left:calc(-1 * clamp(170px,32vw,420px) * .12)}
.a5 .para img{width:100%;height:100%;object-fit:cover}
.a5 .duo-float{position:absolute;left:50%;top:50%;margin:0;transform:translate(-50%,-50%);z-index:2;white-space:nowrap;
  font-weight:900;font-size:clamp(22px,3.4vw,44px);letter-spacing:.3em;color:#fff;
  text-shadow:0 0 14px rgba(2,4,11,.95),0 0 30px rgba(46,139,255,.6);animation:float 5s ease-in-out infinite}
@keyframes float{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 10px))}}
@media (max-width:720px){.a5 .duo-word{font-size:clamp(48px,14vw,76px)}
.a5 .para{width:36vw}
.a5 .para + .para{margin-left:calc(-36vw * .12)}
.a5 .duo-row.top{margin-right:4%}
.a5 .duo-row.bottom{margin-left:4%}}
@media (prefers-reduced-motion:reduce){.a5 .duo-float{animation:none}}
.a5 .showcase{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center;padding:34px;
  border:1px solid var(--line);border-radius:10px;background:rgba(2,4,11,.62)}
@media (max-width:900px){.a5 .showcase{grid-template-columns:1fr;padding:20px}}
.a5 .orbit{position:relative;height:420px;overflow:hidden;touch-action:pan-y;cursor:grab}
.a5 .orbit:active{cursor:grabbing}
@media (max-width:720px){.a5 .orbit{height:300px}}
.a5 .orbit-core{position:absolute;left:50%;top:50%;width:150px;height:150px;transform:translate(-50%,-50%);z-index:100;pointer-events:none;
  background:radial-gradient(circle, rgba(255,240,205,.95) 0, rgba(230,184,92,.55) 14%, rgba(46,139,255,.18) 42%, transparent 70%)}
.a5 .orbit-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(46,139,255,.35);border-radius:50%;z-index:99;pointer-events:none}
.a5 .orb{position:absolute;left:50%;top:50%;width:min(340px,70%);transition:border-color .6s ease,box-shadow .6s ease,filter .6s ease;filter:brightness(.62) saturate(.8);aspect-ratio:16/10;padding:0;margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;cursor:pointer;
  background:radial-gradient(circle at 50% 62%, rgba(46,139,255,.28), rgba(7,22,51,.95) 65%);will-change:transform,opacity}
.a5 .orb img{width:100%;height:100%;object-fit:cover}
.a5 .orb.front{filter:none;border-color:var(--azure);box-shadow:0 0 0 1px var(--azure),0 0 34px rgba(46,139,255,.4)}
.a5 .orb[data-car="b"].front{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 0 34px rgba(230,184,92,.35)}
.a5 .orbit-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.a5 .orbit-cap{margin:0;text-align:center;color:var(--ice);font-size:14px;flex:1}
.a5 .block .info-title{margin:0 0 14px;font-size:clamp(22px,2.8vw,32px);line-height:1.4;font-weight:900;letter-spacing:.02em}
.a5 .chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.a5 .chips span{font-size:13px;font-weight:700;padding:5px 12px;border-radius:999px;border:1px solid rgba(46,139,255,.5);background:rgba(46,139,255,.12);color:var(--ice)}
.a5 .info-desc{margin:0 0 14px;color:var(--ice)}
.a5 .spark{list-style:none;margin:0 0 24px;padding:0}
.a5 .spark li{position:relative;padding-left:24px;margin:7px 0;color:var(--ink)}
.a5 .spark li::before{content:"✦";position:absolute;left:0;top:0;color:var(--gold)}
.a5 .sale{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media (max-width:820px){.a5 .sale{grid-template-columns:1fr;gap:24px}}
.a5 .facts{margin:0 0 26px;display:grid;gap:12px}
.a5 .facts div{display:grid;grid-template-columns:5.5em 1fr;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.a5 .facts dt{color:var(--gold);font-weight:700}
.a5 .facts dd{margin:0}
.a5 .notes-title{margin:0 0 8px;font-size:17px;letter-spacing:.2em}
.a5 .notes{list-style:none;margin:0;padding:0;color:var(--ice);font-size:14px}
.a5 .notes li{margin:4px 0}
.a5 .notes li::before{content:"＊"}
.a5 .prize-viewport{overflow:hidden;padding:30px 0 10px}
.a5 .prize-row{display:flex;gap:clamp(18px,3vw,40px);width:max-content;padding:0 20px;will-change:transform}
.a5 .prize{position:relative;width:clamp(190px,22vw,260px);flex:none;perspective:700px}
.a5 .prize .tilt{position:relative}
.a5 .prize .frame{position:relative;z-index:1;display:block;width:66%;margin:0 auto;will-change:transform;filter:drop-shadow(0 12px 20px rgba(0,0,0,.55))}
.a5 .prize .car{position:relative;z-index:2;display:block;width:104%;margin:-11% 0 0 -2%;will-change:transform;filter:drop-shadow(0 14px 18px rgba(0,0,0,.6))}
@media (prefers-reduced-motion:reduce){.a5 .prize-viewport{overflow-x:auto}}
.a5 .people{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.a5 .person{padding:24px;border:1px solid var(--line);border-radius:10px;background:rgba(2,4,11,.66);display:flex;flex-direction:column;align-items:center;text-align:center}
.a5 .avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid var(--gold);background:var(--abyss);
  display:grid;place-items:center;font-family:var(--display);font-weight:900;font-size:34px;color:var(--gold)}
.a5 .person h3{margin:14px 0 8px;font-size:19px}
.a5 .person hr{width:40px;border:0;border-top:1px solid var(--line);margin:0 0 10px}
.a5 .person p{margin:0 0 14px;color:var(--ice);font-size:14px;flex:1}
.a5 .links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.a5 .links a{font-size:13px;font-weight:700;text-decoration:none;padding:6px 14px;border-radius:999px;border:1px solid rgba(46,139,255,.5);color:var(--ice)}
.a5 .links a:hover{background:rgba(46,139,255,.2)}
@media (prefers-reduced-motion:reduce){.a5 .duo-float{animation:none}
.a5 .from-left,.a5 .from-right{opacity:1;transform:none;transition:none}
.a5 .duo-word.from-left,.a5 .duo-word.from-right{transform:skewX(-9deg)}}
.a5 .arrow{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%}
.a5 .credit{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(230,184,92,.5)}
.a5 .credit:hover{border-bottom-color:var(--gold)}
.a5 .lightbox{display:flex !important;visibility:hidden;opacity:0;transition:opacity .32s ease,visibility 0s linear .32s}
.a5 .lightbox.open{visibility:visible;opacity:1;transition:opacity .32s ease}
.a5 .lightbox figure{transform:scale(.92);transition:transform .38s cubic-bezier(.2,.7,.2,1)}
.a5 .lightbox.open figure{transform:scale(1)}
.a5 .lightbox img{transition:opacity .2s ease}
.a5 .lightbox img.swap{opacity:0}
@media (prefers-reduced-motion:reduce){.a5 .lightbox,.a5 .lightbox figure,.a5 .lightbox img{transition:none}}
@media (max-width:720px){.a5 .people.compact{grid-template-columns:1fr 1fr;gap:10px}
.a5 .people.compact .person{padding:16px 8px}
.a5 .people.compact .avatar{width:60px;height:60px;font-size:24px}
.a5 .people.compact .person h3{font-size:16px;margin:10px 0 6px}
.a5 .people.compact .person p{font-size:13px;margin-bottom:10px}
.a5 .people.compact .links a{font-size:12px;padding:5px 10px}}
.a5 .nw{white-space:nowrap}
/* 放大檢視放在頁面外層，才能蓋過主題的固定頁首 */
.a5.a5-overlay{position:static;clip-path:none;isolation:auto;background:none}
.a5 .lightbox{z-index:100000}
.a5 .credit:hover{color:var(--gold)}
.a5 .film video{background:#02040B}

/* 3D 展示下方備註 */
.a5 .stage-note{margin:0;padding:8px 20px 0;text-align:center;font-size:13px;color:var(--muted)}
/* 活動開始前：只顯示星空與倒數 */
.a5.a5-teaser .hero{min-height:calc(100svh - 80px)}
.a5 .teaser-cd-title{margin:28px 0 12px;font-weight:900;font-size:clamp(20px,2.6vw,28px);letter-spacing:.28em}
.a5 .teaser-soon{margin:26px 0 0;font-size:clamp(20px,2.6vw,28px);font-weight:900;color:var(--gold);letter-spacing:.2em}

/* 折扣碼提示 */
.a5 .coupon-line{margin:0 0 28px;font-size:clamp(18px,2.4vw,24px);font-weight:700;color:var(--ice)}
.a5 .coupon-line b{display:inline-block;margin:0 4px;padding:2px 14px;border:1px dashed var(--gold);border-radius:8px;color:var(--gold);font-family:var(--display);font-size:1.3em;letter-spacing:.08em;line-height:1.3}

/* 全期間加碼 */
.a5 .coupon-line{margin-bottom:12px}
.a5 .bonus-line{margin:0 0 30px;font-size:clamp(16px,2vw,20px);font-weight:700;color:var(--ink)}
.a5 .bonus-line span{display:inline-block;margin-right:10px;padding:3px 10px;border-radius:999px;background:var(--azure);color:#fff;font-size:.72em;letter-spacing:.08em;vertical-align:middle;text-shadow:none}

/* 結尾感謝：捲動時一句一句浮現（同去年效果），與頁尾保留距離 */
.a5 .page{padding-bottom:clamp(90px,14vh,160px)}
.a5 .thanks-scroll{position:relative;margin-top:90px}
.a5 .thanks-stage{height:clamp(160px,24vh,220px);display:grid;place-items:center;padding:0 20px}
.a5 .thanks-scroll .thanks{position:relative;width:min(900px,100%);height:5em;margin:0;padding:0;list-style:none}
.a5 .thanks-scroll .thanks li{position:absolute;left:0;right:0;top:50%;margin:0;text-align:center;
  font-size:clamp(19px,2.6vw,30px);font-weight:900;line-height:1.5;letter-spacing:.04em;color:var(--ink);
  opacity:0;transform:translateY(calc(-50% + 34px));transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.a5 .thanks-scroll .thanks li.past{opacity:0;transform:translateY(calc(-50% - 34px))}
.a5 .thanks-scroll .thanks li.on{opacity:1;transform:translateY(-50%)}
.a5 .thanks-scroll .thanks li:last-child{color:var(--gold)}
@media (prefers-reduced-motion:reduce){
  .a5 .thanks-scroll{height:auto;margin-top:100px}
  .a5 .thanks-stage{position:static;height:auto;display:block}
  .a5 .thanks-scroll .thanks{height:auto;width:min(1080px,100%);margin:0 auto}
  .a5 .thanks-scroll .thanks li{position:static;opacity:1;transform:none;text-align:left;font-size:clamp(17px,2.2vw,20px);font-weight:400;margin:0 0 10px;transition:none}
}

/* IG 追蹤加碼 */
.a5 .ig-card{display:flex;align-items:center;gap:18px;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:rgba(2,4,11,.66);max-width:640px}
.a5 .ig-avatar{width:64px;height:64px;border-radius:50%;border:2px solid var(--azure);flex:none}
.a5 .ig-who{flex:1;min-width:0}
.a5 .ig-who b{display:block;font-size:19px;color:var(--ink)}
.a5 .ig-who span{font-size:14px;color:var(--ice)}
.a5 .ig-follow{flex:none}
.a5 .ig-status{margin:14px 0 0;font-size:15px;color:var(--ice)}
.a5 .ig-status b{color:var(--gold)}
.a5 .ig-status a{color:var(--ice);text-decoration:underline;font-size:13px;margin-left:8px}
.a5 .ig-rule{margin:14px 0 0;font-size:13px;color:var(--muted)}
@media (max-width:560px){.a5 .ig-card{flex-wrap:wrap}.a5 .ig-follow{width:100%;text-align:center}}
/* 彈出視窗 */
.a5 .a5-modal{position:fixed;inset:0;z-index:100001;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.6);opacity:0;transition:opacity .25s ease}
.a5 .a5-modal.show{opacity:1}
.a5 .a5-modal-box{position:relative;width:min(440px,100%);padding:30px 26px 24px;border-radius:16px;border:1px solid var(--line);
  background:radial-gradient(120% 120% at 80% 0%, var(--abyss), var(--void) 70%);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.6);
  transform:translateY(12px) scale(.97);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.a5 .a5-modal.show .a5-modal-box{transform:none}
.a5 .a5-modal h3{margin:0 0 10px;font-size:21px;font-weight:900;color:var(--gold)}
.a5 .a5-modal p{margin:0 0 16px;font-size:15px;color:var(--ice);line-height:1.7}
.a5 .a5-modal .btns{gap:10px}
.a5 .a5-modal .btn{font-size:15px;padding:12px 20px}
.a5 .a5-modal-x{position:absolute;top:10px;right:12px;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:16px;cursor:pointer}
.a5 .ig-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background:rgba(2,4,11,.6);padding:0 12px;margin:0 0 6px}
.a5 .ig-input span{color:var(--muted);font-weight:700}
.a5 .ig-input input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:17px;padding:12px 6px;outline:none;box-shadow:none}
.a5 .ig-input:focus-within{border-color:var(--azure)}
.a5 .ig-err{min-height:1.4em;margin:0 0 8px;font-size:13px;color:#ff8a8a}
.a5 .ig-fine{font-size:13px}
.a5 .ig-fine a{color:var(--ice);text-decoration:underline}
@media (prefers-reduced-motion:reduce){.a5 .a5-modal,.a5 .a5-modal-box{transition:none}}

.a5 .reward .n small.pre{margin:0 6px 0 0}

/* 取得方式：整句同一段文字（數字用 Big Shoulders，中文自動用 Noto Sans TC） */
.a5 .reward .n{font-size:clamp(44px,6vw,66px);letter-spacing:.02em}
