
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--bg:#101214;--panel:#191c1e;--text:#f1f1e9;--muted:#9b9e98;--line:#ffffff20;--acid:#d3ed9d;--pink:#e9b3c3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;font:inherit;border:0;background:none}a{color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--acid);outline-offset:5px}header{height:82px;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{text-decoration:none;font:800 38px Manrope;letter-spacing:-3px;display:flex;align-items:center;gap:25px}.brand span{font:9px 'DM Sans';letter-spacing:2px;color:var(--muted)}nav{display:flex;gap:22px}nav button{font-size:11px;color:#c1c4be}nav button:hover{color:var(--acid)}main{min-height:calc(100vh - 145px)}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 5vw;font-size:9px;letter-spacing:1px;color:#848a85;border-top:1px solid var(--line)}footer button{font-size:10px}.eyebrow{font:10px 'DM Sans';letter-spacing:2.8px;color:var(--acid);text-transform:uppercase}.landing{padding:45px 5vw 0;max-width:1600px;margin:auto}.landing-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.landing h1{font:600 clamp(48px,6.5vw,100px)/.97 Manrope;letter-spacing:-5px;margin:20px 0 28px}.landing h1 em{font-style:normal;color:var(--acid)}.landing-top p{font-size:12px;line-height:1.9;color:var(--muted);max-width:280px;margin-bottom:30px}.landing-top p strong{color:#ddd;font-weight:400}.routes{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:15px}.route{height:420px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:3px;isolation:isolate;cursor:pointer}.route>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 33%;transition:transform .7s;z-index:-3}.route:hover>img{transform:scale(1.035)}.route:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#090c0ff5,transparent 90%),linear-gradient(90deg,#10121470,transparent);z-index:-1}.route-meta{position:absolute;left:25px;right:25px;top:22px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#e6eadc}.route-copy{position:absolute;bottom:28px;left:30px;right:30px}.route-copy h2{font:600 clamp(32px,3.6vw,52px)/1.12 Manrope;letter-spacing:-2px;margin:10px 0}.route-copy h2 small{font-size:20px;font-weight:400;color:var(--acid)}.route-copy p{font-size:12px;color:#c1c6bc;line-height:1.8;max-width:350px}.btn{border:1px solid #fff5;padding:12px 18px;border-radius:3px;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none}.btn:hover{border-color:var(--acid);color:var(--acid)}.btn.primary{background:var(--acid);color:#172014;border:1px solid var(--acid)}.landing-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 30px;color:var(--muted);font-size:10px}.cast-strip{display:flex;align-items:center;gap:0}.cast-strip img{height:34px;width:34px;object-fit:cover;border:3px solid var(--bg);border-radius:50%;margin-right:-6px}.cast-strip span{margin-left:18px}.disclaimer{font-size:10px;color:#8e958d;max-width:900px;line-height:1.7;padding-bottom:25px}.game{position:relative;min-height:calc(100vh - 82px);isolation:isolate;overflow:hidden;background:#111}.backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.26;filter:blur(5px);z-index:-4;animation:reveal .6s}.game:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#091015db 0%,#09101535 55%,#09101540),linear-gradient(0deg,#080d10 0%,transparent 65%);z-index:-2}.scene-top{padding:25px 4vw;display:flex;justify-content:space-between;gap:20px}.scene-location strong{font:600 17px Manrope;display:block;margin:10px 0}.scene-location span{color:#b9beb5;font-size:10px}.affinity{width:200px}.affinity>div:first-child{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:var(--acid)}.track{margin:12px 0;background:#fff2;height:3px}.track i{display:block;height:3px;background:var(--acid);transition:width .6s}.stat-small{display:flex;justify-content:space-between;font-size:9px;color:#b4bab0}.cast-rail{display:flex;gap:10px;position:relative;z-index:4;margin:15px 4vw}.cast-token{border-radius:50%;padding:0;width:48px;height:48px;opacity:.6;border:2px solid #fff4}.cast-token img{height:100%;width:100%;border-radius:50%;object-fit:cover}.cast-token.active{opacity:1;border-color:var(--acid);box-shadow:0 0 20px #d3ed9d22}.scene-art{position:absolute;right:0;top:70px;width:57%;height:64%;z-index:-1;mask-image:linear-gradient(0deg,transparent,#000 35%),linear-gradient(90deg,transparent,#000 25%);mask-composite:intersect}.scene-art img{width:100%;height:100%;object-fit:cover;object-position:center 28%;animation:reveal .5s}.scene-art .photo-credit{position:absolute;bottom:35%;right:25px;writing-mode:vertical-rl;font-size:8px;letter-spacing:1.8px;color:#fff8}.chapter-title{margin:15px 4vw 0;max-width:50%;min-height:155px;position:relative;z-index:1}.chapter-title h1{font:500 clamp(30px,4vw,57px)/1.1 Manrope;letter-spacing:-2px;margin:15px 0 20px}.chapter-title p{font-size:11px;color:#c7cfc1;line-height:1.8;max-width:300px}.dialogue-wrap{max-width:1080px;margin:0 auto;padding:0 35px 28px;position:relative;z-index:5}.dialogue{background:#101619ed;backdrop-filter:blur(18px);border:1px solid #c0d8b336;border-top:2px solid var(--acid);padding:25px 30px;box-shadow:0 25px 80px #0007;min-height:190px}.speaker{display:flex;gap:14px;align-items:center;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--acid)}.speaker img{width:30px;height:30px;border-radius:50%;object-fit:cover}.dialogue p{font-size:16px;line-height:1.9;margin:15px 0 22px;min-height:60px;max-width:870px}.dialogue .advance{display:flex;justify-content:flex-end}.choices{display:grid;gap:8px}.choice{display:flex;align-items:center;gap:16px;text-align:left;background:#ffffff06;border:1px solid #fff2;padding:14px 17px;transition:all .2s;line-height:1.7;font-size:13px}.choice:hover{background:#d3ed9d12;border-color:var(--acid)}.choice b{font-size:9px;color:var(--acid);font-weight:400}.hint{font-size:9px;color:#929f90;letter-spacing:1px;display:flex;justify-content:space-between;margin-top:14px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;font-size:10px;color:#c2caba}.toolbar>div{display:flex;gap:18px}.toolbar button{font-size:10px}.phone-scene .dialogue{max-width:570px;margin-left:auto;margin-right:auto;border-radius:20px;background:#1c2327}.phone-scene .dialogue p{background:#323d34;border-radius:0 12px 12px 12px;padding:18px;font-size:15px}.ending{min-height:75vh;position:relative;isolation:isolate;padding:70px 10vw}.ending img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.2}.ending:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101214,transparent);z-index:-1}.ending h1{font:500 clamp(40px,5vw,70px)/1.1 Manrope;max-width:700px;letter-spacing:-3px}.ending p{line-height:1.9;max-width:630px;color:#bcc4b7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.summary-stats{display:flex;gap:30px;margin-top:25px;color:var(--acid);font-size:11px}.ending-memory{font-size:12px!important;border-left:1px solid var(--acid);padding-left:20px}dialog{color:var(--text);background:#181d20;border:1px solid #ffffff30;max-width:980px;width:92%;max-height:88vh;padding:40px;box-shadow:0 30px 90px #0008}dialog::backdrop{background:#000b;backdrop-filter:blur(10px)}dialog #close{position:absolute;right:15px;top:10px;font-size:28px;color:#b9c0b4}dialog h2{font:500 34px Manrope;letter-spacing:-1px;margin:13px 0 20px}dialog h3{font:500 20px Manrope}dialog p{line-height:1.9;color:#b4beb0}.muted{color:var(--muted);font-size:12px}.cast-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.person-card{background:#111619;text-align:left;border:1px solid var(--line);padding:0;overflow:hidden}.person-card img{height:180px;width:100%;object-fit:cover;transition:transform .4s}.person-card:hover img{transform:scale(1.04)}.person-card span{display:block;padding:15px;font-size:12px}.person-card small{display:block;color:var(--acid);font-size:7px;letter-spacing:1px;margin-top:6px}.profile{display:grid;grid-template-columns:38% 1fr;gap:30px}.profile img{width:100%;max-height:430px;object-fit:cover}.profile .label{font-size:8px;color:var(--acid);letter-spacing:2px;margin:22px 0 0}.profile p{font-size:13px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gallery button{padding:0;background:#101517;text-align:left;border:1px solid var(--line)}.gallery img{width:100%;height:160px;object-fit:cover}.gallery span{display:block;font-size:10px;line-height:1.6;padding:12px}.gallery .locked{height:160px;display:grid;place-items:center;background:#111719;color:#7e8c78;font-size:9px;letter-spacing:1px}.full-photo{width:100%;max-height:60vh;object-fit:contain;background:#0b1012}.entry{border-bottom:1px solid var(--line);padding:18px 0;font-size:12px;line-height:1.9}.entry strong{color:var(--acid);display:block;font-weight:400}.entry p{margin:8px 0}.inventory{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.inventory span{border:1px solid var(--line);padding:10px;font-size:10px;color:#d3ed9d}.chat{margin:20px 0;border:1px solid var(--line);padding:20px}.chat strong{color:var(--acid);font-size:12px}.chat p{font-size:13px;background:#263129;padding:15px;max-width:75%;border-radius:0 10px 10px 10px}.chat .mine{margin-left:auto;background:#30383e}.source-list{font-size:12px;line-height:2;color:#a8b8a1}.source-list a{color:var(--acid)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;background:var(--acid);color:#182016;padding:13px 23px;font-size:11px;z-index:30;transition:all .25s;pointer-events:none;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}.setting{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px}.setting select{background:#252e27;color:#eee;padding:10px;border:1px solid var(--line)}@keyframes reveal{from{opacity:.3;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:700px){header{height:70px;padding:0 20px}.brand{font-size:32px}.brand span{display:none}nav{gap:14px}nav button{font-size:9px}.landing{padding:30px 20px 0}.landing-top{display:block}.landing h1{font-size:58px;letter-spacing:-3px}.landing-top p{max-width:360px;margin-bottom:24px}.routes{grid-template-columns:1fr}.route{height:390px}.route-copy h2{font-size:42px}.landing-bottom{align-items:flex-start;flex-direction:column}.disclaimer{font-size:9px}.scene-top{padding:20px}.scene-location strong{font-size:14px}.affinity{width:135px}.stat-small{font-size:7px}.scene-art{top:110px;width:80%;height:390px;right:-12%;opacity:.75}.chapter-title{margin:10px 20px;min-height:190px;max-width:80%}.chapter-title h1{font-size:37px;max-width:260px;text-shadow:0 2px 20px #000}.chapter-title p{font-size:10px;max-width:170px}.cast-rail{margin:5px 20px}.cast-token{height:36px;width:36px}.dialogue-wrap{padding:0 12px 22px}.dialogue{padding:20px;min-height:215px}.dialogue p{font-size:14px;line-height:1.85}.toolbar{padding:0 5px;gap:8px;flex-wrap:wrap;font-size:9px}.toolbar>div{gap:12px}.choice{font-size:12px;padding:12px}.cast-grid{grid-template-columns:repeat(2,1fr)}.person-card img{height:160px}.gallery{grid-template-columns:1fr 1fr}.gallery img,.gallery .locked{height:130px}dialog{padding:30px 20px}dialog h2{font-size:28px}.profile{grid-template-columns:1fr}.profile img{max-height:300px}.ending{padding:45px 25px}.ending h1{font-size:45px}footer{padding:20px;flex-wrap:wrap;font-size:8px;gap:15px}.summary-stats{gap:15px;font-size:9px}}
