.promo-home{--promo-plum:#49365f;--promo-lilac:#9375ad;--promo-cream:#fbf8f2;overflow-x:hidden}
.promo-home .site-header{position:absolute}
.promo-hero{position:relative;overflow:hidden;min-height:740px;padding:142px 0 86px;background:linear-gradient(180deg,rgba(246,241,248,.2) 0%,rgba(246,241,248,.86) 46%,#f6f1f8 100%),url('assets/guofeng-landscape.webp') center top / cover no-repeat}
.promo-hero:before,.promo-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.promo-hero:before{width:470px;height:470px;right:-145px;top:-220px;border:1px solid rgba(128,96,155,.17);box-shadow:0 0 0 38px rgba(128,96,155,.035),0 0 0 78px rgba(128,96,155,.03)}
.promo-hero:after{width:390px;height:390px;left:-190px;bottom:-260px;background:rgba(255,255,255,.32);filter:blur(2px)}
.promo-hero-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 72% 52%,rgba(211,188,222,.36),transparent 40%);pointer-events:none}
.promo-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;min-height:510px}
.promo-hero-copy{max-width:570px}
.promo-hero-copy .eyebrow,.promo-section .eyebrow,.promo-download .eyebrow{display:inline-flex;align-items:center;gap:10px;letter-spacing:.16em}
.promo-hero-copy .eyebrow:before,.promo-section .eyebrow:before,.promo-download .eyebrow:before{content:"";width:24px;height:1px;background:currentColor;opacity:.7}
.promo-hero-copy h1{margin:18px 0 14px;color:#3d318f;font-size:clamp(36px,4vw,52px);line-height:1.25;letter-spacing:.02em}
.promo-hero-copy h1 span{color:#8a6238}
.promo-hero-copy>p:not(.platform-note){max-width:420px;margin-bottom:0;font-size:15px;line-height:1.7;color:#6e6479}
.store-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}
.store-button{display:flex;align-items:center;gap:12px;min-width:205px;padding:11px 14px;border:1px solid rgba(86,66,111,.14);border-radius:15px;background:#fff;color:#372c49;box-shadow:0 10px 26px rgba(64,47,82,.07);transition:transform .24s,box-shadow .24s}
.store-button:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(64,47,82,.12)}
.store-button .store-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#f0eaf5;color:#795b98;font-size:15px}
.store-button span:nth-child(2){display:grid;gap:2px}.store-button small{font-size:9px;letter-spacing:.13em;color:#8b8195}.store-button b{font-size:13px}.store-button i{margin-left:auto;font-size:18px;font-style:normal;color:#88739f}
.store-ios .store-icon{border-radius:50%;background:#f0edf7;font-size:14px}
.promo-hero-copy .platform-note{margin:11px 0 0;font-size:11px;color:#8c8293}
.promo-hero-art{position:relative;min-height:510px;display:grid;place-items:center}
.promo-art-sun{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle at 50% 40%,rgba(248,237,208,.82),rgba(193,164,211,.28) 58%,transparent 72%);animation:promo-sun 8s ease-in-out infinite alternate}
.promo-art-cover{position:relative;width:min(88%,420px);height:450px;padding:11px;border-radius:30px;background:rgba(255,255,255,.75);box-shadow:0 26px 64px rgba(62,43,85,.22);transform:rotate(3deg);animation:promo-float 7s ease-in-out infinite}
.promo-art-cover>img{width:100%;height:100%;object-fit:cover;border-radius:22px}
.cover-caption{position:absolute;left:24px;right:24px;bottom:23px;padding:13px 15px;border:1px solid rgba(255,255,255,.55);border-radius:14px;background:rgba(49,37,67,.68);backdrop-filter:blur(12px);color:#fff;font-size:12px;letter-spacing:.04em}
.live-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#e890a7;box-shadow:0 0 0 4px rgba(232,144,167,.16);vertical-align:1px}
.hero-qr-card{position:absolute;z-index:2;left:0;bottom:17px;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border:1px solid rgba(255,255,255,.9);border-radius:17px;background:#fff;box-shadow:0 14px 36px rgba(55,39,77,.16);transform:rotate(-3deg)}
.hero-qr-card img{width:78px;height:78px;padding:4px;border:1px solid #eee9f1;border-radius:9px;background:#fff}
.hero-qr-card b,.hero-qr-card span{display:block}.hero-qr-card b{font-size:14px;color:#41314f}.hero-qr-card span{margin-top:5px;font-size:11px;color:#887d92}
.promo-floating{position:absolute;z-index:2;padding:13px 16px;border:1px solid rgba(255,255,255,.9);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 12px 30px rgba(56,40,77,.12);color:#675574;font-size:12px;backdrop-filter:blur(12px);animation:promo-float 6s ease-in-out infinite}
.promo-floating-top{right:-8px;top:75px}.promo-floating-bottom{right:0;bottom:56px;animation-delay:-3s}.promo-floating-bottom b{display:block;margin-top:4px;color:#3d304d;font-size:14px}
.mini-wave{display:inline-flex;align-items:center;gap:3px;height:17px;margin-right:8px;vertical-align:middle}.mini-wave i{display:block;width:3px;height:6px;border-radius:3px;background:#9375ad;animation:promo-wave .85s ease-in-out infinite alternate}.mini-wave i:nth-child(2n){animation-delay:.22s}.mini-wave i:nth-child(3n){animation-delay:.43s}.mini-wave i:nth-child(4n){animation-delay:.64s}
.art-disclaimer{position:absolute;right:5px;bottom:-18px;color:#8c8193;font-size:10px;letter-spacing:.08em}
.promo-section{padding:110px 0}.promo-live{background:#fff}
.promo-feature-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}
.promo-feature-art{position:relative;min-height:430px;border-radius:26px;overflow:hidden;background:#ede6f1;box-shadow:0 25px 50px rgba(63,47,80,.12)}
.promo-feature-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.promo-room-art:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(44,33,59,.68))}
.room-chip,.room-sound{position:absolute;z-index:1;color:#fff}.room-chip{top:22px;left:22px;padding:9px 12px;border-radius:30px;background:rgba(45,34,58,.53);font-size:11px;backdrop-filter:blur(9px)}
.room-sound{left:27px;right:27px;bottom:29px;display:flex;align-items:center;gap:9px}.room-sound .mini-wave i{background:#fff}.room-sound b{font:600 16px 'Noto Serif SC',serif}.promo-room-art .art-disclaimer{z-index:2;right:16px;bottom:12px;color:rgba(255,255,255,.76)}
.promo-feature-copy h2,.promo-section-heading h2,.promo-people h2,.promo-download h2{margin:12px 0 12px;font-size:clamp(28px,3vw,36px);line-height:1.35;color:#3d318f}
.promo-people h2{color:#f6f1ea}
.promo-feature-copy>p,.promo-section-heading>p,.promo-people p,.promo-download p{font-size:14px;line-height:1.7}
.promo-points{display:grid;gap:12px;padding:0;margin:24px 0;list-style:none;color:#665b72;font-size:14px}
.promo-points li{display:flex;gap:10px;align-items:center}.promo-points li:before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#eee8f4;color:#75598f;font-size:11px;font-weight:700}
.text-link{display:inline-flex;align-items:center;gap:8px;color:#684b83;font-size:14px;font-weight:700}.text-link span{font-size:18px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}
.promo-events{background:var(--promo-cream)}
.promo-section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.promo-section-heading h2{margin-bottom:0}.promo-section-heading>p{max-width:390px;margin:0 0 5px}
.promo-mosaic{display:grid;grid-template-columns:1.2fr .8fr .72fr;gap:18px;min-height:360px}
.mosaic-card{position:relative;min-height:360px;overflow:hidden;border-radius:24px;background:#58476c;color:#fff;isolation:isolate}.mosaic-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(38,29,51,.78),rgba(44,32,60,.05) 70%)}.mosaic-card img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .7s}.mosaic-card:hover img{transform:scale(1.05)}
.mosaic-card>div{position:absolute;left:23px;right:22px;bottom:25px}.mosaic-card small{font-size:11px;letter-spacing:.14em;color:#ebd8f3}.mosaic-card h3{margin:8px 0 0;font-size:20px;line-height:1.45}
.mosaic-main img{object-position:center 42%}.mosaic-side img{object-position:center}
.mosaic-note{display:flex;flex-direction:column;justify-content:center;padding:27px;border:1px solid #e7deec;border-radius:24px;background:#f1eaf4;color:#514064}.note-mark{font:70px Georgia,serif;color:#b393c2;line-height:.8}.mosaic-note p{margin:12px 0 20px;font:600 18px/1.6 'Noto Serif SC',serif;color:#514064}.mosaic-note .mini-wave i{background:#9f7db0}
.promo-people{overflow:hidden;background:#241c38;color:#fff}.promo-people-inner{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:60px}.promo-people .eyebrow{color:#d5b58b}.promo-people p{max-width:470px;color:#cfc4d9}.promo-people .button{margin-top:13px}
.people-orbit{position:relative;min-height:390px;display:grid;place-items:center}.orbit-ring{position:absolute;width:310px;height:310px;border:1px solid rgba(222,195,238,.3);border-radius:50%;box-shadow:0 0 0 38px rgba(222,195,238,.045),0 0 0 80px rgba(222,195,238,.03);animation:promo-sun 9s ease-in-out infinite alternate}.orbit-center{position:relative;width:165px;height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 34% 28%,#efe4c8,#8d6aad 62%,#4c3478);box-shadow:0 20px 65px rgba(185,137,90,.28);color:white}.orbit-center img{width:78px;height:78px;border-radius:22px;object-fit:cover;box-shadow:0 8px 18px rgba(36,28,56,.28)}.orbit-center small{margin-top:8px;font-size:11px;letter-spacing:.12em}.orbit-tag{position:absolute;padding:10px 15px;border:1px solid rgba(255,255,255,.25);border-radius:30px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);font-size:12px;animation:promo-float 5s ease-in-out infinite}.orbit-tag-a{top:43px;left:16%}.orbit-tag-b{right:7%;top:48%}.orbit-tag-c{bottom:36px;left:28%;animation-delay:-2s}
.promo-join{background:#f7f3f8}.join-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.join-card{position:relative;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;padding:27px 30px;border-radius:22px;overflow:hidden;transition:transform .25s,box-shadow .25s}.join-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(57,40,75,.12)}.join-card span{font-size:12px;letter-spacing:.14em}.join-card b{font:600 20px/1.5 'Noto Serif SC',serif}.join-card i{position:absolute;right:28px;bottom:23px;font-size:25px;font-style:normal}.join-creator{background:linear-gradient(145deg,#efe6f6,#f8f4fb);color:#3d318f;border:1px solid rgba(255,255,255,.9)}.join-guild{background:linear-gradient(145deg,#f3eadf,#faf6f0);color:#6a4e32;border:1px solid rgba(255,255,255,.9)}
.promo-download{padding:88px 0;background:linear-gradient(115deg,#efe6f4 0%,#f7f1ea 100%)}.promo-download-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px}.promo-download .eyebrow{color:#74598b}.promo-download h2{margin-bottom:13px}.promo-download p{margin:0}.download-end-actions{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:11px}.download-end-actions .button{min-height:48px;padding:0 17px}.download-qr-link{display:flex;align-items:center;gap:10px;margin-left:4px;padding:7px 12px 7px 7px;border:1px solid rgba(94,71,118,.13);border-radius:13px;background:rgba(255,255,255,.7);color:#61516f;font-size:11px}.download-qr-link img{width:52px;height:52px;border-radius:6px;background:#fff}
@keyframes promo-float{50%{transform:translateY(-9px) rotate(-1deg)}}@keyframes promo-sun{50%{transform:scale(1.06);opacity:.72}}@keyframes promo-wave{to{height:15px}}
@media(max-width:900px){.promo-hero{min-height:0;padding:115px 0 70px}.promo-hero-grid{grid-template-columns:1fr;gap:20px}.promo-hero-copy{max-width:700px}.promo-hero-art{min-height:485px}.promo-feature-row{gap:40px}.promo-mosaic{grid-template-columns:1fr 1fr}.mosaic-main{grid-row:span 2}.mosaic-note{min-height:230px}.promo-people-inner{gap:20px}.promo-people .shell{width:min(100% - 40px,720px)}}
@media(max-width:620px){.promo-hero{padding:103px 0 50px}.promo-hero-copy h1{font-size:34px;margin:18px 0 12px}.promo-hero-copy>p:not(.platform-note){font-size:15px}.store-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}.store-button{min-width:0;gap:8px;padding:9px}.store-button .store-icon{width:29px;height:29px}.store-button b{font-size:11px}.store-button small{font-size:8px}.store-button i{display:none}.promo-hero-art{min-height:375px}.promo-art-cover{width:75%;height:340px;border-radius:24px}.promo-art-cover>img{border-radius:17px}.promo-art-sun{width:300px;height:300px}.hero-qr-card{left:-2px;bottom:8px;padding:8px 10px 8px 8px;gap:8px}.hero-qr-card img{width:60px;height:60px}.hero-qr-card b{font-size:12px}.hero-qr-card span{font-size:10px}.promo-floating{padding:10px 12px;font-size:10px}.promo-floating-top{right:-2px;top:35px}.promo-floating-bottom{right:0;bottom:38px}.art-disclaimer{right:3px;bottom:-15px;font-size:9px}.promo-section{padding:70px 0}.promo-feature-row,.promo-people-inner,.promo-download-inner{grid-template-columns:1fr;gap:30px}.promo-feature-art{min-height:310px}.room-sound{left:18px;right:18px;bottom:22px}.room-sound b{font-size:16px}.promo-feature-copy h2,.promo-section-heading h2,.promo-people h2,.promo-download h2{font-size:28px}.promo-feature-copy>p,.promo-section-heading>p,.promo-people p,.promo-download p{font-size:14px}.promo-section-heading{display:block;margin-bottom:25px}.promo-section-heading>p{margin-top:13px}.promo-mosaic{grid-template-columns:1fr 1fr;gap:10px;min-height:0}.mosaic-card{min-height:255px;border-radius:17px}.mosaic-main{grid-row:span 2;min-height:520px}.mosaic-card>div{left:15px;right:14px;bottom:17px}.mosaic-card h3{font-size:19px}.mosaic-note{grid-column:2;min-height:255px;padding:18px;border-radius:17px}.mosaic-note p{font-size:16px;margin:10px 0 18px}.promo-people-inner{gap:18px}.people-orbit{min-height:300px}.orbit-ring{width:235px;height:235px}.orbit-center{width:130px;height:130px}.orbit-center span{font-size:43px}.orbit-tag-a{top:24px;left:8%}.orbit-tag-b{right:0}.orbit-tag-c{bottom:18px;left:20%}.join-cards{grid-template-columns:1fr;gap:11px}.join-card{min-height:175px;padding:22px}.join-card b{font-size:22px}.promo-download{padding:68px 0}.download-end-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.download-end-actions .button{width:100%;padding:0 9px;font-size:11px}.download-qr-link{grid-column:1/-1;width:max-content;margin:2px 0 0}.promo-hero .shell,.promo-live .shell,.promo-events .shell,.promo-people .shell,.promo-join .shell,.promo-download .shell{width:calc(100% - 36px)}}
@media(prefers-reduced-motion:reduce){.promo-art-sun,.promo-art-cover,.promo-floating,.mini-wave i,.orbit-ring,.orbit-tag{animation:none!important}.store-button,.join-card,.mosaic-card img{transition:none}}
