:root{--bg:#11151d;--bg2:#171e29;--paper:#ebe9e1;--ink:#172026;--muted:#a7b0b6;--rose:#edb4b6;--sand:#ded1b5;--line:#ffffff31;--outer:clamp(22px,5.8vw,108px);--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:none;scroll-padding-top:80px}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}body{margin:0;overflow-x:clip;background:var(--bg);color:#f0eee8;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}::selection{background:#ecc8c5;color:#141921}:focus-visible{outline:2px solid #e5b1a5;outline-offset:4px}.skip{position:fixed;z-index:400;left:10px;top:-100px;background:#fff;color:#000;padding:10px 15px}.skip:focus{top:10px}.progress{position:fixed;z-index:210;left:0;top:0;height:2px;width:0;background:var(--rose);pointer-events:none}.header{height:78px;position:fixed;left:0;top:0;right:0;z-index:180;display:flex;align-items:center;padding:0 var(--outer);gap:22px;background:rgba(13,17,23,.74);border-bottom:1px solid #ffffff21;backdrop-filter:blur(18px);transition:background .3s,transform .4s}.header.is-solid{background:#11151df2}.brand{display:flex;align-items:center;gap:11px;flex:none}.brand img{border-radius:12px;border:1px solid #e2b7b757;box-shadow:0 0 20px #eab1bb27}.brand b{font-size:16px;letter-spacing:-.025em;font-weight:820}.brand-latin{font-family:ui-sans-serif,sans-serif;font-weight:720}.brand small{display:block;font:9px ui-monospace,Consolas,monospace;letter-spacing:.13em;color:#b0afae;margin-top:4px}.nav{display:flex;gap:clamp(13px,2vw,30px);align-items:center;margin-left:auto}.nav a{font-size:12px;color:#c4c5c5;white-space:nowrap;transition:color .2s}.nav a:hover,.nav a.current{color:#fff}.header-entry{border:1px solid #e7b6aa7b;background:#edb4ae14;color:#f4d0c5;padding:12px 16px;white-space:nowrap;font-size:12px;font-weight:680;transition:background .2s}.header-entry:hover{background:#edb4ae35}.header-entry span{margin-left:16px}.menu-button{display:none;border:1px solid #ffffff44;background:transparent;color:#fff;padding:8px 11px;font-size:22px}.mobile-nav{display:none}.chapter{position:fixed;z-index:120;right:24px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:15px}.chapter a{display:block;width:13px;height:3px;margin-left:auto;background:#e9e5d17c;transition:background .25s,width .25s}.chapter a.active{width:33px;background:var(--rose)}.section{position:relative}.section-inner{padding:100px var(--outer) 125px;max-width:1900px;margin:0 auto}.section-top{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:60px}.eyebrow{color:#ae7678;font:700 11px ui-monospace,Consolas,monospace;letter-spacing:.15em}.section-hint{font-size:12px;color:#81888e}.display{font-size:clamp(49px,6.5vw,108px);line-height:1.05;letter-spacing:-.073em;font-weight:880;margin:0}.display span{font-family:Georgia,"Noto Serif SC",serif;font-weight:500;font-style:italic;letter-spacing:-.07em}.reveal{transition:opacity .8s var(--ease),transform 1s var(--ease)}.js-motion .reveal:not(.is-visible){opacity:0;transform:translateY(28px)}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;font-size:13px;font-weight:740;padding:17px 20px;min-width:180px;transition:transform .25s var(--ease),background .25s;border:1px solid transparent}.btn span{font-size:18px}.btn:hover{transform:translateY(-3px)}.btn-primary{background:#e7b3ac;color:#141721}.btn-primary:hover{background:#ffd0c6}.btn-outline{border-color:#dedbd1aa;background:#ffffff07;color:#f9f4eb}.btn-outline:hover{background:#ffffff16}.text-link{display:inline-flex;gap:22px;align-items:center;color:#243e48;border-bottom:1px solid #243e48;padding-bottom:10px;font-size:13px;font-weight:740}.text-link:hover span{transform:translate(3px,-3px)}.text-link span{transition:transform .2s}
/* Scene 00: cinematic but content-first */
.hero{min-height:710px;height:100svh;max-height:1120px;display:grid;grid-template-columns:1.04fr .96fr;isolation:isolate;overflow:hidden;padding-top:78px}.hero-bg{position:absolute;inset:0;z-index:-3;background:radial-gradient(ellipse at 67% 24%,#303d4a 0,transparent 35%),linear-gradient(130deg,#131b25,#0b131b 67%,#111c25)}.hero-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(#fff2 1px,transparent 1px),linear-gradient(90deg,#fff2 1px,transparent 1px);background-size:110px 110px;opacity:.08}.hero-copy{padding:clamp(112px,13vh,180px) 3vw 60px var(--outer);display:flex;flex-direction:column;justify-content:center;position:relative;z-index:5}.tag{display:flex;align-items:center;gap:12px;font:650 11px ui-monospace,Consolas,monospace;letter-spacing:.1em;color:#e6c4c0}.status-dot{height:7px;width:7px;border-radius:50%;background:#dec9a4;box-shadow:0 0 14px #dec9a4bb}.hero h1{font-size:clamp(56px,6.3vw,112px);line-height:1.13;letter-spacing:-.082em;margin:28px 0 25px;white-space:nowrap;font-weight:920}.hero h1 em{font-weight:500;font-style:italic;font-family:Georgia,"Noto Serif SC",serif;color:#e8b6b1}.hero-copy>p{max-width:640px;font-size:clamp(15px,1.24vw,19px);line-height:2;color:#bbc5c6;margin:0}.hero-actions{display:flex;gap:12px;margin-top:40px;flex-wrap:wrap}.hero-meta{display:flex;gap:26px;flex-wrap:wrap;align-items:center;border-top:1px solid #ffffff3f;margin-top:auto;padding-top:22px;font:10px ui-monospace,Consolas,monospace;color:#98a6a9;letter-spacing:.08em}.hero-visual{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;margin:0 var(--outer) 0 -5vw}.hero-map-frame{position:relative;width:100%;height:76%;min-height:480px;max-height:690px;border:1px solid #e1ddd138;box-shadow:0 28px 85px #03070e9c;transform:perspective(1100px) rotateY(-9deg) rotateX(4deg);transition:transform 1s var(--ease);overflow:hidden;background:#101b24}.hero-map-frame:hover{transform:perspective(1100px) rotateY(-3deg) rotateX(1deg) scale(1.01)}.hero-map-frame>img{width:100%;height:100%;object-fit:cover}.hero-map-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#0a111d90,transparent 33%,#0a111d31)}.visual-top,.hero-map-footer{position:absolute;left:24px;right:24px;z-index:2;display:flex;justify-content:space-between;gap:12px;align-items:center;font:10px ui-monospace,monospace;color:#edede3b8;letter-spacing:.1em}.visual-top{top:22px}.hero-map-footer{bottom:22px}.hero-map-footer span{font-size:9px}.live-indicator{color:#dec19d}.hero-map-label{position:absolute;z-index:3;color:#fff;background:#0d1a23ed;border:1px solid #ffffff59;padding:12px 15px;box-shadow:0 10px 25px #0006;font-size:12px;font-weight:760;white-space:nowrap}.hero-map-label span{display:block;font:10px ui-monospace,monospace;color:#d5baaa;letter-spacing:.14em;margin-bottom:5px}.hero-map-label-a{left:36%;top:26%}.hero-map-label-b{right:14%;top:51%}.hero-map-label-c{left:37%;bottom:21%}.scroll-cue{position:absolute;right:var(--outer);bottom:20px;color:#e0d4c7;font:10px ui-monospace,monospace;letter-spacing:.14em;display:flex;gap:18px}.scroll-cue span{font-size:18px}
/* Editorial intro */
.about{background:var(--paper);color:var(--ink)}.about .section-top{border-bottom:1px solid #a7aaa5;padding-bottom:16px}.about-layout{display:grid;grid-template-columns:1fr .86fr;gap:clamp(35px,8vw,150px);align-items:start}.about-body{max-width:600px;padding-top:22px}.about-body p{font-size:15px;line-height:2.1;color:#4b5658;margin:0 0 22px}.about-body .lead{font-size:clamp(23px,2.15vw,32px);font-weight:680;line-height:1.6;color:#18282f}.about-body .lead span{color:#a56b64}.truth-strip{margin-top:95px;display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.truth-strip>div{border-top:1px solid #98a39e;padding-top:22px;display:flex;flex-direction:column;gap:11px}.truth-strip small{font-size:12px;color:#718080}.truth-strip strong{font-size:clamp(22px,2.1vw,35px);letter-spacing:-.05em}.truth-strip span{font-size:13px;color:#75817e}
/* RP choices with true state */
.play{background:#161e29;color:#f1f1ea}.play .section-top{border-bottom:1px solid #ffffff35;padding-bottom:15px}.play .eyebrow,.city .eyebrow,.join .eyebrow{color:#e0ae9c}.play-heading,.city-heading,.join-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:55px}.play-heading p,.city-heading p,.join-heading p{font-size:clamp(14px,1.3vw,18px);line-height:1.9;color:#aebbbd;max-width:500px;margin:0}.roleplay-demo{min-height:510px;display:grid;grid-template-columns:1.02fr .98fr;gap:1px;background:#e8e4cc4f;border:1px solid #e8e4cc4f}.demo-side{background:#24303a;padding:clamp(26px,4vw,65px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.demo-side::after{content:"";position:absolute;right:-100px;top:18%;width:320px;height:320px;border:1px solid #ddc4a23a;border-radius:50%;box-shadow:0 0 0 80px #ddc4a20c,0 0 0 160px #ddc4a20a;pointer-events:none}.tiny{font:11px ui-monospace,monospace;letter-spacing:.12em;color:#c2b6ab;position:relative;z-index:1}.scene-counter{font:italic 125px/1 Georgia,serif;color:#e4c5ae;margin:30px 0 16px;position:relative;z-index:1}.scene-counter small{font:22px ui-monospace,monospace;color:#899ca4}.demo-side h3{font-size:clamp(29px,3.4vw,56px);line-height:1.2;letter-spacing:-.06em;position:relative;z-index:1;margin:0}.demo-side>p{max-width:465px;font-size:16px;line-height:1.95;color:#ced6d6;position:relative;z-index:1}.scene-progress{display:flex;gap:8px;margin:28px 0 45px}.scene-progress span{width:36px;height:3px;background:#ffffff33;transition:background .25s,width .25s}.scene-progress span.active{width:70px;background:#efc3ac}.demo-footnote{font-size:11px;color:#8498a0}.demo-choices{background:#141b23;padding:clamp(26px,4.3vw,66px);display:flex;flex-direction:column;gap:8px}.demo-choices>.tiny{margin-bottom:14px}.choice{display:grid;grid-template-columns:1fr auto;text-align:left;gap:8px;border:0;border-top:1px solid #ffffff40;color:#e6eae9;padding:19px 12px;background:transparent;transition:background .25s,padding .25s}.choice:last-child{border-bottom:1px solid #ffffff40}.choice small,.choice b,.choice span{grid-column:1}.choice small{color:#bcae9f;font:10px ui-monospace,monospace;letter-spacing:.13em}.choice b{font-size:clamp(19px,1.9vw,28px);letter-spacing:-.045em}.choice span{font-size:13px;color:#97a5ad;line-height:1.5}.choice i{grid-column:2;grid-row:1/4;align-self:center;font-style:normal;font-size:21px}.choice:hover,.choice.selected{background:#f5d1be13;padding-left:24px}.choice.selected{box-shadow:inset 3px 0 #e8bcaa}.rp-terms{display:flex;gap:35px;margin-top:35px;flex-wrap:wrap}.rp-terms p{font-size:12px;color:#8b9ea2}.rp-terms strong{font:700 14px ui-monospace,monospace;color:#e1c4ae;margin-right:10px}
/* actual roles */
.city{background:#141922;color:#f4eee7}.city-heading{margin-bottom:50px}.career-shell{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:28px}.career-menu{border-top:1px solid #ffffff56}.career-menu button{width:100%;display:flex;align-items:center;gap:18px;padding:26px 10px;background:none;border:0;border-bottom:1px solid #ffffff56;color:#e9e7e3;text-align:left;transition:background .2s,padding .2s}.career-menu button span{font:11px ui-monospace,monospace;color:#b0b6b2}.career-menu button strong{font-size:clamp(20px,2.1vw,31px);letter-spacing:-.05em}.career-menu button i{font-style:normal;margin-left:auto}.career-menu button[aria-selected="true"],.career-menu button:hover{padding-left:24px;background:#dfb7a620;border-bottom-color:#ddab9b}.career-panel{min-height:530px;position:relative;isolation:isolate;overflow:hidden;padding:45px;background:radial-gradient(circle at 80% 80%,#776a6c80,transparent 45%),linear-gradient(130deg,#314351,#111b27)}.career-waves{position:absolute;inset:0;opacity:.38;z-index:-1;background:repeating-radial-gradient(ellipse at 80% 80%,transparent 0 37px,#d4dcca2b 38px,#d4dcca2b 39px,transparent 40px 70px)}.career-top{display:flex;justify-content:space-between;gap:20px;color:#ddd5c7;font:11px ui-monospace,monospace;letter-spacing:.11em}.career-mark{font:italic 86px/1 Georgia,serif;color:#b4c9bf30}.career-content{position:absolute;left:45px;right:45px;bottom:75px}.career-content h3{font-size:clamp(34px,4.1vw,65px);line-height:1.1;letter-spacing:-.06em;max-width:600px;margin:0 0 18px}.career-content p{line-height:1.9;max-width:560px;color:#ced7d8;font-size:15px;margin-bottom:28px}.career-content a{display:inline-block;padding-bottom:8px;border-bottom:1px solid #e5c2ae;color:#f0cdb4;font-size:12px}.career-foot{position:absolute;right:45px;bottom:25px;font:10px ui-monospace,monospace;color:#899cac;letter-spacing:.12em}
/* rules clarity */
.rules{background:#e7e6df;color:var(--ink)}.rules .section-top{border-bottom:1px solid #84918c;padding-bottom:15px}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,135px)}.rules-intro{line-height:2;font-size:15px;color:#526060;max-width:580px;margin:30px 0}.rule-list{border-top:1px solid #82918d}.rule-list details{border-bottom:1px solid #9ea7a4}.rule-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;padding:25px 9px}.rule-list summary::-webkit-details-marker{display:none}.rule-list summary b{font:11px ui-monospace,monospace;color:#697679}.rule-list summary span{font-size:clamp(18px,1.5vw,24px);font-weight:730;letter-spacing:-.04em}.rule-list summary i{margin-left:auto;font-style:normal;font-size:21px;transition:transform .2s}.rule-list details[open] summary i{transform:rotate(45deg)}.rule-list details p{padding:0 16px 25px 41px;line-height:1.95;font-size:14px;color:#536263;margin:0}
/* Join conversion */
.join{background:#111d25;color:#f1f1e9}.join-heading p{max-width:480px}.join-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #a9afad55;padding-top:28px}.join-step b{font:italic 56px Georgia,serif;color:#e0bcab}.join-step h3{font-size:22px;letter-spacing:-.055em;margin:10px 0}.join-step p{font-size:14px;line-height:1.9;color:#9fadae;max-width:400px}.join-cta{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:end;margin-top:65px;border-top:1px solid #a9afad55;padding-top:35px}.join-code{display:flex;flex-direction:column;gap:15px;position:relative}.join-code small{font:10px ui-monospace,monospace;color:#a9aba7;letter-spacing:.13em}.join-code code{font:clamp(24px,2.4vw,39px) ui-monospace,Consolas,monospace;letter-spacing:-.05em;color:#e6c3af}.join-code button{width:max-content;padding:11px 17px;background:none;border:1px solid #e1b9a4a1;color:#ebd7ca;font-size:12px}.join-code button:hover{background:#ffffff14}.copy-status{position:absolute;bottom:8px;left:112px;font-size:11px;color:#d9c8a4}.join-buttons{display:flex;gap:12px;justify-content:end;align-items:center;flex-wrap:wrap}.join .btn{min-width:192px}.bottom-note{font-size:13px;color:#98a8ad;border-top:1px solid #ffffff27;margin-top:65px;padding-top:22px;line-height:1.85}.bottom-note a{color:#eecab8;text-decoration:underline;text-underline-offset:5px}.footer{background:#0a1016;border-top:1px solid #ffffff1b;padding:34px var(--outer);display:flex;gap:35px;justify-content:space-between;align-items:center;font-size:11px;line-height:1.7;color:#96a3a4}.footer-brand{display:flex;align-items:center;gap:12px;flex:none;font-size:14px;font-weight:720;color:#eae5e3}.footer-brand img{border-radius:9px}.footer-brand small{display:block;font:9px ui-monospace,monospace;color:#aaa4a0;letter-spacing:.13em}.footer>a{white-space:nowrap;color:#e9c5b5}
@media(min-width:900px){.hero-visual{transform:translateY(0);animation:hero-enter 1.3s var(--ease) both}@keyframes hero-enter{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}}
@media(max-width:1160px){.nav{gap:14px}.nav a{font-size:11px}.brand b{font-size:14px}.hero h1{font-size:clamp(55px,6vw,83px)}.hero-visual{margin-right:20px}.hero-map-frame{transform:none;height:70%}}
@media(max-width:900px){.header{height:70px}.nav{display:none}.menu-button{display:block}.brand{margin-right:auto}.mobile-nav{display:flex;flex-direction:column;position:fixed;z-index:200;inset:0;background:#11151dfb;padding:108px 7vw 50px;gap:0;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .25s}.mobile-nav.open{visibility:visible;opacity:1;pointer-events:auto}.mobile-nav a{font-size:clamp(26px,6vw,42px);padding:18px 0;border-bottom:1px solid #ffffff39}.close-menu{align-self:end;position:absolute;top:22px;right:7vw;background:none;border:1px solid #ffffff60;color:#fff;padding:10px 15px}.chapter{right:9px}.hero{height:auto;min-height:820px;grid-template-columns:1fr;display:flex;flex-direction:column}.hero-copy{padding:115px var(--outer) 25px;min-height:520px}.hero-copy>p{max-width:620px}.hero-meta{margin-top:38px}.hero h1{font-size:clamp(54px,8.7vw,85px)}.hero-visual{margin:0 var(--outer) 60px;height:370px;min-height:370px}.hero-map-frame{height:100%;min-height:350px}.scroll-cue{right:var(--outer);bottom:14px}.about-layout,.play-heading,.city-heading,.join-heading,.rules-grid{grid-template-columns:1fr}.play-heading,.city-heading,.join-heading{gap:20px}.truth-strip{margin-top:65px}.roleplay-demo{grid-template-columns:1fr}.demo-side{min-height:370px}.career-shell{grid-template-columns:1fr}.career-menu{display:grid;grid-template-columns:repeat(2,1fr)}.career-menu button{padding:16px 10px}.join-cta{grid-template-columns:1fr}.join-buttons{justify-content:start}.footer{flex-wrap:wrap}}
@media(max-width:600px){:root{--outer:20px}.header{gap:10px}.brand img{width:39px;height:39px}.brand b{font-size:13px}.brand small{font-size:7px;letter-spacing:.08em}.header-entry{font-size:10px;padding:10px 8px}.header-entry span{margin-left:5px}.menu-button{font-size:17px;padding:7px 10px}.hero{min-height:720px}.hero-copy{padding-top:105px;min-height:450px}.hero h1{font-size:clamp(48px,11.2vw,64px);white-space:normal}.hero-copy>p{font-size:13px}.hero-actions{gap:8px;margin-top:25px}.hero-actions .btn{min-width:0;flex:1;gap:8px;padding:13px 10px;font-size:10px;white-space:nowrap}.hero-meta{font-size:8px;gap:12px}.hero-visual{height:260px;min-height:260px;margin-bottom:55px}.hero-map-frame{min-height:0;height:100%}.visual-top,.hero-map-footer{left:10px;right:10px;font-size:7px}.visual-top{top:12px}.hero-map-footer{bottom:10px}.hero-map-label{padding:6px 7px;font-size:8px}.hero-map-label span{font-size:7px}.hero-map-label-a{left:28%;top:19%}.hero-map-label-b{right:4%;top:48%}.hero-map-label-c{left:22%;bottom:21%}.scroll-cue{font-size:8px}.section-inner{padding-top:72px;padding-bottom:80px}.section-top{margin-bottom:40px}.section-hint{display:none}.display{font-size:clamp(45px,12vw,64px)}.about-body{padding-top:0}.about-body .lead{font-size:23px}.about-body p{font-size:14px}.truth-strip{grid-template-columns:1fr;gap:20px;margin-top:48px}.truth-strip>div{padding-top:15px}.truth-strip strong{font-size:26px}.roleplay-demo{min-height:0}.demo-side,.demo-choices{padding:25px}.demo-side{min-height:315px}.scene-counter{font-size:90px;margin:15px 0}.demo-choices>.tiny{margin-bottom:6px}.choice{padding:16px 8px}.choice b{font-size:20px}.rp-terms{gap:4px 22px}.rp-terms p{font-size:10px}.career-menu{grid-template-columns:1fr 1fr;gap:0}.career-menu button{gap:8px;min-height:86px;padding:14px 5px}.career-menu button strong{font-size:16px}.career-menu button span{font-size:9px}.career-menu button i{display:none}.career-panel{min-height:400px;padding:24px}.career-content{left:24px;right:24px;bottom:55px}.career-content h3{font-size:35px}.career-content p{font-size:13px}.career-foot{right:24px;bottom:18px;font-size:8px}.career-mark{font-size:64px}.rule-list summary span{font-size:17px}.rules-intro{font-size:14px}.join-steps{grid-template-columns:1fr;gap:12px}.join-step{padding-bottom:14px;border-bottom:1px solid #ffffff22}.join-step b{font-size:44px}.join-step h3{font-size:20px}.join-cta{margin-top:35px}.join-code code{font-size:27px}.join-buttons{flex-direction:column}.join-buttons .btn{width:100%}.footer{font-size:10px;padding-top:26px;padding-bottom:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.reveal{opacity:1!important;transform:none!important}}

/* v7 independent art-direction / not based on domestic site layout */
:root{--bg:#090a10;--bg2:#161923;--paper:#f3eee9;--ink:#14131b;--rose:#ff69aa;--sand:#f5bfde;--muted:#a9a6b5;--line:#ffffff2a}
body{background:#090a10;color:#f5f0f2}
.header{background:rgba(9,10,16,.68);border-color:#ffffff16}
.header.is-solid{background:rgba(9,10,16,.96)}
.brand img{border-radius:50%;border:1px solid #f8a8cb;box-shadow:0 0 0 5px #ff69aa12,0 0 34px #ff69aa40}
.header-entry{border-radius:100px;background:#ec5d9a;color:#0e0d14;border-color:#ff86b9;padding-inline:22px;font-weight:800}
.header-entry:hover,.btn-primary:hover{background:#ffb4d6;color:#0d0d14}
.btn-primary{background:#ff83b7;color:#161019;border-radius:100px;border-color:#ff83b7}
.btn-outline{border-radius:100px;border-color:#ffb8d4aa}
.chapter a{height:2px;background:#ffebf288}.chapter a.active{background:#ff7eb6}
.eyebrow{color:#ff9bca}
.hero-bg{background:radial-gradient(circle at 77% 42%,#7229504f,transparent 40%),radial-gradient(circle at 20% 76%,#2e3e8242,transparent 35%),#090b14}
.hero-grid{opacity:.055;background-size:77px 77px}
.tag,.hero h1 em{color:#f8a9d0}
.hero-map-frame{border:1px solid #ffabd34a;box-shadow:0 45px 95px #000b,0 0 75px #fc5fa41a}
.hero-map-label{background:#100e19ee;border-color:#ff8bbd76}
.hero-map-label span{color:#ffa4cf}
.hero-meta{color:#ccaabc}
.about{background:#f4f1eb;color:#181721}.about .lead{color:#181721}.about-body .lead span{color:#cf4586}
.play{background:#101018}.play .eyebrow,.city .eyebrow,.join .eyebrow{color:#ff9fca}
.demo-side{background:#211928}.demo-side::after{border-color:#f59cca34;box-shadow:0 0 0 80px #ff75aa0a,0 0 0 160px #ff75aa09}
.scene-counter{color:#ff9dca}
.scene-progress span.active{background:#ff8fbd}
.demo-choices{background:#130e1a}.choice.selected{box-shadow:inset 3px 0 #ff7db3}
.city{background:#f1edea;color:#18131b}.city .section-hint{color:#706470}.city-heading p{color:#5d5861}
.career-menu{border-color:#777075}.career-menu button{border-color:#a79ba7;color:#201823}.career-menu button span{color:#756772}.career-menu button[aria-selected="true"],.career-menu button:hover{background:#ffc7e2;color:#23101e;border-bottom-color:#dd7ca9}
.career-panel{background:linear-gradient(130deg,#3a2047,#151019);color:#f4edee}.career-content a{color:#ffbae2;border-bottom-color:#ffbae2}.career-mark{color:#ffc6e92c}
.rules{background:#18131d;color:#eee5ef}.rules .section-top{border-color:#ffffff50}.rules-intro{color:#c5bbcb}.rules .text-link{color:#ffb6d9;border-color:#ffb6d9}.rule-list{border-color:#ffffff55}.rule-list details{border-color:#ffffff3e}.rule-list summary b{color:#ff97c9}.rule-list details p{color:#ccc0cb}
.join{background:#f6edf4;color:#1e1320}.join .section-hint{color:#6e5767}.join-heading p{color:#685666}.join-step p{color:#655561}.join-step b{color:#cc468a}.join-steps,.join-cta,.bottom-note{border-color:#bda0b7}.join-code small{color:#76636e}.join-code code{color:#bc3d7d}.join-code button{border-color:#bc3d7d;color:#a02f70}.join-code button:hover{background:#f4d3e5}.join .btn-outline{color:#291d29;border:1px solid #ab6f93}.join .btn-primary{color:#1b0c15;background:#ff83b7}.bottom-note{color:#6b5c68}.bottom-note a{color:#a52465}
.footer{background:#110d16}
/* interactive scroll theatre: entirely procedural visuals, no reused screenshots */
.story{background:#080910;color:#f9f3f5;overflow:clip}
.story-intro{min-height:62vh;padding:120px var(--outer) 80px;display:flex;flex-direction:column;justify-content:end}
.story-intro h2{font-size:clamp(45px,7vw,108px);line-height:1.08;letter-spacing:-.076em;margin:28px 0 25px;font-weight:890}
.story-intro h2 em{font-family:Georgia,"Times New Roman",serif;color:#ffa2cc;font-weight:400}
.story-intro p{font-size:clamp(14px,1.4vw,19px);line-height:1.85;color:#aea7bd;max-width:750px}
.story-rail{height:300vh;position:relative}
.story-stage{position:sticky;top:0;height:100svh;min-height:600px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 65% 33%,#31162f 0%,#111321 50%,#080910 85%)}
.story-art{position:absolute;inset:-20%;z-index:-1;perspective:1000px;transform:scale(1.03);will-change:transform;transition:background .6s;background:radial-gradient(circle at 55% 50%,#fa72b223,transparent 25%),repeating-linear-gradient(75deg,#ffffff08 0 1px,transparent 1px 110px)}
.story-art::before{content:"";position:absolute;width:min(65vw,790px);height:min(65vw,790px);border:1px solid #fc9cdb55;transform:rotate(35deg) skew(-12deg);left:40%;top:5%;box-shadow:0 0 0 55px #ff69a30a,0 0 0 110px #ff69a307,0 0 0 170px #ff69a305}
.story-art::after{content:"";position:absolute;right:19%;top:14%;width:230px;height:230px;border:1px solid #ffadd877;border-radius:100%;box-shadow:0 0 120px #ff78c92d;background:radial-gradient(circle,#fc7fb942,transparent 64%)}
.story-art[data-act="1"]{background:radial-gradient(circle at 65% 46%,#8492ff4b,transparent 29%),repeating-linear-gradient(130deg,#ffffff09 0 2px,transparent 2px 110px)}
.story-art[data-act="2"]{background:radial-gradient(circle at 57% 35%,#fdb77542,transparent 25%),repeating-linear-gradient(15deg,#ffffff08 0 2px,transparent 2px 105px)}
.story-orbit{position:absolute;display:block;border:2px solid #ffc0dc2e;border-radius:50%;width:480px;height:480px;right:11%;top:15%;transform:rotateX(68deg) rotate(15deg);box-shadow:0 0 80px #ff70af17}.story-orbit.b{width:700px;height:700px;top:5%;right:3%;transform:rotateY(40deg)}
.story-line{position:absolute;background:#ffb5d143;box-shadow:0 0 22px #ff94c538}.story-line.v1{width:2px;height:100%;top:0;left:54%}.story-line.v2{width:2px;height:100%;top:0;left:63%}.story-line.h1{width:100%;height:2px;top:55%;left:0}.story-mark{position:absolute;width:35px;height:35px;left:58%;top:45%;transform:rotate(45deg);background:#ff8aba;box-shadow:0 0 22px #ff78c9,0 0 110px #ff78c966}
.story-echo{font-size:clamp(220px,27vw,480px);letter-spacing:-.15em;font-weight:900;color:#ffffff05;position:absolute;right:8%;top:16%;white-space:nowrap}
.story-overlay{height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(92px,11vh,130px) var(--outer) 42px;background:linear-gradient(90deg,#080910dc,transparent 90%),linear-gradient(0deg,#080910db,transparent 38%)}
.story-top,.story-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;font:11px ui-monospace,monospace;letter-spacing:.16em;color:#dcbdd3}
.story-body{max-width:930px;position:relative;z-index:1}
.story-body>span{font:650 12px ui-monospace,monospace;color:#ffa2ce;letter-spacing:.15em}
.story-body h3{font-size:clamp(50px,8.5vw,132px);line-height:1.08;font-weight:880;letter-spacing:-.08em;margin:24px 0}
.story-body p{font-size:clamp(15px,1.4vw,19px);line-height:1.95;color:#e5dfe9;max-width:720px}
.story-steps{display:flex;gap:8px}.story-steps i{display:block;width:52px;height:3px;background:#ffffff55;transition:background .4s,transform .4s}.story-steps i.active{background:#ff91c1;transform:scaleY(1.5)}
.story::selection{background:#ff83b7;color:#110d16}
@media(max-width:900px){.story-intro{min-height:48vh;padding-top:90px}.story-stage{min-height:490px}.story-art::before{left:10%}.story-overlay{padding-top:94px}.story-rail{height:250vh}}
@media(max-width:600px){.story-intro{min-height:410px;padding:70px var(--outer) 60px}.story-intro h2{font-size:43px}.story-overlay{padding:110px var(--outer) 30px}.story-body h3{font-size:clamp(45px,12vw,62px)}.story-top,.story-bottom{font-size:8px}.story-bottom>span{display:none}.story-orbit{width:280px;height:280px;right:-18%}.story-orbit.b{width:410px;height:410px;right:-42%}.story-art::before{width:370px;height:370px;left:12%;top:22%}.story-art::after{right:-12%;top:30%}.story-body p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.story-rail{height:auto}.story-stage{position:relative;min-height:600px}.story-art{transform:none!important}}
