/* 最终整合：紧凑成员档案、原双向横滚伙伴、页脚真实二维码。 */
@font-face{font-family:'Demo Noto';src:url('../assets/demo/noto-sans-sc-800.woff2') format('woff2');font-weight:800;font-display:swap}
button,a,[tabindex]{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
#members .sec-head,#story .sec-head,#partners .sec-head{margin-bottom:42px}
#members .sec-title{font-size:clamp(30px,3.8vw,46px);line-height:1.2}
#story .sec-title,#partners .sec-title,#acts .sec-title{font-size:clamp(36px,4.8vw,64px);line-height:1.2}
.member-group{display:block;max-width:1040px;margin:38px auto 0;padding:0}
.member-group+.member-group{padding-top:32px;margin-top:38px;border-top:1px solid var(--line)}
.member-group-head{display:flex;align-items:center;justify-content:space-between;padding:0 0 17px}
.member-group-head h3{font-size:25px;line-height:1.4;margin:4px 0 0}
.member-group-head .eyebrow{font-size:10px;color:#8da7bf;letter-spacing:2px}
.member-controls{position:static;margin:0;gap:9px}
.member-controls .arr{width:42px;height:42px}
.member-track{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;min-width:0;padding:4px 4px 10px;scroll-snap-type:x mandatory;scroll-padding-inline:4px;scrollbar-width:none}
.member-card{position:relative;display:grid;grid-template-columns:38% minmax(0,1fr);flex:0 0 400px;min-width:0;min-height:240px;height:auto;aspect-ratio:auto;border:1px solid #25445e;border-radius:14px;background:#0a1829;overflow:hidden;scroll-snap-align:start;isolation:isolate;transition:transform .25s,border-color .25s}
.member-card:hover,.member-card:focus{transform:translateY(-2px);border-color:#65bddc}
.member-card .member-portrait{position:relative;inset:auto;aspect-ratio:auto;height:auto;width:100%;border:0;border-radius:0;margin:0;background:#0b1827}
.member-portrait::before{display:none}
.member-portrait::after{position:absolute;inset:0;width:auto;height:auto;transform:none;background:linear-gradient(90deg,transparent 75%,#0a1829);pointer-events:none}
.member-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%;filter:saturate(.82)}
.member-serial{position:absolute;top:14px;left:13px;z-index:2;font-size:8px;letter-spacing:1.5px;color:#e0effa;text-shadow:0 1px 5px #000}
.member-light,.member-arrow{display:none}
.member-caption{position:relative;inset:auto;padding:19px 18px;align-self:center;min-width:0}
.member-caption>.member-role{font-size:10px;color:var(--cyan);letter-spacing:1px;line-height:1.6}
.member-caption h4{font-family:var(--disp);font-size:27px;font-weight:400;line-height:1.2;margin:10px 0}
.member-caption h4 span{display:block;font-family:var(--body);font-size:8px;letter-spacing:2px;color:#829eb7;margin-top:4px}
.member-caption p{font-size:13px;line-height:1.65;color:#b5c7d8;margin:0;overflow-wrap:anywhere}
.member-caption>.member-demo-label{display:block;font-size:9px;line-height:1.5;letter-spacing:0;color:#7892ac;margin-top:12px}

.replay-button{position:absolute;left:22px;bottom:20px;z-index:90;border:1px solid #33526c;background:rgba(7,21,35,.88);color:#9ec5df;font-size:11px;line-height:1.6;padding:10px 15px;border-radius:100px;cursor:pointer;transition:border-color .25s,color .25s}
.replay-button:hover{border-color:var(--cyan);color:var(--cyan)}
html.intro-pending .replay-button{visibility:hidden}
#demoStatus:not([hidden]){position:fixed;bottom:65px;left:22px;max-width:320px;z-index:100;background:#10283f;padding:14px;font-size:13px;color:#d6eafe}
/* 品牌整卡点击晕开：表层简洁，内容在全屏深潜里展开。 */
#acts .act-card{text-align:left;color:var(--ink);cursor:pointer;min-height:420px;background:linear-gradient(160deg,rgba(18,46,73,.66),rgba(7,17,31,.90));border-radius:24px}
#acts .act-card .act-intro{min-height:0;margin:15px 0 28px}
#acts .act-card .act-ico{margin-bottom:22px}
.brand-tagline{font-size:14px;color:#9ec7e8;letter-spacing:1px;margin-top:3px}
.brand-enter{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--cyan)}
.brand-enter i{font-style:normal;font-size:27px}
.brand-overlay{position:fixed;inset:0;z-index:180;display:none;background:rgba(3,9,19,.985);overflow:hidden;isolation:isolate;--brand-accent:#6fe3ff}
.brand-overlay.open{display:block}
.brand-halo{position:absolute;width:80vw;height:80vw;right:-32vw;top:-25vw;background:radial-gradient(circle,rgba(33,109,174,.35),transparent 62%);pointer-events:none;z-index:-1}
.brand-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:110px 9vw 60px;scrollbar-color:#2b597a transparent}
#brandClose{position:absolute;right:32px;top:28px;z-index:3;width:50px;height:50px;border:1px solid var(--line);border-radius:50%;background:rgba(14,35,55,.8);color:#fff;font-size:21px;cursor:pointer}
.brand-detail-head{position:relative;max-width:1050px;margin:0 auto 52px}
#brandDetailNumber{position:absolute;right:0;top:-40px;font-family:var(--disp);font-size:180px;color:rgba(120,192,246,.07);line-height:1;pointer-events:none}
#brandDetailTitle{font-family:var(--disp);font-size:clamp(48px,8vw,104px);font-weight:400;line-height:1.1;margin:22px 0}
#brandDetailIntro{font-size:18px;color:var(--dim);line-height:1.9;max-width:660px}
#brandDetailBody{max-width:1050px;margin:auto;position:relative}
.brand-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 54px;border-top:1px solid var(--line)}
.brand-detail-subtitle{color:var(--cyan);font-size:14px;letter-spacing:3px;margin:0 0 20px}
.brand-detail-item{padding:27px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:28px 1fr;gap:17px}
.brand-detail-item>span{font-size:10px;color:var(--cyan);letter-spacing:2px;padding-top:6px}
.brand-detail-item h3{font-family:var(--disp);font-size:25px;font-weight:400;margin-bottom:10px}
.brand-detail-item p{font-size:14px;line-height:1.9;color:#a3b7cb}
.brand-participation{display:flex;gap:32px;margin-top:38px;padding:25px 30px;background:rgba(111,227,255,.045);border-left:2px solid var(--cyan);align-items:center}
.brand-participation h3{font-family:var(--disp);font-size:24px;font-weight:400;flex-shrink:0}
.brand-participation p{color:#b4c9dd;font-size:14px;line-height:1.9}
.brand-detail-nav{max-width:1050px;margin:50px auto 0;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand-detail-nav button{border:1px solid var(--line);border-radius:100px;padding:13px 22px;background:none;color:var(--ink);font-size:13px;cursor:pointer}
#brandDetailCount{color:var(--cyan);font-family:var(--disp);font-size:18px}
body.brand-open #demoDock{visibility:hidden}

/* 年份的事件卡与统一原文入口。 */
#story .tl-item{padding-bottom:64px}
#story .tl-year{font-size:58px}
.year-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}
.history-card{position:relative;border:1px solid var(--line);background:#081625;border-radius:16px;overflow:hidden;min-width:0}
.history-card>img{display:block;aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}
.history-caption{padding:22px 20px 48px}
.history-caption time{font-size:10px;color:var(--cyan);letter-spacing:1px}
.history-caption h4{font-family:var(--disp);font-size:22px;font-weight:400;line-height:1.35;margin-top:12px}
.year-pending{max-width:600px;font-size:13px!important;padding:20px 0 4px;color:#7891aa!important}
.article-status{display:inline-flex;align-items:center;gap:6px;color:#87a7c5;font-size:10px;line-height:1.6;letter-spacing:.6px;padding:6px 0}
.history-card>.article-status{position:absolute;left:20px;bottom:18px}
.al-card>.article-status{position:absolute;right:16px;bottom:12px;z-index:3;background:rgba(5,15,27,.8);border-radius:6px;padding:3px 7px}
.inc-card>.article-status{margin-top:18px;display:block}
.article-hit{position:absolute;inset:0;z-index:5;color:transparent!important;text-decoration:none;cursor:pointer;border-radius:inherit}
.article-hit span{position:absolute;right:14px;bottom:14px;font-size:11px;color:#d1eeff;background:#112c45;border-radius:6px;padding:5px 9px}
.article-hit:focus-visible{outline-offset:-4px}
.history-card:has(.article-hit):hover{border-color:var(--cyan)}
.article-hit~.soft-fx{pointer-events:none}

/* 只保留一次邀请，联系信息下沉为页脚的一部分。 */
#join .join-box{padding-bottom:10px}
#join .join-box h2{font-size:clamp(36px,5.5vw,76px)}
#join .join-steps,#join .join-note{display:none}
#join .join-cta-row{margin-top:30px}
footer.demo-footer{display:grid;grid-template-columns:1fr 1.2fr;gap:48px 64px;padding:72px 7vw 30px;background:linear-gradient(180deg,#050c16,#07182a);border-top:1px solid var(--line)}
.footer-brand .f-brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--cyan)}
.footer-brand .f-brand span{font-family:var(--disp);font-size:43px;line-height:1}
.footer-brand>p{font-size:14px;line-height:1.9;color:#9db0c4;margin:22px 0}
.footer-brand>a:not(.f-brand){color:var(--cyan);font-size:13px;text-decoration:none}
.footer-brand>small{display:block;font-size:10px;color:#718aa4;margin-top:26px}
.footer-codes{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.footer-code{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.footer-code .qr-shell{width:116px;height:116px;border-radius:12px;margin:0 0 16px;padding:7px;background:#eef6ff}
.footer-code .qr-shell img{width:102px;height:102px;display:block}
.footer-code b{font-size:12px;font-weight:500;color:var(--ink);margin:0}
.footer-code p{font-size:10px;color:#87a2bd;margin:8px 0 0;line-height:1.6}
footer .president-contact{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;border:0;margin:0;padding:0;gap:0;max-width:none}
.president-qr{width:116px;height:116px;border:1px dashed #47708e;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:16px;background:rgba(111,227,255,.035)}
.president-qr>span{font-size:27px;color:var(--cyan)}
.president-qr small{font-size:10px;color:#88a4be;margin-top:10px}
.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#647f99;font-size:9px;letter-spacing:1.5px}

@media(max-width:1000px){.year-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-scroll{padding:95px 7vw 45px}.brand-detail-grid{gap:0 32px}footer.demo-footer{grid-template-columns:1fr;gap:38px}.footer-codes{max-width:550px;gap:18px}.footer-code{align-items:flex-start;text-align:left}}
@media(max-width:620px){
 #members .sec-title{font-size:32px}#story .sec-title,#partners .sec-title,#acts .sec-title{font-size:36px}
 .member-group{margin-top:28px}.member-group-head{padding-right:0}.member-card{flex-basis:min(300px,88vw);min-height:232px;grid-template-columns:36% minmax(0,1fr)}.member-caption{padding:16px 14px}.member-caption h4{font-size:25px;margin:8px 0}.member-caption p{font-size:13px;line-height:1.6}.member-caption>.member-demo-label{font-size:8px;margin-top:9px}.member-caption>.member-role{font-size:9px}.member-track{margin-inline:-4px}.member-serial{left:10px;font-size:7px}
 .brand-scroll{padding:95px 7vw 38px}.brand-detail-grid{grid-template-columns:1fr;gap:0}.brand-detail-head{margin-bottom:28px}#brandDetailTitle{font-size:50px}#brandDetailIntro{font-size:15px}#brandDetailNumber{font-size:100px;top:-20px}.brand-detail-item{padding:20px 0}.brand-detail-item h3{font-size:23px}.brand-participation{display:block;padding:20px}.brand-participation h3{margin-bottom:9px}.brand-detail-nav{gap:7px;margin-top:32px}.brand-detail-nav button{font-size:10px;padding:12px 13px}#brandClose{right:20px;top:22px;width:44px;height:44px}
 #story .tl-year{font-size:45px}#story .tl-item{padding-left:45px}.year-gallery{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x mandatory;padding-bottom:8px}.history-card{flex:0 0 90%;scroll-snap-align:start}.history-caption{padding:18px 16px 44px}.history-caption h4{font-size:20px}.history-card>.article-status{left:16px;font-size:9px}
 .footer-codes{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px}.footer-code .qr-shell,.president-qr{width:88px;height:88px}.footer-code .qr-shell{padding:5px}.footer-code .qr-shell img{width:78px;height:78px}.footer-code p{font-size:9px}.footer-code b{font-size:11px}.footer-bottom{display:block;line-height:1.8}.footer-bottom>span{display:block;margin-bottom:6px}footer.demo-footer{padding-bottom:90px}.replay-button{left:14px;bottom:14px;font-size:10px;padding:10px 13px}
}
@media(prefers-reduced-motion:reduce){.member-card,.replay-button{transition:none}.member-card:hover,.member-card:focus{transform:none}.member-track,.year-gallery{scroll-behavior:auto}}


/* 两行原生横滚；两份等宽内容无缝相接，装饰副本不参与读屏。 */
#partners{padding-inline:0}
#partners .marquee-track{gap:0}
.partner-run{display:flex;align-items:center;gap:70px;padding-right:70px;flex-shrink:0}
.marquee{scrollbar-width:thin;scrollbar-color:#28465b transparent;overscroll-behavior-inline:contain;touch-action:pan-x pan-y}
.marquee:focus-visible{outline:2px solid var(--cyan);outline-offset:-3px}
.marquee:focus-within .marquee-track{animation-play-state:paused}
/* 复用原二维码扫描效果，行程适配页脚真实二维码，而非额外测试节点。 */
.footer-code.qr-card{width:auto;padding:0;border:0;background:none;border-radius:0}
.footer-code .qr-shell{--qr-scan-travel:110px}
@keyframes qrScan{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--qr-scan-travel,142px))}}
@media(max-width:620px){
 #partners .marquee{overflow-x:auto;padding-block:23px}
 #partners .partner-run{gap:24px;padding-inline:7vw}
 #partners .marquee span{font-size:22px;letter-spacing:1px;color:#acbecc}
 #partners .marquee b{font-size:12px}
 .footer-code .qr-shell{--qr-scan-travel:82px}
}
@media(prefers-reduced-motion:reduce){
 #partners .marquee{overflow-x:auto}
 #partners .marquee-track{animation:none;transform:none}
 #partners .partner-run[aria-hidden=true]{display:none}
 #partners .partner-run{padding-inline:7vw}
}

.inc-card .source-note{font:11px/1.65 var(--body);color:#819baa;margin:16px 0 0}
