*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0e0c0a;--bg-card:#151210;--bg-surface:#1a1714;--bg-overlay:#0a0806eb;--gold:#c9a84c;--gold-dim:#8a7535;--gold-bright:#e4c55a;--gold-glow:#c9a84c14;--cream:#e8dcc8;--cream-dim:#a89b86;--text:#c5bba8;--text-dim:#7a7164;--border:#2a2520;--border-light:#3a332b;--serif:"Cormorant Garamond", "Georgia", "Times New Roman", serif;--display:"Cinzel", "Georgia", serif}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px}body{font-family:var(--serif);background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden}body:after{content:"";pointer-events:none;z-index:9999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:fixed;inset:0}#root{min-height:100vh}::selection{background:var(--gold);color:var(--bg)}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gold-dim)}.app{max-width:680px;margin:0 auto;padding:0 24px;position:relative}.landing{justify-content:center;align-items:center;min-height:100vh;padding:60px 24px;display:flex}.landing-content{text-align:center;max-width:560px}.landing-ornament{color:var(--gold-dim);letter-spacing:12px;opacity:0;margin-bottom:48px;font-size:20px;animation:1.2s .3s forwards ornamentReveal}.landing-ornament--bottom{margin-top:48px;margin-bottom:0;animation-delay:1.8s}.landing-title{font-family:var(--display);color:var(--gold);letter-spacing:.35em;text-transform:uppercase;opacity:0;margin:0;font-size:5rem;font-weight:400;line-height:1.1;animation:1s .5s forwards titleReveal}.landing-rule{background:linear-gradient(90deg, transparent, var(--gold-dim), transparent);opacity:0;width:120px;height:1px;margin:32px auto;animation:.8s .9s forwards ruleExpand}.landing-subtitle{font-family:var(--serif);color:var(--cream-dim);opacity:0;margin:0 0 16px;font-size:1.15rem;font-style:italic;font-weight:300;animation:.7s 1s forwards fadeUp}.landing-author{font-family:var(--display);letter-spacing:.25em;color:var(--text-dim);text-transform:uppercase;opacity:0;margin:0;font-size:.85rem;animation:.7s 1.1s forwards fadeUp}.landing-spacer{height:48px}.landing-description{font-family:var(--serif);color:var(--text-dim);opacity:0;margin:0 0 40px;font-size:1rem;font-weight:300;line-height:1.8;animation:.7s 1.2s forwards fadeUp}.landing-cta{border:1px solid var(--gold-dim);color:var(--gold);font-family:var(--display);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;opacity:0;background:0 0;align-items:center;gap:12px;padding:16px 36px;font-size:.8rem;transition:all .4s;animation:.7s 1.4s forwards fadeUp;display:inline-flex}.landing-cta:hover{background:var(--gold);color:var(--bg);border-color:var(--gold);box-shadow:0 0 30px #c9a84c33}.landing-cta-arrow{transition:transform .3s}.landing-cta:hover .landing-cta-arrow{transform:translate(4px)}.browser{padding:60px 0 80px}.browser-header{text-align:center;margin-bottom:60px;position:relative}.browser-back{border:1px solid var(--border);color:var(--gold-dim);cursor:pointer;background:0 0;border-radius:4px;padding:10px 12px;transition:all .3s;position:absolute;top:0;left:0}.browser-back:hover{color:var(--gold);border-color:var(--gold-dim);background:var(--gold-glow)}.browser-header-center{display:inline-block}.browser-ornament{color:var(--gold-dim);opacity:.5;margin-bottom:20px;font-size:14px}.browser-title{font-family:var(--display);letter-spacing:.2em;color:var(--cream);text-transform:uppercase;margin:0 0 8px;font-size:1.8rem;font-weight:400}.browser-subtitle{font-family:var(--display);letter-spacing:.3em;color:var(--gold-dim);text-transform:uppercase;margin:0;font-size:.7rem}.browser-parts{flex-direction:column;gap:48px;display:flex}.browser-part-header{align-items:center;gap:20px;margin-bottom:24px;display:flex}.browser-part-line{background:linear-gradient(90deg, transparent, var(--border-light), transparent);flex:1;height:1px}.browser-part-name{font-family:var(--display);letter-spacing:.25em;color:var(--gold-dim);text-transform:uppercase;white-space:nowrap;flex-shrink:0;font-size:.7rem;font-weight:400}.browser-chapters{flex-direction:column;gap:4px;display:flex}.browser-card{border:1px solid var(--border);cursor:pointer;text-align:left;background:0 0;border-radius:2px;align-items:center;gap:20px;width:100%;padding:20px 24px;transition:all .3s;display:flex}.browser-card:hover{border-color:var(--gold-dim);background:#c9a84c08}.browser-card-num{font-family:var(--display);color:var(--gold-dim);letter-spacing:.05em;text-align:center;flex-shrink:0;min-width:36px;font-size:1.4rem;transition:color .3s}.browser-card:hover .browser-card-num{color:var(--gold)}.browser-card-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.browser-card-title{font-family:var(--display);letter-spacing:.12em;color:var(--cream);text-transform:uppercase;font-size:1rem;font-weight:400;transition:color .3s}.browser-card:hover .browser-card-title{color:var(--gold)}.browser-card-meta{font-family:var(--serif);color:var(--text-dim);font-size:.8rem;font-weight:300}.browser-card-tagline{font-family:var(--serif);color:var(--cream-dim);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-style:italic;font-weight:300;overflow:hidden}.browser-card-arrow{color:var(--border-light);flex-shrink:0;font-size:1.8rem;line-height:1;transition:all .3s}.browser-card:hover .browser-card-arrow{color:var(--gold-dim);transform:translate(2px)}.top-bar{z-index:200;background:linear-gradient(180deg, var(--bg) 60%, transparent);pointer-events:none;opacity:0;transition:opacity .5s,transform .5s;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.top-bar--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.top-bar-inner{align-items:center;gap:12px;max-width:1200px;margin:0 auto;padding:10px 24px;display:flex}.top-bar-back-btn,.top-bar-index-btn{color:var(--gold-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:6px;transition:color .3s,background .3s}.top-bar-back-btn:hover,.top-bar-index-btn:hover{color:var(--gold);background:var(--gold-glow)}.top-bar-context{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex;overflow:hidden}.top-bar-chapter{font-family:var(--display);letter-spacing:.15em;color:var(--cream-dim);text-transform:uppercase;white-space:nowrap;font-size:.65rem}.top-bar-sep{color:var(--border-light);font-size:.7rem}.top-bar-point{font-family:var(--display);letter-spacing:.1em;color:var(--text-dim);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.top-bar-book{font-family:var(--display);letter-spacing:.2em;color:var(--gold-dim);text-transform:uppercase;opacity:.6;flex-shrink:0;font-size:.6rem}.top-bar-progress{background:var(--border);height:1px;position:relative;overflow:hidden}.top-bar-progress-fill{background:linear-gradient(90deg, var(--gold-dim), var(--gold));height:100%;transition:width .4s ease-out;position:absolute;top:0;left:0}.side-progress{z-index:100;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:50%;right:20px;transform:translateY(-50%)}.side-dot{border:1px solid var(--gold-dim);cursor:pointer;background:0 0;border-radius:50%;width:6px;height:6px;padding:0;transition:all .3s}.side-dot:hover{border-color:var(--gold);background:var(--gold-dim);box-shadow:0 0 8px var(--gold-glow)}.side-dot.active{background:var(--gold);border-color:var(--gold);width:8px;height:8px;box-shadow:0 0 10px #c9a84c66}.side-dot.passed{background:var(--gold-dim);border-color:var(--gold-dim)}.index-overlay{z-index:1000;background:var(--bg-overlay);-webkit-backdrop-filter:blur(20px);justify-content:center;align-items:flex-start;padding:40px 24px;animation:.35s ease-out indexFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes indexFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.index-content{width:100%;max-width:560px;animation:.4s cubic-bezier(.16,1,.3,1) indexSlideUp;position:relative}@keyframes indexSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.index-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:8px;transition:color .3s,background .3s;position:absolute;top:0;right:0}.index-close:hover{color:var(--gold);background:var(--gold-glow)}.index-header{text-align:center;margin-bottom:48px}.index-ornament{color:var(--gold-dim);opacity:.5;margin-bottom:20px;font-size:14px}.index-title{font-family:var(--display);letter-spacing:.3em;color:var(--cream);text-transform:uppercase;margin:0 0 20px;font-size:.85rem;font-weight:400}.index-rule{background:linear-gradient(90deg, transparent, var(--gold-dim), transparent);width:60px;height:1px;margin:0 auto}.index-chapter{border-bottom:1px solid var(--border);margin-bottom:40px;padding-bottom:40px}.index-chapter:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.index-chapter.active .index-chapter-name{color:var(--gold)}.index-chapter-title{cursor:pointer;text-align:left;background:0 0;border:none;align-items:baseline;gap:14px;width:100%;padding:0;transition:opacity .3s;display:flex}.index-chapter-title:hover{opacity:.8}.index-chapter-num{font-family:var(--display);color:var(--gold-dim);letter-spacing:.1em;flex-shrink:0;min-width:16px;font-size:.7rem}.index-chapter-name{font-family:var(--display);letter-spacing:.1em;color:var(--cream);text-transform:uppercase;font-size:1.1rem;font-weight:400;transition:color .3s}.index-chapter-tagline{font-family:var(--serif);color:var(--text-dim);margin:6px 0 0 30px;font-size:.95rem;font-style:italic;font-weight:300}.index-points{grid-template-columns:1fr 1fr;gap:2px 24px;margin:20px 0 0 30px;list-style:none;display:grid}.index-point{cursor:pointer;text-align:left;background:0 0;border:none;align-items:baseline;gap:10px;width:100%;padding:5px 0;transition:opacity .2s;display:flex}.index-point:hover{opacity:.7}.index-point.active .index-point-num{color:var(--gold)}.index-point.active .index-point-heading{color:var(--cream)}.index-point-num{font-family:var(--display);color:var(--gold-dim);letter-spacing:.1em;flex-shrink:0;min-width:20px;font-size:.6rem;transition:color .3s}.index-point-heading{font-family:var(--serif);color:var(--text-dim);letter-spacing:.02em;font-size:.8rem;font-weight:400;transition:color .3s}.chapter-nav{padding:40px 0 20px}.chapter-nav-divider{align-items:center;gap:20px;margin-bottom:40px;display:flex}.chapter-nav-divider-line{background:linear-gradient(90deg, transparent, var(--border-light), transparent);flex:1;height:1px}.chapter-nav-divider-ornament{color:var(--gold-dim);opacity:.5;letter-spacing:4px;flex-shrink:0;font-size:10px}.chapter-nav-buttons{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.chapter-nav-btn{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:2px;flex-direction:column;gap:6px;padding:16px 20px;transition:all .3s;display:flex}.chapter-nav-btn:hover{border-color:var(--gold-dim);background:#c9a84c08}.chapter-nav-btn--prev{text-align:left}.chapter-nav-btn--next{text-align:right}.chapter-nav-btn--all{font-family:var(--display);letter-spacing:.2em;color:var(--gold-dim);text-transform:uppercase;flex-direction:row;align-self:center;font-size:.7rem}.chapter-nav-btn--all:hover{color:var(--gold)}.chapter-nav-label{font-family:var(--display);letter-spacing:.15em;color:var(--text-dim);text-transform:uppercase;font-size:.6rem}.chapter-nav-name{font-family:var(--display);letter-spacing:.1em;color:var(--cream);text-transform:uppercase;font-size:.85rem;transition:color .3s}.chapter-nav-btn:hover .chapter-nav-name{color:var(--gold)}.slides-container{flex-direction:column;display:flex}.slide-wrapper{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:80px 0;display:flex}.slide-wrapper:first-child{padding-top:60px}.slide--title{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:80vh;padding:60px 0;display:flex}.title-ornament{color:var(--gold-dim);letter-spacing:12px;opacity:0;margin-bottom:48px;font-size:20px;animation:1.2s .3s forwards ornamentReveal}@keyframes ornamentReveal{0%{opacity:0;transform:scale(.8)}to{opacity:.6;transform:scale(1)}}.title-ornament--bottom{margin-top:48px;margin-bottom:0;animation-delay:1.6s}.title-main{font-family:var(--display);color:var(--gold);letter-spacing:.35em;text-transform:uppercase;opacity:0;margin:0;font-size:4.5rem;font-weight:400;line-height:1.1;animation:1s .5s forwards titleReveal}@keyframes titleReveal{0%{opacity:0;letter-spacing:.5em}to{opacity:1;letter-spacing:.35em}}.title-rule{background:linear-gradient(90deg, transparent, var(--gold-dim), transparent);opacity:0;width:120px;height:1px;margin:32px auto;animation:.8s .9s forwards ruleExpand}@keyframes ruleExpand{0%{opacity:0;width:0}to{opacity:1;width:120px}}.title-chapter{font-family:var(--display);color:var(--cream);letter-spacing:.18em;text-transform:uppercase;opacity:0;margin:0 0 8px;font-size:1.35rem;font-weight:400;animation:.7s .4s forwards fadeUp}.title-chapter--large{letter-spacing:.15em;color:var(--gold);margin-bottom:12px;font-size:2rem}.title-tagline{font-family:var(--serif);color:var(--cream-dim);opacity:0;margin:0;font-size:1.15rem;font-style:italic;font-weight:300;animation:.7s .6s forwards fadeUp}.title-spacer{height:48px}.title-author{font-family:var(--display);letter-spacing:.25em;color:var(--text-dim);text-transform:uppercase;opacity:0;margin:0 0 12px;font-size:.85rem;animation:.7s 1.3s forwards fadeUp}.title-description{font-family:var(--serif);color:var(--text-dim);opacity:0;font-size:.95rem;font-style:italic;font-weight:300;animation:.7s .8s forwards fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.slide--content{width:100%}.slide-bridge{font-family:var(--serif);color:var(--gold);border-left:1px solid #0000;margin-bottom:32px;padding-left:20px;font-size:1.1rem;font-style:italic;font-weight:300;line-height:1.8;position:relative}.slide-bridge:before{content:"";background:linear-gradient(180deg, var(--gold), var(--gold-dim));width:1px;height:0;transition:height .8s .2s;position:absolute;top:0;left:0}.slide-wrapper.visible .slide-bridge:before{height:100%}.slide-header{align-items:center;gap:20px;margin-bottom:28px;display:flex}.slide-number{font-family:var(--display);color:var(--gold-dim);letter-spacing:.15em;text-align:center;flex-shrink:0;min-width:32px;font-size:1.1rem}.slide-number-rule{background:linear-gradient(90deg, var(--border-light), transparent);transform-origin:0;flex:1;height:1px;transition:transform .6s .3s;transform:scaleX(0)}.slide-wrapper.visible .slide-number-rule{transform:scaleX(1)}.slide-heading{font-family:var(--display);color:var(--cream);letter-spacing:.12em;text-transform:uppercase;flex-shrink:0;margin:0;font-size:1.5rem;font-weight:500;line-height:1.3}.slide-body{margin-bottom:40px}.slide-body p{font-family:var(--serif);color:var(--text);text-align:justify;-webkit-hyphens:auto;hyphens:auto;font-size:1.15rem;font-weight:300;line-height:1.85}.slide-artwork{background:var(--bg-card);border:1px solid var(--border);border-radius:2px;margin-bottom:16px;transition:border-color .4s;position:relative;overflow:hidden}.slide-artwork:hover{border-color:var(--border-light)}.slide-artwork-frame{overflow:hidden}.slide-artwork-frame img{opacity:0;width:100%;height:auto;transition:opacity 1s,transform 8s;display:block;transform:scale(1.03)}.slide-artwork.loaded .slide-artwork-frame img{opacity:1;transform:scale(1)}.artwork-info{background:var(--bg-card);border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:12px 16px;display:flex}.artwork-title{font-family:var(--serif);color:var(--cream);font-size:.9rem;font-style:italic;font-weight:400}.artwork-credit{font-family:var(--serif);color:var(--text-dim);font-size:.8rem;font-weight:300}.slide-caption{font-family:var(--serif);color:var(--cream-dim);margin-bottom:32px;font-size:.95rem;font-style:italic;font-weight:300;line-height:1.7}.slide-map{border:1px solid var(--border);opacity:.85;border-radius:2px;transition:opacity .4s,border-color .4s;overflow:hidden}.slide-map:hover{opacity:1;border-color:var(--border-light)}.slide-map img{width:100%;display:block}.app-footer{text-align:center;color:var(--text-dim);padding:80px 0 60px;font-size:.85rem;font-weight:300}.footer-ornament{color:var(--gold-dim);opacity:.5;margin-bottom:16px;font-size:16px}.app-footer em{color:var(--cream-dim);font-style:italic}.slide-wrapper{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.slide-wrapper.visible{opacity:1;transform:translateY(0)}.slide--content .slide-bridge,.slide--content .slide-header,.slide--content .slide-body,.slide--content .slide-artwork,.slide--content .slide-caption,.slide--content .slide-map{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.slide-wrapper.visible .slide-bridge{opacity:1;transition-delay:.1s;transform:translateY(0)}.slide-wrapper.visible .slide-header{opacity:1;transition-delay:.2s;transform:translateY(0)}.slide-wrapper.visible .slide-body{opacity:1;transition-delay:.3s;transform:translateY(0)}.slide-wrapper.visible .slide-artwork{opacity:1;transition-delay:.5s;transform:translateY(0)}.slide-wrapper.visible .slide-caption{opacity:1;transition-delay:.7s;transform:translateY(0)}.slide-wrapper.visible .slide-map{opacity:1;transition-delay:.9s;transform:translateY(0)}.slide-wrapper:first-child{opacity:1;transform:none}@media (width<=768px){.app{padding:0 18px}.side-progress{right:10px}.side-dot{width:5px;height:5px}.side-dot.active{width:7px;height:7px}.landing-title,.title-main{letter-spacing:.25em;font-size:2.8rem}@keyframes titleReveal{0%{opacity:0;letter-spacing:.35em}to{opacity:1;letter-spacing:.25em}}.title-chapter{font-size:1.05rem}.title-chapter--large{font-size:1.5rem}.slide-heading{font-size:1.15rem}.slide-body p{text-align:left;font-size:1.05rem}.slide-header{flex-wrap:wrap;gap:12px}.slide-number-rule{flex-basis:100%;order:3}.artwork-info{flex-direction:column;gap:4px}.top-bar-inner{padding:8px 16px}.top-bar-book{display:none}.index-points{grid-template-columns:1fr}.index-chapter-name{font-size:.95rem}.browser-card{gap:14px;padding:16px}.browser-card-num{min-width:28px;font-size:1.1rem}.browser-card-tagline{display:none}.chapter-nav-buttons{flex-direction:column;align-items:stretch}.chapter-nav-btn--all{align-self:center}.chapter-nav-btn--next{text-align:left}}@media (width<=480px){.landing-title,.title-main{letter-spacing:.2em;font-size:2.2rem}@keyframes titleReveal{0%{opacity:0;letter-spacing:.3em}to{opacity:1;letter-spacing:.2em}}.slide-wrapper{padding:60px 0}.slide-bridge{font-size:1rem}.top-bar-point,.top-bar-sep{display:none}.landing-cta{padding:14px 28px;font-size:.7rem}}
