:root{--ink:#0b1417;--paper:#eee5d0;--gold:#d2b47e;--muted:#a7aaa3;--cinnabar:#a74535;color-scheme:dark;background:var(--ink)}
*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--paper);font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif}a{color:inherit}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}html{scroll-behavior:smooth;scroll-padding-top:96px}.skip-link{position:fixed;top:8px;left:8px;z-index:200;transform:translateY(-180%);padding:10px;background:#fff;color:#122b3d}.skip-link:focus{transform:none}[hidden]{display:none!important}
.reunion-hero{position:relative;isolation:isolate;overflow:hidden;min-height:850px;text-align:center;border-bottom:1px solid #d2b47e25;background:radial-gradient(ellipse at 50% 12%,#23333670,transparent 58%),#0b1417}.hero-art{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.moon-halo{position:absolute;width:540px;height:540px;border-radius:50%;top:-140px;left:calc(50% - 270px);background:radial-gradient(circle,#e4cf9820,transparent 68%);filter:blur(16px)}.celestial-ring{position:absolute;width:920px;height:920px;top:-34px;left:calc(50% - 460px);border:1px solid #d2b47e13;border-radius:50%;background:repeating-conic-gradient(from 0deg,transparent 0deg 9.85deg,#d2b47e27 9.85deg 10deg);mask-image:radial-gradient(transparent 68%,#000 68% 70%,transparent 70%);animation:celestial-turn 180s linear infinite}.ring-inner{width:820px;height:820px;left:calc(50% - 410px);top:16px;border:1px solid #d2b47e0d;animation-direction:reverse;background:repeating-conic-gradient(transparent 0deg 29.85deg,#d2b47e40 29.85deg 30deg)}.ink-landscape{position:absolute;left:0;right:0;bottom:-88px;height:660px;background:url('./ink-beijing.svg') center bottom/cover no-repeat;opacity:.62}.mist{position:absolute;inset:auto -30% 25px;height:175px;background:radial-gradient(ellipse at 50% 80%,#64767118,transparent 60%);filter:blur(14px);animation:mist-drift 24s ease-in-out infinite alternate}.mist-two{bottom:140px;opacity:.5;animation-delay:-12s}.gold-dust{position:absolute;inset:0}.gold-dust i{position:absolute;left:calc(3% + var(--i)*5.4%);top:calc(28% + mod(var(--i)*13,55)*1%);width:2px;height:2px;border-radius:50%;background:#d8bc89;box-shadow:0 0 9px #e6c27c;opacity:0;animation:ember 8s linear infinite;animation-delay:calc(var(--i)*-.7s)}.hero-margin{position:absolute;top:120px;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;writing-mode:vertical-rl;letter-spacing:.38em;color:#d2b47e60;font-size:11px}.hero-margin-left{left:34px}.hero-margin-right{right:34px}.reunion-content{position:relative;max-width:1180px;padding:58px 24px 92px;margin:auto}.event-kicker{display:flex;align-items:center;justify-content:center;gap:16px;font-size:12px;letter-spacing:.26em;color:var(--gold)}.event-kicker b{font-weight:500;color:#ede1ca}.kicker-line{width:40px;height:1px;background:linear-gradient(90deg,transparent,#bd986c)}.kicker-line:last-child{transform:rotate(180deg)}.event-series{font-size:12px;letter-spacing:.55em;margin-top:16px;color:#d4c9b1}.reunion-content h1{display:flex;justify-content:center;gap:.14em;align-items:baseline;margin:25px 0 12px;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:clamp(72px,8.8vw,124px);font-weight:500;letter-spacing:.08em;line-height:1.3;text-shadow:0 3px 25px #0004}.reunion-content h1 em{font-style:normal;color:var(--gold);background:linear-gradient(120deg,#f4e6c6,#ae824f 72%,#e7c989);background-clip:text;-webkit-text-fill-color:transparent}.coming-label{display:flex;justify-content:center;align-items:center;gap:16px;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:16px;letter-spacing:.18em;color:#beb8a8}.seal{display:inline-flex;align-items:center;justify-content:center;width:40px;height:42px;border:1px solid #bc634e;border-radius:3px;color:#e7bbaa;background:#8d342330;line-height:1.2;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:15px;letter-spacing:3px;transform:rotate(-5deg);box-shadow:inset 0 0 0 3px #0b1417,inset 0 0 0 4px #bc634e44}.event-date{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:28px;font-size:26px;letter-spacing:.13em;font-weight:400;font-variant-numeric:tabular-nums;color:#ede4d1}.date-dash{color:#8c795e;font-size:20px}.event-location{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:10px;color:#d0c4ae;font-size:12px;letter-spacing:.22em}.event-location svg{width:14px;height:14px;stroke:var(--gold);stroke-width:1.5}.countdown-heading{display:flex;align-items:center;justify-content:center;gap:18px;margin:32px 0 20px;font-size:10px;color:#baa57e;letter-spacing:.2em}.countdown-heading>span:first-child,.countdown-heading>span:last-child{width:42px;height:1px;background:#d2b47e30}.reunion-clock{display:flex;justify-content:center;align-items:flex-start;gap:18px;perspective:1200px}.clock-digits{display:flex;gap:5px}.flip-digit{position:relative;display:block;width:66px;height:98px;border:1px solid #bc9b5c40;border-radius:7px;background:linear-gradient(180deg,#26312e,#161e1c 49.8%,#222c28 50%,#1a2220);box-shadow:0 12px 25px #0005,inset 0 1px #ebd4a322;font-size:72px;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-weight:400;font-variant-numeric:tabular-nums;line-height:96px;color:#f3e3c2;text-shadow:0 0 25px #e0bd5c18}.flip-digit::after{content:'';position:absolute;left:0;right:0;top:50%;height:2px;background:#060d0be6;box-shadow:0 1px #f1d69b0c;z-index:5}.digit-base{display:block}.flip-digit{perspective:500px}.digit-reveal{position:absolute;top:0;left:0;right:0;height:50%;overflow:hidden;background:#232e29;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;z-index:1}.digit-top,.digit-bottom{position:absolute;left:0;right:0;height:50%;overflow:hidden;backface-visibility:hidden;background:#232e29;z-index:3}.digit-top{top:0;transform-origin:bottom;animation:flip-top .28s ease-in forwards;border-radius:6px 6px 0 0}.digit-bottom{bottom:0;transform-origin:top;transform:rotateX(90deg);animation:flip-bottom .28s .28s ease-out forwards;border-radius:0 0 6px 6px;background:#1c2621}.digit-bottom>span{display:block;transform:translateY(-50%);height:200%}.clock-label{font-size:10px;letter-spacing:.18em;color:#b9ab91;margin-top:14px}.clock-colon{display:flex;flex-direction:column;gap:15px;padding-top:30px}.clock-colon i{display:block;width:4px;height:4px;border-radius:50%;background:#ad8a52;box-shadow:0 0 8px #d1a65b33}.clock-note{font-size:10px;color:#a4a69b;letter-spacing:.04em;margin:16px 0 23px}.gold-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:52px;padding:13px 26px;background:linear-gradient(115deg,#e7d1a4,#c4a167);color:#20271f;border:1px solid #dcc393;text-decoration:none;font-size:13px;font-weight:650;letter-spacing:.08em;border-radius:2px;box-shadow:0 4px 30px #c79a4a0d;transition:transform .2s,box-shadow .2s}.gold-button:hover{transform:translateY(-2px);box-shadow:0 6px 26px #d6b16d30}.gold-button>span:last-child{font-size:21px;font-weight:400}.hero-bottom{position:absolute;bottom:24px;left:44px;right:44px;display:flex;align-items:center;justify-content:space-between;color:#b79b6b70;font-size:8px;letter-spacing:.3em}.scroll-line{position:absolute;left:50%;bottom:-10px;width:1px;height:35px;background:linear-gradient(#ccb28390,transparent)}.invitation{max-width:1132px;margin:auto;padding:100px 36px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;position:relative}.section-number{color:var(--gold);font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:14px}.section-number span{color:#8f998f;letter-spacing:.2em;font-size:9px}.invitation h2,.recap h2{font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:42px;line-height:1.5;letter-spacing:.08em;white-space:pre-line;margin:24px 0;font-weight:500}.invitation-intro p,.recap-copy p{font-size:13px;line-height:1.9;color:#a7afa6}.subscription-panel{padding:30px;border:1px solid #c3a57336;background:linear-gradient(145deg,#23302b66,#17201b22);box-shadow:0 10px 60px #0002;position:relative}.subscription-panel::before,.subscription-panel::after{content:'';position:absolute;width:12px;height:12px;border-color:#c7a574;border-style:solid;pointer-events:none}.subscription-panel::before{top:-1px;left:-1px;border-width:1px 0 0 1px}.subscription-panel::after{bottom:-1px;right:-1px;border-width:0 1px 1px 0}.form-heading{display:flex;align-items:center;gap:10px;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:20px;margin-bottom:23px}.small-sun{color:var(--gold);font-size:23px}.email-label{display:block;font-size:12px;color:#cbc6b5;margin-bottom:10px}.subscription-panel input[type=email]{width:100%;padding:15px 14px;border:1px solid #a4ad984d;border-radius:2px;background:#09121099;color:#f2e6ce;box-shadow:none;font-size:16px;outline-offset:2px}.subscription-panel input[type=email]::placeholder{color:#7e8a7e}.consent-label{display:flex;align-items:flex-start;gap:10px;margin:16px 0 20px;color:#b6beb0;font-size:11px;line-height:1.8;cursor:pointer}.consent-label input{margin:4px 0 0;flex:0 0 15px;width:15px;height:15px;accent-color:#d7b879}.submit-button{width:100%;justify-content:space-between}.privacy-note{font-size:10px;line-height:1.9;color:#98a392;margin:16px 0 0;overflow-wrap:anywhere}.honey-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.subscription-status{line-height:1.8;font-size:13px;color:#f0c3a2}.subscription-status:empty{display:none}.subscription-status:not(:empty){margin-top:18px}.subscription-status.is-success{color:#e8d3ac;font-size:16px;padding:22px 0}.recap{max-width:1180px;margin:0 auto;padding:0 36px 100px}.recap-link{display:grid;grid-template-columns:1fr 1fr;text-decoration:none;border:1px solid #c2a16d2b;transition:border-color .3s;background:#131d1c}.recap-link:hover{border-color:#c2a16d80}.recap-art{position:relative;min-height:340px;overflow:hidden;background:#1f312f}.recap-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#17211f15,#131d1c66),linear-gradient(0deg,#090f0ee0,transparent 80%)}.recap-art img{width:100%;height:100%;object-fit:cover;position:absolute;filter:saturate(.65);transition:transform .7s}.recap-link:hover img{transform:scale(1.03)}.recap-art>span{position:absolute;bottom:20px;left:30px;z-index:1;font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:88px;color:#ebd4adcb;letter-spacing:-.06em}.recap-copy{padding:38px}.recap h2{font-size:30px;line-height:1.5;margin:20px 0 16px}.recap-cta{display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:12px;color:#d8b67e;border-top:1px solid #c2a16d30;padding-top:20px;margin-top:25px}.recap-cta>span:last-child{font-size:25px}.spotlight-coming-soon .site-footer{font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif}
html[lang=en] .reunion-content h1{font-family:'PingFang SC','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC','Hiragino Kaku Gothic ProN',Arial,sans-serif;font-size:86px;letter-spacing:-.025em;gap:.16em;line-height:1.5}html[lang=en] .invitation h2{letter-spacing:0}html[lang=ja] .reunion-content h1{font-size:90px;letter-spacing:0}html[lang=ja] .event-series{letter-spacing:.12em}
@keyframes celestial-turn{to{transform:rotate(360deg)}}@keyframes mist-drift{to{transform:translateX(12%)}}@keyframes ember{0%{transform:translateY(40px);opacity:0}30%,65%{opacity:.5}100%{transform:translateY(-90px);opacity:0}}@keyframes flip-top{to{transform:rotateX(-90deg)}}@keyframes flip-bottom{to{transform:rotateX(0)}}
@media(min-width:1600px){.reunion-hero{min-height:900px}.reunion-content{padding-top:72px}.reunion-content h1{font-size:136px}}
@media(max-width:900px){.hero-margin{display:none}.reunion-content{padding-top:50px}.reunion-hero{min-height:800px}.reunion-content h1{font-size:96px}.reunion-clock{gap:10px}.flip-digit{width:55px;height:84px;font-size:61px;line-height:82px}.clock-colon{padding-top:26px;gap:14px}.invitation{gap:32px;padding:72px 28px}.invitation h2{font-size:33px}.recap{padding:0 28px 72px}.recap-copy{padding:30px}.recap h2{font-size:26px}html[lang=en] .reunion-content h1{font-size:66px}html[lang=ja] .reunion-content h1{font-size:70px}}
@media(max-width:620px){.reunion-hero{min-height:735px}.reunion-content{padding:44px 14px 70px}.event-kicker{gap:10px;font-size:9px;letter-spacing:.2em}.kicker-line{width:23px}.event-series{font-size:10px;margin-top:15px}.reunion-content h1{font-size:75px;margin:30px 0 17px;gap:.04em;letter-spacing:.04em}.coming-label{font-size:12px;letter-spacing:.1em;gap:10px}.seal{width:32px;height:34px;font-size:12px}.event-date{font-size:21px;gap:10px;margin-top:29px;letter-spacing:.08em}.event-location{font-size:10px;margin-top:12px}.countdown-heading{font-size:9px;letter-spacing:.05em;margin:32px 0 20px;gap:10px}.countdown-heading>span:first-child,.countdown-heading>span:last-child{width:20px}.reunion-clock{gap:6px}.clock-digits{gap:2px}.flip-digit{width:31px;height:55px;font-size:38px;line-height:53px;border-radius:4px}.digit-top{border-radius:3px 3px 0 0}.digit-bottom{border-radius:0 0 3px 3px}.clock-colon{gap:9px;padding-top:17px}.clock-colon i{width:2px;height:2px}.clock-label{font-size:9px;letter-spacing:0;margin-top:11px}.clock-note{font-size:9px;max-width:290px;margin:16px auto 28px;line-height:1.7}.hero-subscribe{font-size:12px;min-height:50px;padding:12px 21px;gap:20px}.hero-bottom{left:20px;right:20px;font-size:7px;letter-spacing:.2em;bottom:22px}.ink-landscape{height:500px;bottom:-50px;left:-50%;right:-50%;opacity:.48}.celestial-ring{width:640px;height:640px;top:-10px;left:calc(50% - 320px)}.ring-inner{width:560px;height:560px;top:30px;left:calc(50% - 280px)}.invitation{grid-template-columns:1fr;gap:30px;padding:60px 22px}.invitation h2{font-size:36px;margin:20px 0 16px}.invitation-intro p{font-size:13px;max-width:310px}.subscription-panel{padding:25px 21px}.form-heading{font-size:19px}.consent-label{font-size:12px}.privacy-note{font-size:11px}.recap{padding:0 22px 60px}.recap-link{grid-template-columns:1fr}.recap-art{min-height:210px}.recap-art>span{font-size:72px;bottom:8px}.recap-copy{padding:28px}.recap h2{font-size:27px}.recap-cta{font-size:11px}.recap-copy p{font-size:12px}html[lang=en] .reunion-content h1{font-size:51px;flex-direction:column;align-items:center;gap:0;line-height:1.12;margin:25px 0 20px}html[lang=en] .coming-label{font-size:11px;letter-spacing:0}html[lang=ja] .reunion-content h1{font-size:47px;letter-spacing:0;margin:38px 0 28px}html[lang=ja] .reunion-hero{min-height:735px}html[lang=en] .reunion-hero{min-height:770px}}
@media(max-width:360px){.flip-digit{width:27px;font-size:34px}.reunion-clock{gap:5px}.reunion-content h1{font-size:67px}.event-date{font-size:19px}.event-kicker{letter-spacing:.12em}.hero-subscribe{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.gold-dust{display:none}.digit-top,.digit-bottom,.digit-reveal{display:none}}

/* Palace photograph and a consistent sans-serif hierarchy. */
.palace-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.78)}
.palace-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,16,19,.34),rgba(10,16,19,.34) 35%,rgba(10,16,19,.68) 75%,#0b1417),linear-gradient(90deg,#0b14172e,transparent 30%,transparent 70%,#0b14172e)}
.reunion-content h1{font-weight:650;letter-spacing:.08em;text-shadow:0 4px 32px #0005}
.event-series{font-weight:500}.coming-label{color:#ede5d7;text-shadow:0 2px 10px #0008}
.reunion-clock{margin-top:38px}.coming-details{font-size:clamp(24px,3.2vw,40px);font-weight:600;letter-spacing:.15em;line-height:1.6;color:#f0dfbd;margin:32px 0 0;text-shadow:0 2px 20px #0008}
.invitation h2,.recap h2{font-weight:600;letter-spacing:.025em}.form-heading{font-weight:600}
html[lang=en] .coming-details,html[lang=ja] .coming-details{letter-spacing:.02em}
@media(max-width:620px){.reunion-content{padding-bottom:90px}.reunion-clock{margin-top:32px}.coming-details{font-size:24px;letter-spacing:.06em;margin-top:30px}.palace-photo{object-position:60% center}html[lang=en] .coming-details{font-size:23px}html[lang=ja] .coming-details{font-size:26px}}
.reunion-content h1 em{background-image:linear-gradient(115deg,#fff0c9,#dec08a 70%,#f2dfb6)}

/* Fade the photograph into the same canvas as the player information. */
.spotlight-coming-soon .reunion-hero{min-height:0;border-bottom:0;background:var(--ink)}
.hero-art{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 48%,rgba(0,0,0,.97) 57%,rgba(0,0,0,.85) 66%,rgba(0,0,0,.62) 75%,rgba(0,0,0,.32) 84%,rgba(0,0,0,.08) 93%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 48%,rgba(0,0,0,.97) 57%,rgba(0,0,0,.85) 66%,rgba(0,0,0,.62) 75%,rgba(0,0,0,.32) 84%,rgba(0,0,0,.08) 93%,transparent 100%)}
.palace-shade{background:linear-gradient(180deg,#0b141752,#0b141757 35%,#0b141775 65%,#0b14179e),linear-gradient(90deg,#0b14172e,transparent 30%,transparent 70%,#0b14172e)}
.reunion-content{padding-bottom:120px}
.invitation{padding-top:20px;padding-bottom:92px}
.invitation-intro p,.recap-copy p{font-size:15px;line-height:1.9;color:#c3c7bd}
.invitation-intro .registration-note{font-size:13px;color:#a8b1a6;margin-top:20px}
.submit-button{gap:12px;letter-spacing:.02em;min-height:54px}
.submit-button [data-submit-label]{line-height:1.5;text-align:left}
.subscription-status{line-height:1.9}
@media(max-width:620px){.reunion-content{padding-bottom:94px}.invitation{padding-top:8px;padding-bottom:60px}.invitation h2{margin-top:0}.invitation-intro p{max-width:none;font-size:14px}.invitation-intro .registration-note{font-size:12px}.recap-copy p{font-size:14px}.form-heading{font-size:18px;line-height:1.5}.submit-button{font-size:12px}}
.email-label{font-size:14px}.consent-label{font-size:13px;line-height:1.8}.privacy-note{font-size:12px;line-height:1.8}
