:root{--paper:#f0ede4;--ink:#242820;--red:#aa4735;--muted:#666b60;--line:rgba(40,44,35,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:#30352d;color:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid #d88963;outline-offset:6px}::selection{background:#b45139;color:white}.map-scene{position:fixed;inset:0;overflow:hidden;z-index:-1;background:#30352d}.map-plane{position:absolute;top:0;left:0;width:100vw;height:76.6766vw;will-change:transform;transform-origin:0 0}.base-map{position:absolute;width:100%;height:100%;object-fit:fill}.detail-map{position:absolute;opacity:0;transition:opacity .65s;pointer-events:none}.detail-map.ready{opacity:1}.map-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,24,20,.82),rgba(18,24,20,.14) 72%);opacity:var(--shade,.8);pointer-events:none}.map-grain{position:absolute;inset:0;pointer-events:none;background:rgba(32,39,29,var(--wash,.12))}.navigation{position:fixed;top:0;left:0;width:100%;padding:25px 4.5%;display:flex;align-items:center;justify-content:space-between;z-index:20;background:linear-gradient(#20271f99,transparent);pointer-events:none}.navigation a{pointer-events:auto}.wordmark{display:flex;gap:15px;align-items:center;font-size:25px;letter-spacing:-1px;font-weight:800}.wordmark span{font:10px monospace;letter-spacing:2px;border-left:1px solid #f0ede470;padding-left:15px}.read-link{font-size:12px;letter-spacing:.06em;border-bottom:1px solid #f0ede460;padding-bottom:6px}.read-link span{margin-left:16px}.hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:120px 9% 160px}.hero-content{max-width:780px}.eyebrow{font:10px/1.7 'Courier New',monospace;letter-spacing:.17em;font-weight:bold;margin:0 0 28px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#cf815e;margin:0 10px 1px 0;box-shadow:0 0 0 5px #cf815e20}h1{font:clamp(60px,7.8vw,120px)/1.02 Georgia,serif;letter-spacing:-.065em;margin:0 0 26px;font-weight:normal}h1 em,h2 em{font-weight:normal;color:#d9c8a7}h1 em{font-size:.9em}.hero-description{font-size:16px;line-height:1.7;color:#e3e2d5;max-width:340px}.primary{display:inline-flex;gap:50px;padding:18px 23px;background:var(--paper);color:var(--ink);font-size:13px;font-weight:600;margin-top:23px;transition:background .2s,transform .2s}.primary:hover{background:#fff;transform:translateY(-2px)}.primary span{font-size:19px;font-weight:normal}.hero-note{font:9px monospace;letter-spacing:.08em;color:#d1d2c1;margin-top:18px}.hero-bottom{position:absolute;bottom:44px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;align-items:end;font:9px/1.7 monospace;letter-spacing:.1em;color:#dedfd4}.scroll-invitation{display:flex;align-items:center;gap:20px}.scroll-invitation span{font:25px Arial;animation:invite 2.5s ease-in-out infinite}.map-credit{position:absolute;right:24px;top:48%;font:8px monospace;letter-spacing:.12em;writing-mode:vertical-rl;color:#e5e4d9b0}.chapter{height:145svh;min-height:900px;position:relative;padding:19svh 9% 30svh;display:flex;align-items:flex-start}.story-panel{background:var(--paper);color:var(--ink);width:380px;padding:33px 34px 29px;position:relative;box-shadow:0 20px 70px #14201820}.story-panel .eyebrow{font-size:9px;margin-bottom:36px;max-width:265px;color:#676d60}.chapter-index{position:absolute;right:25px;top:28px;font:10px monospace;color:#7c8174}.story-panel h2{font:40px/1.1 Georgia,serif;letter-spacing:-.045em;margin:0 0 24px;font-weight:normal}.story-panel .role{font:11px monospace;color:var(--red);margin:-9px 0 23px}.story-panel p:not(.eyebrow):not(.role){font-size:14px;line-height:1.8}.panel-small{color:var(--muted);font-style:italic}.panel-rule{height:1px;background:var(--line);margin:25px 0 21px}.text-link{display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:0;border-top:1px solid var(--line);padding:18px 0 0;margin-top:25px;color:var(--ink);width:100%;font-size:12px;text-align:left;cursor:pointer}.text-link span{font-size:20px;transition:transform .2s}.text-link:hover span{transform:translateX(4px)}.location-label{position:absolute;top:34svh;left:65%;font:11px monospace;letter-spacing:.1em;text-shadow:0 1px 10px #000;background:#242a24d9;padding:11px 15px;border-left:2px solid #dd9d69;max-width:30%}.location-label span{display:block;font-size:8px;letter-spacing:.08em;margin-top:8px;color:#d5d5c8}.map-pin{position:absolute;left:50%;top:50%;width:0;height:0;opacity:0}.map-pin span{position:absolute;width:9px;height:9px;left:-4px;top:-4px;border-radius:50%;background:#f8eedb;border:2px solid #a34430;box-shadow:0 0 0 5px #fff5e54d}.map-pin i{position:absolute;width:28px;height:28px;left:-14px;top:-14px;border:1px solid #f8eedb99;border-radius:50%}.journey{position:fixed;right:3%;bottom:35px;z-index:19;display:flex;gap:20px;align-items:center;background:#202820d9;padding:13px 17px;backdrop-filter:blur(8px);opacity:0;transform:translateY(10px);transition:opacity .3s,transform .3s}.journey.visible{opacity:1;transform:none}.journey-title{font:8px monospace;letter-spacing:.12em;color:#c5c9bb}.journey-count{font:9px monospace;color:#c5c9bb}#journey-links{display:flex;gap:12px;align-items:center}#journey-links a{display:block;width:6px;height:6px;border-radius:50%;background:#f0ede44d;position:relative}#journey-links a:before{content:'';position:absolute;inset:-9px}#journey-links a.active{background:#df9b70;box-shadow:0 0 0 4px #df9b7025}.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:30}.progress span{display:block;height:100%;background:#d5986a;transform-origin:left;transform:scaleX(0)}.book-section{min-height:110svh;padding:150px 10% 0;position:relative;background:#22291f66}.book-layout{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:12%;max-width:1050px;margin:auto}.book-object{perspective:1000px;padding:20px}.cover{width:100%;max-width:280px;aspect-ratio:360/576;background:#eeeade;color:#20251e;padding:25px 27px;transform:rotate(-5deg) rotateY(-12deg);box-shadow:-4px 0 0 #c9c5b7,-8px 2px 0 #d8d4c8,10px 30px 65px #0006;display:flex;flex-direction:column;border-left:2px solid #c2bdaa}.cover-date{font:7px monospace;letter-spacing:.1em}.cover strong{font:58px Georgia;letter-spacing:-.06em;margin:15px 0 10px}.cover-subtitle{font-size:9px;line-height:1.6}.cover-photo{width:100%;aspect-ratio:1.28;background:#777;margin:20px 0;background-image:url('assets/cover-photo.jpg');background-size:cover;background-position:center}.cover-authors{font-size:7px;line-height:1.7;margin-top:auto}.book-copy h2{font:clamp(48px,5.5vw,78px)/1.05 Georgia;letter-spacing:-.05em;margin:0 0 25px}.book-copy>p:not(.eyebrow):not(.coming){font-size:15px;line-height:1.85;max-width:440px;color:#e0e0d4}.edition{display:flex;justify-content:space-between;border-top:1px solid #f0ede44d;border-bottom:1px solid #f0ede44d;padding:15px 0;margin:32px 0 22px;font:9px monospace;letter-spacing:.1em}.coming{font-size:12px;color:#d9c8a7;line-height:1.7}footer{margin-top:110px;border-top:1px solid #f0ede430;padding:26px 0;display:flex;justify-content:space-between;gap:20px;font:9px/1.7 monospace;color:#c7cbbb}dialog{background:var(--paper);color:var(--ink);border:0;padding:0;width:min(560px,calc(100% - 32px));max-height:90svh;box-shadow:0 30px 150px #0008}dialog::backdrop{background:#18221bd9;backdrop-filter:blur(5px)}.dialog-inner{padding:50px}.close-dialog{position:absolute;right:15px;top:10px;border:0;background:none;font:30px Arial;color:var(--ink);cursor:pointer}.dialog-number{font:11px monospace;color:var(--red)}dialog h2{font:47px/1.1 Georgia;letter-spacing:-.04em;margin:20px 0}#dialog-description{font-size:15px;line-height:1.9}blockquote{font:italic 23px/1.5 Georgia;margin:30px 0;padding-left:20px;border-left:2px solid var(--red)}.reader-preview{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin-top:30px;font-size:12px}.reader-preview p{color:var(--muted);line-height:1.6}.reader-icon{font-size:25px}.dialog-back{background:var(--ink);color:var(--paper);padding:15px 20px;border:0;width:100%;display:flex;justify-content:space-between;margin-top:25px;cursor:pointer}body.modal-open{overflow:hidden}@keyframes invite{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@media(min-width:1500px){.story-panel{width:420px}.chapter{padding-left:12%}}@media(max-width:700px){.navigation{padding:22px 23px}.wordmark{font-size:23px}.hero{padding:130px 26px 155px;align-items:center}.hero-content{width:100%}h1{font-size:clamp(55px,12vw,80px);letter-spacing:-.06em}.hero-description{font-size:14px}.hero .eyebrow{font-size:9px}.primary{padding:17px 20px;font-size:12px;gap:45px}.hero-bottom{left:26px;right:26px;bottom:32px}.hero-bottom>span{display:none}.scroll-invitation{font-size:8px}.map-credit{right:10px;font-size:7px}.chapter{height:145svh;min-height:850px;padding:46svh 22px 15svh;align-items:flex-start}.story-panel{width:100%;max-width:420px;padding:27px 27px 22px}.story-panel .eyebrow{margin-bottom:25px;font-size:8px}.story-panel h2{font-size:35px;margin-bottom:18px}.story-panel p:not(.eyebrow):not(.role){font-size:13px;line-height:1.75}.story-panel .role{font-size:10px}.text-link{margin-top:20px;padding-top:15px}.location-label{top:25svh;left:auto;right:24px;max-width:70%;font-size:9px}.location-label span{font-size:7px}.journey{left:22px;right:22px;bottom:16px;justify-content:space-between;padding:12px 15px}.journey-title{font-size:7px}.book-section{padding:110px 28px 0}.book-layout{grid-template-columns:1fr;gap:65px}.book-object{max-width:240px;margin:auto;width:100%;padding:0}.book-copy h2{font-size:55px}.book-copy>p:not(.eyebrow):not(.coming){font-size:14px}footer{margin-top:60px;flex-direction:column;padding-bottom:85px;gap:12px}.dialog-inner{padding:40px 28px 30px}dialog{margin:auto auto 0;max-height:90svh;width:100%;border-radius:12px 12px 0 0}dialog h2{font-size:40px}blockquote{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.map-plane{will-change:auto}}

.soft-map{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none}.hero-content{text-shadow:0 2px 22px #14201855}.primary,.hero-note{text-shadow:none}button.location-label{border:0;border-left:2px solid #dd9d69;color:var(--paper);text-align:left;cursor:pointer}button.location-label:hover{background:#242a24}
.journey{visibility:hidden}.journey.visible{visibility:visible}
/* Dark glass edition */
:root{--paper:#e4e4dd;--ink:#dfe2d9;--muted:#9aa59e;--red:#bd9e79;--line:#ffffff20}body{background:#111a17}.map-scene{background:#111a17}.map-shade{background:linear-gradient(90deg,#0b1411d9,#0b141184 75%,#0b14116b)}.base-map,.detail-map{filter:saturate(.64)}.map-grain{background:rgba(6,17,13,var(--wash,.22))}.navigation{background:linear-gradient(#0d1816aa,transparent);padding-top:28px}.wordmark{font-weight:500;font-size:22px;letter-spacing:.02em}.wordmark span{font-size:8px;opacity:.65}.read-link{font-size:10px;opacity:.7}.hero{padding-left:10%}.hero h1{font-size:clamp(58px,7.3vw,108px);letter-spacing:-.055em}.hero h1 em,.book-copy h2 em{color:#c5c8bb}.hero-description{color:#bfc7bc;font-size:14px}.hero .eyebrow{font-weight:normal;letter-spacing:.2em;font-size:9px}.live-dot{background:#d1bea0;box-shadow:0 0 0 4px #d1bea015}.hero-note,.hero-bottom>span,.map-credit{display:none}.hero-bottom{left:10%;bottom:45px;justify-content:flex-start}.scroll-invitation{color:#b3bdb2;font-size:8px;letter-spacing:.15em}.primary{background:#e8e9df12;border:1px solid #e8e9df30;color:#e8e9df;backdrop-filter:blur(10px);border-radius:30px;font-size:11px;font-weight:normal;padding:15px 22px;gap:36px}.primary:hover{background:#e8e9df22}.chapter{height:135svh;min-height:800px;padding:0;pointer-events:none}.journey{background:#0e1b17a8;border:1px solid #ffffff14;border-radius:30px;box-shadow:inset 0 1px #ffffff0d;padding:12px 18px}.journey-title{display:none}#journey-links{gap:18px}#journey-links a.active{background:#d1bea0;box-shadow:0 0 0 4px #d1bea018}.journey-count{font-size:8px;opacity:.65}.progress{height:1px;opacity:.5}.progress span{background:#c5b18d}.book-section{background:#0a15124d}.cover{color:#242820}.book-copy h2{font-size:clamp(48px,5vw,72px)}.book-copy>p:not(.eyebrow):not(.coming){font-size:14px;color:#bfc6bb}.book-copy .eyebrow{font-size:8px;font-weight:normal;color:#aeb9ac}.coming{color:#b8bcae}.book-copy .edition{opacity:.6}.book-object .cover{box-shadow:-4px 0 #c9c5b7,-8px 2px #d8d4c8,10px 30px 65px #0009}footer{opacity:.6}
#map-story{position:fixed;left:0;top:0;z-index:12;padding:28px 28px 0;color:#e2e5dc;border-radius:20px;border:1px solid #eef5e529;background:linear-gradient(135deg,#26372fb3,#14241ed9);backdrop-filter:blur(18px) saturate(.8);-webkit-backdrop-filter:blur(18px) saturate(.8);box-shadow:inset 0 1px #ffffff18,0 15px 50px #00000035;max-height:calc(100svh - 120px);overflow:auto;scrollbar-width:thin;scrollbar-color:#c0c9bc40 transparent;will-change:transform,opacity}.glass-meta{display:flex;justify-content:space-between;gap:20px;font:8px/1.7 monospace;letter-spacing:.14em;text-transform:uppercase;color:#b4c2b5}#glass-number{opacity:.6}#glass-name{font:normal 35px/1.1 Georgia,serif;letter-spacing:-.04em;margin:24px 0 10px}#glass-role{font-size:10px;color:#c1b798;margin:0 0 22px}#glass-intro,#glass-description{font-size:12px;line-height:1.9;color:#c7d0c5;margin:0 0 22px}#expand-story{width:100%;border:0;border-top:1px solid #f3f5e21a;background:none;color:#dfe5d9;padding:18px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:10px;letter-spacing:.03em}.expand-symbol{font:22px Arial;font-weight:200;transition:transform .4s}.expanded .expand-symbol{transform:rotate(45deg)}.glass-more{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .45s ease,opacity .35s}.glass-more>div{overflow:hidden;min-height:0}.expanded .glass-more{grid-template-rows:1fr;opacity:1}#glass-description{border-top:1px solid #ffffff14;padding-top:20px}#glass-quote{font:italic 19px/1.5 Georgia;color:#d4d6c5;border-left:1px solid #b5a47e66;padding-left:16px;margin:20px 0}#reader-note{font-size:9px;line-height:1.8;color:#9cae9e;margin:20px 0 10px}#collapse-story{font-size:9px;background:none;border:0;color:#cad3c4;padding:8px 0 18px;cursor:pointer}#world-pin{position:fixed;left:0;top:0;z-index:13;width:44px;height:44px;margin:-22px 0 0 -22px;background:none;border:0;border-radius:50%;cursor:pointer;will-change:transform;transition:opacity .2s}.pin-dot{display:block;position:absolute;left:17px;top:17px;width:10px;height:10px;background:#fff6dc;border-radius:50%;box-shadow:0 0 0 3px #182a21,0 0 16px #fff1ba80}.pin-halo{position:absolute;inset:5px;border:1px solid #fff6dbaa;border-radius:50%;box-shadow:0 0 0 5px #fff6db12}#world-pin:hover .pin-halo{background:#fff6db20}#pin-connector{position:fixed;height:1px;background:linear-gradient(90deg,#fff4ce99,#fff4ce22);transform-origin:left center;pointer-events:none;z-index:11}
@media(max-width:700px){.hero{padding-left:26px}.hero h1{font-size:clamp(52px,12vw,70px)}.hero-bottom{left:26px}.hero-description{font-size:13px}.chapter{height:130svh;min-height:850px}.journey{left:auto;right:18px;bottom:18px;gap:20px;width:auto}#map-story{padding:24px 24px 0;border-radius:18px;max-height:calc(100svh - 190px);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}#glass-name{font-size:32px;margin-top:20px}#glass-intro,#glass-description{font-size:12px}#glass-role{margin-bottom:18px}.glass-meta{font-size:7px}.book-section{padding-top:100px}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#map-story{background:#17271ff5}}@media(prefers-reduced-motion:reduce){#map-story{will-change:auto}.glass-more{transition:none}}
#map-story.expanded{overscroll-behavior:contain}@media(max-width:700px){#map-story{max-height:calc(77svh - 140px)}}
@media(max-width:700px){#glass-intro,#glass-description{font-size:13px;line-height:1.8}}
#map-story[role="button"]{cursor:pointer;transition:background .25s,border-color .25s}#map-story[role="button"]:hover{border-color:#e7f2da55;background:linear-gradient(135deg,#304339c7,#182c23e6)}#map-story{padding-bottom:25px}#map-story.expanded{padding-bottom:28px}.glass-meta{padding-right:25px}#glass-intro{margin-bottom:0}#collapse-story{display:none;position:absolute;right:15px;top:14px;font:25px/1 Arial;width:35px;height:35px;padding:0;border:0;border-radius:50%;color:#d2dbce;background:#ffffff08;align-items:center;justify-content:center}.expanded #collapse-story{display:flex}#collapse-story:hover{background:#ffffff18}#read-chapter{display:flex;justify-content:space-between;font-size:11px;color:#e7eadf;border-top:1px solid #ffffff20;margin-top:24px;padding-top:20px}.book-actions{margin-top:28px}.read-book{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border:1px solid #dbe7d32e;background:#dbe7d30e;border-radius:9px;font-size:13px;transition:background .2s}.read-book:hover{background:#dbe7d31f}.read-book span{font-size:19px}#continue-reading{display:block;font-size:10px;color:#bfccb8;line-height:1.7;margin:16px 0}#continue-reading[hidden]{display:none}.download-options{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.download-options>a{border:1px solid #dbe7d31a;border-radius:9px;padding:16px;display:flex;justify-content:space-between;gap:15px;align-items:center}.download-options>a:hover{background:#dbe7d309}.download-options strong{display:block;font-size:11px;font-weight:normal}.download-options small{display:block;font-size:8px;line-height:1.7;margin-top:6px;color:#a1afa1}.file-size{font:8px monospace;white-space:nowrap;color:#aebba6}.download-help{margin-top:22px;font-size:10px;color:#acb8a8;line-height:1.9}.download-help summary{cursor:pointer}.download-help p{font-size:11px;margin:15px 0 0}.book-section{padding-bottom:0}@media(max-width:1000px){.download-options{grid-template-columns:1fr}}@media(max-width:700px){#map-story{padding-bottom:24px}.download-options{grid-template-columns:1fr 1fr}.download-options>a{padding:14px 12px;flex-direction:column;align-items:flex-start;gap:12px}}@media(max-width:360px){.download-options{grid-template-columns:1fr}}
.expanded #collapse-story{position:sticky;float:right;top:0;right:0;margin:-10px -12px -25px 0;background:#23352ef2;z-index:2}
.book-chapters{display:flex;flex-wrap:wrap;gap:12px 20px;margin:22px 0 26px;font-size:10px;color:#b8c6b3;line-height:1.8}.book-chapters a{padding:5px 0}.book-chapters a:hover{color:#fff}.book-chapters span{font-size:9px;opacity:.5;margin-left:4px}

/* Mobile interaction and short-screen layout */
#collapse-story{position:sticky;top:0;float:right;right:auto;margin:-10px -10px -34px 0;width:44px;height:44px;z-index:2;background:#23362eee}
#read-chapter{min-height:44px;align-items:center;padding-bottom:4px}
.navigation .read-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;padding-bottom:0}
.book-chapters a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}.download-help summary{min-height:44px;padding:10px 0;font-size:12px}
@media(max-width:700px){.journey{padding:0 8px;gap:12px;bottom:max(14px,env(safe-area-inset-bottom))}#journey-links{gap:0}#journey-links a,#journey-links a.active{width:40px;height:44px;background:none;box-shadow:none}#journey-links a:before{inset:19px 17px;border-radius:50%;background:#f0ede44d}#journey-links a.active:before{background:#d1bea0;box-shadow:0 0 0 4px #d1bea018}.journey-count{padding-right:8px}.navigation{padding-top:12px}.download-options small{font-size:10px}.file-size{font-size:10px}}
@media(max-width:400px){.journey-count{display:none}.journey{gap:0}}
@media(min-width:701px) and (max-height:500px){.navigation{padding-top:8px;padding-bottom:8px}#map-story{max-height:calc(100svh - 110px);padding:20px}.journey{left:18px;right:auto;bottom:14px}.hero{padding-top:100px;padding-bottom:100px}.hero-bottom{bottom:20px}#glass-name{margin-top:16px}}

/* Final book presentation */
.book-object{perspective:none}.book-object .cover{transform:none;margin-inline:auto;box-shadow:-3px 0 #c9c5b7,-6px 1px #d8d4c8,0 22px 50px #0006}#read-chapter[hidden]{display:none}
