:root{--ink:#f0eee5;--muted:#b7c0bd;--gold:#d3b275;--deep:#101b22;--glass:rgba(12,23,29,.68);--line:rgba(226,232,221,.19);--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next","Segoe UI",sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--deep);color:var(--ink);font-family:var(--sans)}button{font:inherit;color:inherit}button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}canvas{position:fixed;inset:0;display:block;touch-action:none}button{cursor:pointer}#poster{position:fixed;inset:0;background:radial-gradient(ellipse at 65% 35%,#6f7d79 0,#263b45 35%,#101b22 75%);z-index:0}.poster-ark{position:absolute;width:48vw;height:18vw;right:8vw;top:38%;background:#3b2c20;clip-path:polygon(0 0,100% 0,85% 100%,15% 100%)}#loading{position:fixed;inset:0;z-index:20;background:#101b22;display:grid;place-content:center;text-align:center;transition:opacity .6s;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.loader-mark{width:44px;height:44px;border:1px solid var(--line);border-top-color:var(--gold);border-radius:50%;margin:auto;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loaded #loading{opacity:0;pointer-events:none}.loaded #poster{display:none}.topbar{position:fixed;z-index:5;top:0;left:0;width:100%;padding:26px 38px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.topbar button{pointer-events:auto}.brand{border:0;background:none;display:flex;gap:12px;align-items:center;text-align:left;padding:0;font-size:15px;letter-spacing:.28em;font-weight:600}.brand small{display:block;font-size:8px;letter-spacing:.18em;color:var(--muted);margin-top:5px}.brand-mark{display:grid;place-content:center;width:37px;height:37px;border:1px solid var(--gold);border-radius:50%;font:italic 23px var(--serif);color:var(--gold)}.top-actions{display:flex;gap:8px}.icon-btn{height:42px;padding:0 13px;display:flex;align-items:center;gap:8px;background:#0b161c66;border:1px solid var(--line);border-radius:22px;backdrop-filter:blur(12px);font-size:11px;text-transform:uppercase;letter-spacing:.1em;transition:background .2s}.icon-btn:hover{background:#d3b27526}.icon-btn svg,.primary-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.story-panel{position:fixed;z-index:3;left:6.5vw;top:50%;transform:translateY(-53%);width:min(420px,36vw);pointer-events:none}.story-panel>*{pointer-events:auto}.eyebrow{font-size:10px;letter-spacing:.25em;color:var(--gold);font-weight:600;margin:0 0 20px}h1{font:normal clamp(48px,5vw,72px)/.92 var(--serif);letter-spacing:-.045em;margin:0 0 24px;text-shadow:0 2px 28px #0b151a}h1 em{font-weight:400;color:#ded6c2}h1 br{display:block}.chapter-copy{font-size:14px;line-height:1.75;color:#d0d5d1;max-width:390px;margin:0 0 24px;text-shadow:0 1px 12px #0b151a}blockquote{font:italic 16px/1.65 var(--serif);margin:0;padding-left:16px;border-left:1px solid var(--gold);max-width:390px;color:#ece9dd;text-shadow:0 1px 12px #0b151a}.verse-ref{font-size:9px;letter-spacing:.2em;color:var(--muted);margin:10px 0 26px 17px}.primary-btn{display:inline-flex;align-items:center;gap:30px;border:1px solid rgba(211,178,117,.6);border-radius:2px;background:#0f1c219e;backdrop-filter:blur(8px);padding:14px 18px;text-transform:uppercase;font-size:10px;letter-spacing:.15em;transition:background .2s,transform .2s}.primary-btn:hover{background:#d3b2752e;transform:translateY(-2px)}.journey{position:fixed;z-index:4;bottom:0;left:0;right:0;padding:0 38px 24px;background:linear-gradient(transparent,#070f13d1);pointer-events:none}.journey>*{pointer-events:auto}.journey-head{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.2em;color:var(--muted);margin-bottom:9px}.chapter-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.chapter{position:relative;display:flex;align-items:center;gap:14px;text-align:left;border:0;border-top:1px solid var(--line);background:none;padding:15px 8px 0;color:#9ba7a5;transition:color .2s}.chapter:before{content:"";position:absolute;height:2px;left:0;right:100%;top:-1px;background:var(--gold);transition:right .4s}.chapter:hover,.chapter.active{color:var(--ink)}.chapter.active:before{right:0}.chapter-number{font:italic 23px var(--serif);color:var(--gold)}.chapter b{display:block;font:15px var(--serif);letter-spacing:.02em}.chapter small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-top:4px;color:#9ba7a5}.scene-label{position:fixed;right:38px;top:100px;z-index:3;display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#d0d5d1;pointer-events:none}.pulse{width:5px;height:5px;background:var(--gold);border-radius:50%;box-shadow:0 0 0 5px #d3b27521}#hotspots{position:fixed;inset:0;z-index:3;pointer-events:none}.hotspot{position:absolute;width:30px;height:30px;border:1px solid rgba(255,255,255,.8);background:#0f1c2199;border-radius:50%;color:#fff;pointer-events:auto;font:16px var(--serif);backdrop-filter:blur(5px);box-shadow:0 0 0 6px #ffffff14;transition:transform .2s}.hotspot:hover{transform:scale(1.15)}.detail-card{position:fixed;z-index:7;right:5vw;top:50%;transform:translateY(-50%);width:min(330px,85vw);padding:30px;background:#0c181ee6;border:1px solid var(--line);backdrop-filter:blur(20px);box-shadow:0 20px 80px #061014}.detail-card h2,dialog h2{font:32px var(--serif);margin:0 0 15px}.detail-card p:not(.eyebrow){font-size:14px;line-height:1.7;color:#ccd3cf}.close-btn{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px;font-weight:200;color:var(--muted);width:38px;height:38px}.detail-card[hidden]{display:none}dialog{color:var(--ink);background:#12232b;border:1px solid var(--line);padding:40px;max-width:620px;width:calc(100% - 40px);max-height:85vh;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#040c10bf;backdrop-filter:blur(8px)}dialog p{font-size:14px;line-height:1.7;color:#c6cfcb}dialog h3{font:20px var(--serif);color:var(--gold);margin-top:24px}.rights-line{padding:14px;border-left:1px solid var(--gold);background:#ffffff06}.fine-print{font-size:11px!important;color:#9fadaa!important}@media(max-width:800px){.topbar{padding:18px}.brand small,.icon-btn span{display:none}.icon-btn{width:42px;padding:0;justify-content:center}.story-panel{left:22px;top:auto;bottom:142px;transform:none;width:calc(100% - 44px);padding:18px;background:linear-gradient(90deg,#09141ad9,#09141a59);backdrop-filter:blur(5px)}h1{font-size:42px;margin-bottom:12px}h1 br{display:block}.chapter-copy{display:none}.eyebrow{margin-bottom:10px}blockquote{font-size:13px;line-height:1.5;max-width:100%}.verse-ref{margin-bottom:14px}.primary-btn{padding:11px 14px}.journey{padding:0 16px 14px}.journey-head{display:none}.chapter-nav{gap:4px}.chapter{padding-top:10px;gap:0;justify-content:center}.chapter-number{display:none}.chapter b{font-size:12px}.chapter small{font-size:7px}.scene-label{right:18px;top:80px;font-size:8px}.detail-card{top:45%;right:7.5vw}.hotspot{width:34px;height:34px}}@media(max-height:700px)and (min-width:801px){.story-panel{top:47%}h1{font-size:52px}.chapter-copy{display:none}.journey{padding-bottom:12px}.topbar{padding-top:18px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
