:root{color-scheme:dark;--bg:#040914;--bg2:#07101f;--panel:rgba(10,20,38,.82);--panel2:rgba(15,29,51,.76);--line:rgba(153,181,233,.18);--line2:rgba(164,193,255,.32);--text:#f7f9ff;--muted:#a9b6cf;--soft:#d9e2f2;--blue:#7ea2ff;--blue2:#456fe2;--gold:#d7b06a;--green:#63d596;--danger:#e87786;--shadow:0 28px 80px rgba(0,0,0,.42);--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:radial-gradient(circle at 77% -10%,rgba(60,102,188,.16),transparent 38%),linear-gradient(180deg,#040914,#07101f 60%,#040914);color:var(--text);font-family:var(--sans);min-height:100vh}body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.013) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.009) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 75%);z-index:-1}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.container{width:min(1240px,calc(100% - 32px));margin:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hidden{display:none!important}.eyebrow{font-size:.76rem;letter-spacing:.19em;text-transform:uppercase;font-weight:800;color:#a7bce4}.serif{font-family:var(--serif)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(4,9,20,.83);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;flex-direction:column;gap:2px;min-width:0}.brand img{width:225px;height:auto}.brand-kicker{font-size:.68rem;letter-spacing:.12em;color:#93a6c7;margin-left:8px}.nav{display:flex;align-items:center;gap:8px}.nav-link,.icon-button,.pill-button{border:1px solid transparent;background:transparent;color:var(--soft);border-radius:999px;min-height:43px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.22s ease}.nav-link:hover,.icon-button:hover,.pill-button:hover{border-color:var(--line2);background:rgba(126,162,255,.08)}.icon-button{border-color:var(--line);background:rgba(255,255,255,.025)}.icon-button[aria-pressed="true"]{background:rgba(90,132,228,.16);border-color:rgba(126,162,255,.45)}.mobile-only{display:none}
.hero{position:relative;min-height:680px;display:grid;align-items:end;overflow:hidden;border-bottom:1px solid var(--line)}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,7,15,.98) 0%,rgba(3,7,15,.87) 34%,rgba(3,7,15,.36) 70%,rgba(3,7,15,.48)),linear-gradient(0deg,#040914 0%,transparent 45%,rgba(3,7,15,.26) 100%)}.hero-content{position:relative;z-index:2;padding:135px 0 84px;max-width:690px}.hero h1{font-family:var(--serif);font-size:clamp(3.4rem,7vw,6.8rem);line-height:.93;letter-spacing:-.045em;margin:22px 0 26px}.hero h1 .accent{background:linear-gradient(90deg,#f3f7ff,#8caeff);background-clip:text;color:transparent}.hero p{font-size:clamp(1.02rem,2vw,1.27rem);line-height:1.75;color:#c2cee2;max-width:650px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.primary,.secondary,.gold-button{min-height:54px;padding:0 22px;border-radius:14px;border:1px solid transparent;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.22s ease}.primary{color:white;background:linear-gradient(135deg,#678eef,#4269ce);box-shadow:0 12px 35px rgba(56,94,189,.32)}.primary:hover{transform:translateY(-2px);filter:brightness(1.08)}.secondary{color:#f3f6ff;border-color:var(--line2);background:rgba(5,11,22,.55)}.secondary:hover{background:rgba(126,162,255,.1)}.gold-button{color:#17120a;background:linear-gradient(135deg,#f0ce87,#b98a3c)}.hero-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.chip{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(6,13,26,.55);font-size:.84rem;color:#b7c5dc}
.section{padding:86px 0}.section-tight{padding:52px 0}.section-heading{display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:32px}.section-heading h2{font-family:var(--serif);font-size:clamp(2.2rem,5vw,4.1rem);line-height:1;margin:10px 0}.section-heading p{color:var(--muted);line-height:1.7;max-width:540px}.session-label{display:flex;gap:12px;align-items:center}.status-badge{font-size:.7rem;letter-spacing:.08em;font-weight:900;padding:7px 10px;border-radius:999px;border:1px solid}.status-free{color:#a8f2c7;border-color:rgba(99,213,150,.35);background:rgba(44,139,89,.14)}.status-coming{color:#bdc9dd;border-color:var(--line);background:rgba(255,255,255,.04)}.status-premium{color:#f1d89e;border-color:rgba(215,176,106,.38);background:rgba(215,176,106,.11)}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.story-card{position:relative;overflow:hidden;min-height:430px;border-radius:22px;border:1px solid var(--line);background:#09101d;box-shadow:var(--shadow);isolation:isolate}.story-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,7,14,.97),rgba(3,7,14,.04) 73%);z-index:1}.story-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.story-card:hover>img{transform:scale(1.045)}.story-card-content{position:absolute;z-index:2;inset:auto 0 0;padding:24px}.story-card h3{font-family:var(--serif);font-size:2rem;margin:9px 0 6px}.story-card p{margin:0;color:#b7c3d7;line-height:1.55}.story-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.story-actions{margin-top:18px;display:flex;gap:10px}.story-play{flex:1;min-height:45px;border:none;border-radius:12px;background:rgba(112,151,244,.92);color:#fff;font-weight:800;cursor:pointer}.story-detail{width:46px;border-radius:12px;border:1px solid var(--line2);background:rgba(4,9,18,.6);color:#fff;display:grid;place-items:center}.story-card.locked{filter:saturate(.65)}.story-card.locked::before{content:"";position:absolute;inset:0;background:rgba(3,7,15,.25);z-index:1}.story-card.locked .story-play{background:rgba(255,255,255,.1);color:#bac3d2}.card-progress{height:3px;background:rgba(255,255,255,.13);border-radius:99px;overflow:hidden;margin-top:15px}.card-progress span{display:block;height:100%;background:linear-gradient(90deg,#6e96ff,#b0c5ff)}
.session-stack{display:grid;gap:18px}.session-panel{border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(13,26,47,.82),rgba(6,13,25,.78));overflow:hidden}.session-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px 23px;cursor:pointer}.session-summary h3{font-family:var(--serif);font-size:1.55rem;margin:4px 0}.session-summary p{margin:0;color:var(--muted)}.session-price{text-align:right;white-space:nowrap}.session-price strong{display:block;font-size:1.25rem;color:#efd28f}.session-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line)}.session-story{background:#08101e;padding:20px;min-height:105px}.session-story strong{display:block;margin-bottom:7px}.session-story span{color:var(--muted);font-size:.9rem}.coming-note{border:1px solid var(--line);border-radius:16px;padding:18px 20px;background:rgba(126,162,255,.05);color:#b8c4d9;line-height:1.7}
.brand-strip{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;border:1px solid var(--line);border-radius:28px;padding:34px;background:linear-gradient(135deg,rgba(21,39,68,.78),rgba(5,11,21,.82));overflow:hidden}.brand-strip h2{font-family:var(--serif);font-size:clamp(2rem,4vw,3.8rem);margin:8px 0 18px}.brand-strip p{color:var(--muted);line-height:1.75}.brand-strip .visual{display:flex;justify-content:center}.brand-strip img{width:min(430px,100%);filter:drop-shadow(0 24px 40px rgba(0,0,0,.35))}
.site-footer{padding:38px 0 55px;border-top:1px solid var(--line);color:#97a7c1}.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-links{display:flex;flex-wrap:wrap;gap:18px}.footer-links a:hover{color:#fff}
/* Game */
.game-body{background:#030812}.game-shell{min-height:100vh}.game-header{position:sticky;top:0;z-index:30;background:rgba(3,8,18,.86);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.game-header-inner{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:12px}.game-mini-logo{width:170px}.back-link{display:inline-flex;gap:8px;align-items:center;color:#c4cee0}.game-cover{min-height:calc(100vh - 70px);display:grid;align-items:end;position:relative;overflow:hidden}.cover-media{position:absolute;inset:0}.cover-media img{width:100%;height:100%;object-fit:cover}.cover-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#030812 3%,rgba(3,8,18,.7) 43%,rgba(3,8,18,.2)),linear-gradient(90deg,rgba(3,8,18,.72),transparent 70%)}.cover-content{position:relative;z-index:2;padding:90px 0 70px;max-width:740px}.cover-content h1{font-family:var(--serif);font-size:clamp(3.1rem,8vw,6.4rem);line-height:.96;margin:15px 0}.cover-content .subtitle{font-size:1.18rem;color:#ced7e7;line-height:1.7}.cover-stats{display:flex;flex-wrap:wrap;gap:9px;margin:21px 0 30px}.cover-controls{display:flex;flex-wrap:wrap;gap:12px}.start-button{min-width:210px}.resume-note{margin-top:14px;color:#9fb0ca;font-size:.92rem}
.play-stage{padding:34px 0 85px}.play-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);gap:26px;align-items:start}.scene-visual{position:sticky;top:103px;border:1px solid var(--line);border-radius:23px;overflow:hidden;background:#070e1a;box-shadow:var(--shadow)}.scene-image-wrap{aspect-ratio:16/10;position:relative;overflow:hidden}.scene-image{width:100%;height:100%;object-fit:cover;transition:opacity .25s,transform 1.2s}.scene-image.changing{opacity:.28;transform:scale(1.02)}.scene-image-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,8,17,.86),transparent 45%)}.scene-caption{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;color:#dce5f4;font-size:.86rem}.progress-wrap{padding:17px 19px;background:#07101f}.progress-row{display:flex;justify-content:space-between;gap:10px;color:#9dacC5;font-size:.8rem}.progress-track{height:4px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden;margin-top:9px}.progress-track span{height:100%;display:block;background:linear-gradient(90deg,#668ee9,#a8bfff);transition:width .35s}.scene-card{border:1px solid var(--line);border-radius:23px;background:linear-gradient(160deg,rgba(12,24,43,.93),rgba(5,11,21,.95));padding:27px;box-shadow:var(--shadow)}.scene-route{font-size:.71rem;letter-spacing:.17em;text-transform:uppercase;color:#8ea6d3;font-weight:800}.scene-card h2{font-family:var(--serif);font-size:clamp(2rem,4vw,3.25rem);line-height:1.03;margin:11px 0 21px}.narration p{color:#e0e6f1;line-height:1.78;margin:0 0 14px;font-size:1.02rem}.narration p:first-child:has(+p){color:#a9bbda}.choices{display:grid;gap:11px;margin-top:24px}.choice{width:100%;text-align:left;border:1px solid rgba(160,187,236,.2);border-radius:14px;background:rgba(255,255,255,.025);color:#f1f5fc;padding:15px 16px;min-height:57px;display:flex;gap:12px;align-items:flex-start;cursor:pointer;transition:.2s}.choice:hover:not(:disabled){border-color:rgba(126,162,255,.7);background:rgba(126,162,255,.09);transform:translateY(-1px)}.choice-letter{width:27px;height:27px;flex:0 0 27px;display:grid;place-items:center;border-radius:50%;background:rgba(126,162,255,.12);color:#adc2f3;font-weight:800;font-size:.78rem}.choice:disabled{cursor:default;opacity:.55}.choice.selected{border-color:#7ea2ff;background:rgba(89,126,219,.16);opacity:1}.choice.locked{border-style:dashed}.choice small{display:block;color:#91a1ba;margin-top:6px}.consequence{margin-top:18px;padding:18px;border-radius:15px;border:1px solid rgba(126,162,255,.28);background:rgba(72,105,180,.1);line-height:1.7;color:#dce5f4}.continue-button{width:100%;margin-top:14px}.scene-toolbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:14px}.scene-toolbar button{font-size:.82rem}.ending-panel{max-width:900px;margin:0 auto}.ending-hero{position:relative;min-height:420px;border-radius:25px;overflow:hidden;border:1px solid var(--line);display:flex;align-items:end;box-shadow:var(--shadow)}.ending-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ending-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#050b16,transparent 70%)}.ending-heading{position:relative;z-index:2;padding:28px}.ending-heading h1{font-family:var(--serif);font-size:clamp(2.8rem,7vw,5.4rem);line-height:.95;margin:9px 0}.ending-content{margin-top:22px;border:1px solid var(--line);border-radius:22px;background:var(--panel);padding:25px}.ending-content .narration p{font-size:1.06rem}.result-callout{margin-top:22px;padding:20px;border-left:3px solid var(--blue);background:rgba(126,162,255,.07);border-radius:0 14px 14px 0}.result-callout h3{margin:0 0 8px}.result-callout p{margin:7px 0;color:#bcc8da;line-height:1.6}.score-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin-top:20px}.score-card{border:1px solid var(--line);border-radius:13px;padding:13px;background:rgba(255,255,255,.025)}.score-card span{font-size:.75rem;color:#97a8c4}.score-card strong{display:block;font-size:1.35rem;margin:5px 0}.score-bar{height:3px;background:rgba(255,255,255,.1);border-radius:99px}.score-bar i{display:block;height:100%;background:linear-gradient(90deg,#668ee9,#acc2ff)}.ending-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}.ending-actions>*{flex:1;min-width:180px}.archetype{margin-top:18px;color:#d7e2f4}.toast{position:fixed;left:50%;bottom:28px;translate:-50% 20px;opacity:0;z-index:100;background:#121e33;border:1px solid var(--line2);padding:12px 17px;border-radius:999px;box-shadow:var(--shadow);transition:.25s;pointer-events:none}.toast.show{opacity:1;translate:-50% 0}
/* SEO story landing */
.story-page-hero{min-height:620px;position:relative;display:grid;align-items:end}.story-page-hero .cover-media::after{background:linear-gradient(90deg,rgba(3,8,18,.96),rgba(3,8,18,.35)),linear-gradient(0deg,#040914,transparent 55%)}.story-page-content{position:relative;z-index:2;padding:130px 0 70px;max-width:730px}.story-page-content h1{font-family:var(--serif);font-size:clamp(3.3rem,7vw,6.8rem);line-height:.94;margin:15px 0}.spoiler-free{max-width:800px}.faq{display:grid;gap:12px}.faq details{border:1px solid var(--line);border-radius:15px;padding:16px 18px;background:rgba(255,255,255,.025)}.faq summary{cursor:pointer;font-weight:800}.faq p{color:var(--muted);line-height:1.7}
@media(max-width:960px){.nav-link{display:none}.story-grid{grid-template-columns:1fr 1fr}.story-card:last-child{grid-column:1/-1}.brand-strip{grid-template-columns:1fr}.play-layout{grid-template-columns:1fr}.scene-visual{position:relative;top:auto}.score-grid{grid-template-columns:repeat(3,1fr)}.session-list{grid-template-columns:1fr}.mobile-only{display:inline-flex}.hero{min-height:620px}}
@media(max-width:680px){.container{width:min(100% - 22px,1240px)}.header-inner{min-height:68px}.brand img{width:160px}.brand-kicker{display:none}.nav{gap:6px}.icon-button{padding:0 11px}.hero{min-height:670px;align-items:end}.hero-content{padding:112px 0 57px}.hero h1{font-size:3.65rem}.hero p{font-size:1rem;line-height:1.65}.hero-actions>*{width:100%}.section{padding:62px 0}.section-heading{display:block}.story-grid{grid-template-columns:1fr}.story-card,.story-card:last-child{grid-column:auto;min-height:405px}.session-summary{align-items:flex-start}.session-price{font-size:.8rem}.brand-strip{padding:23px}.footer-inner{display:block}.footer-links{margin-top:18px}.game-header-inner{min-height:62px}.game-mini-logo{width:135px}.cover-content{padding:85px 0 46px}.cover-content h1{font-size:3.5rem}.cover-controls>*{width:100%}.play-stage{padding:18px 0 60px}.scene-card{padding:20px}.scene-card h2{font-size:2.3rem}.scene-image-wrap{aspect-ratio:4/3}.score-grid{grid-template-columns:1fr 1fr}.ending-actions>*{width:100%}.story-page-content{padding:105px 0 52px}.story-page-content h1{font-size:3.75rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.story-card:hover>img{transform:none}}
