@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Marcellus&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f4ebdf;--muted:#c7bacb;--gold:#dfbd82;--line:#ffffff2b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#100c19;margin:0;font:16px/1.65 DM Sans,sans-serif}a{color:inherit}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px max(5vw,22px);display:flex}.brand{letter-spacing:.08em;font:23px Marcellus,Georgia,serif;text-decoration:none}.nav{gap:25px;display:flex}.nav a{color:var(--muted);font-size:14px;text-decoration:none}.nav a:hover,.nav a:focus{color:var(--gold)}main{overflow:hidden}.hero{background:radial-gradient(circle at 22% 25%,#3c2859 0,#1a1429 45%,#100c19 85%);grid-template-columns:1fr 45%;min-height:590px;display:grid}.hero-copy{align-self:center;max-width:780px;padding:70px 7vw 85px max(7vw,30px)}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-size:12px;font-weight:700}.hero h1{margin:18px 0 25px;font:clamp(48px,7vw,96px)/1.03 Marcellus,Georgia,serif}.hero p{color:#ded2df;max-width:590px;font-size:clamp(17px,1.5vw,20px)}.hero img{object-fit:cover;object-position:50% 35%;filter:saturate(.8)contrast(1.04);width:100%;height:100%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 22%);mask-image:linear-gradient(90deg,#0000,#000 22%)}.button{border:1px solid var(--gold);color:var(--gold);letter-spacing:.06em;margin-top:23px;padding:12px 22px;text-decoration:none;display:inline-block}.button:hover{background:var(--gold);color:#150e1b}.section{padding:90px max(7vw,30px)}.section h2{margin:10px 0 36px;font:clamp(36px,5vw,62px)/1.1 Marcellus,Georgia,serif}.intro{max-width:780px;color:var(--muted)}.books{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.book{border:1px solid var(--line);background:linear-gradient(150deg,#271d39,#171321 70%);flex-direction:column;min-height:430px;padding:36px;display:flex}.book:nth-child(2){background:linear-gradient(150deg,#20313a,#171321 70%)}.book:nth-child(3){background:linear-gradient(150deg,#402d41,#171321 70%)}.book .number{color:#d9b98788;font:50px Marcellus,serif}.book h3{margin:36px 0 15px;font:clamp(26px,2.6vw,36px)/1.15 Marcellus,Georgia,serif}.book p{color:var(--muted);margin:0}.book .genre{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;margin-top:auto;padding-top:28px;font-size:13px}.about{border-top:1px solid var(--line);background:#191321;grid-template-columns:1fr 1fr;align-items:start;gap:50px;display:grid}.about p{max-width:590px;color:var(--muted)}footer{border-top:1px solid var(--line);color:var(--muted);padding:36px max(7vw,30px);font-size:14px}@media (max-width:750px){header{align-items:flex-start}.nav{flex-wrap:wrap;justify-content:flex-end;gap:14px}.hero{flex-direction:column-reverse;display:flex}.hero img{height:390px;-webkit-mask-image:linear-gradient(#000 70%,#0000);mask-image:linear-gradient(#000 70%,#0000)}.hero-copy{padding:0 28px 65px}.books{grid-template-columns:1fr}.book{min-height:340px}.about{grid-template-columns:1fr;gap:0}.section{padding:65px 28px}}.read{color:var(--gold);text-underline-offset:5px;margin-top:22px;font-weight:600;display:inline-block}.feature{background:#20172c}.characters{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.characters article{border-top:1px solid var(--gold);background:#ffffff08;padding:30px}.characters span{text-transform:uppercase;letter-spacing:.11em;color:var(--gold);font-size:12px}.characters h3,.map-group h3{margin:14px 0;font:30px Marcellus,Georgia,serif}.characters p{color:var(--muted);margin:0}.map-group{margin-top:40px}.map-strip{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.map-strip a{border:1px solid var(--line);background:#201929;min-width:0;padding:6px;display:block}.map-strip img{object-fit:cover;width:100%;height:220px;display:block}.map-strip a:hover,.map-strip a:focus{border-color:var(--gold)}@media (max-width:750px){.characters{grid-template-columns:1fr}.map-strip{scroll-snap-type:x mandatory;padding-bottom:12px;display:flex;overflow-x:auto}.map-strip a{scroll-snap-align:start;flex:0 0 52%}.map-strip img{height:190px}}.comments{background:#251a31}.comment-form{gap:14px;max-width:680px;display:grid}.comment-form input,.comment-form textarea,.comment-form select{font:inherit;color:#f4ebdf;background:#100c19;border:1px solid #fff5;width:100%;padding:12px}.comment-form button{font:inherit;color:#17111d;cursor:pointer;background:#dfbd82;border:0;justify-self:start;padding:12px 22px}.comment-list{gap:12px;max-width:800px;margin-top:35px;display:grid}.comment{background:#ffffff08;border:1px solid #fff3;padding:18px}.comment strong{color:#dfbd82}.comment small{color:#c7bacb}.comment p{white-space:pre-wrap;margin:8px 0 0}.status{color:#dfbd82}.map-strip a{cursor:zoom-in}.map-lightbox{z-index:1000;background:#08060ef5;justify-content:center;align-items:center;padding:62px 18px 18px;display:flex;position:fixed;inset:0;overflow:auto}.map-lightbox img{object-fit:contain;max-width:100%;max-height:calc(100vh - 82px);display:block;box-shadow:0 10px 40px #0009}.map-close{z-index:1001;color:#fff;cursor:pointer;background:#332745;border:1px solid #fff6;width:48px;height:48px;font-size:36px;line-height:1;position:fixed;top:12px;right:18px}@media (max-width:750px){.map-lightbox img{width:auto;max-width:180vw;max-height:none}.map-lightbox{justify-content:flex-start;align-items:flex-start}}.book-detail{max-width:1200px;min-height:80vh;margin:auto}.book-detail h1{margin:20px 0;font:clamp(46px,7vw,86px)/1.08 Marcellus,Georgia,serif}.book-detail h2{margin-top:80px}.detail-intro{color:#ded2df;max-width:770px;font-size:20px}.book-detail .map-strip{margin-top:28px}.book-link{color:#dfbd82;text-underline-offset:4px;font-size:14px}.hero{grid-template-columns:minmax(0,1fr) minmax(350px,45%);align-items:center}.hero img{object-fit:contain;object-position:center;filter:none;width:100%;height:auto;max-height:720px;display:block;-webkit-mask-image:none;mask-image:none}.hero-copy{padding-top:65px;padding-bottom:65px}@media (max-width:750px){.hero img{object-fit:contain;width:100%;height:auto;max-height:none;-webkit-mask-image:none;mask-image:none}.hero-copy{padding-top:24px}}.centerfold-group .map-strip{max-width:1100px;display:block}.centerfold-group .map-strip a{width:100%;display:block}.centerfold-group .map-strip img{object-fit:contain;width:100%;height:auto}.book-detail .map-strip:has(a[href="/assets/glass-world-centerfold.webp"]){max-width:1100px;display:block}.book-detail .map-strip a[href="/assets/glass-world-centerfold.webp"] img{object-fit:contain;width:100%;height:auto}.book-shelf{background:radial-gradient(circle at 50% 0,#342146 0,#17111f 45%,#100c19 100%);padding-top:44px}.shelf-intro{color:var(--muted);max-width:660px;margin:0 0 36px;font-size:18px}.swipe-hint{display:none}.book-shelf .books{gap:25px}.book-shelf .book{background:#21192d;min-height:0;padding:18px 18px 26px;box-shadow:0 18px 45px #0004}.cover-link{background:#100c19;line-height:0;display:block;overflow:hidden}.cover-link img{aspect-ratio:2/3;object-fit:contain;width:100%;height:auto;display:block}.book-shelf .number{color:var(--gold);margin-top:20px;font-size:17px}.book-shelf .book h3{margin:6px 0 10px;font-size:clamp(24px,2.5vw,32px)}.book-shelf .book p{margin-top:15px}.book-shelf .book .read{margin-top:18px}.book-shelf .book .genre{padding-top:18px}.author-section{text-align:center;border-top:1px solid var(--line);background:#191321}.author-photo{border:1px solid #fff3;width:min(100%,470px);height:auto;margin:25px auto 36px;display:block;box-shadow:0 20px 60px #0006}.author-bio{text-align:left;max-width:760px;margin:auto}.author-bio h2{text-align:center}.author-bio p{color:#d6cbd9;margin:18px 0;font-size:18px;line-height:1.8}@media (max-width:750px){.book-shelf{padding:42px 0 54px}.book-shelf>.eyebrow,.book-shelf>h1,.book-shelf>.shelf-intro,.book-shelf>.swipe-hint{margin-left:28px;margin-right:28px}.book-shelf h1{font-size:46px}.swipe-hint{color:var(--gold);margin-bottom:16px;font-size:14px;display:block}.book-shelf .books{scroll-snap-type:x mandatory;scrollbar-width:thin;gap:15px;padding:0 28px 18px;display:flex;overflow-x:auto}.book-shelf .book{scroll-snap-align:center;flex:0 0 min(78vw,340px);padding:13px 13px 22px}.book-shelf .book h3{font-size:27px}.author-bio p{font-size:17px}}.book-shelf .book .availability,.book-detail .availability{color:#f0d3a5;border-top:1px solid #ffffff2b;margin-top:18px;padding-top:16px;font-size:15px;line-height:1.55}.book-detail .availability{max-width:720px;font-size:17px}.map-strip a span{color:#e5c58e;text-align:center;padding:8px 6px 4px;font-size:14px;line-height:1.3;display:block}.amazon-announcement{color:#211426;background:linear-gradient(115deg,#f0ca87 0%,#dca64f 52%,#f6dc9d 100%);border-bottom:3px solid #ffedb8;padding:31px max(7vw,30px)}.announcement-inner{max-width:1200px;margin:auto}.announcement-kicker{letter-spacing:.16em;text-transform:uppercase;font-size:14px;font-weight:700}.amazon-announcement h1{margin:8px 0 10px;font:clamp(37px,5vw,68px)/1.08 Marcellus,Georgia,serif}.amazon-announcement p{max-width:900px;margin:0;font-size:18px;font-weight:600;line-height:1.5}.book-shelf h2{margin:12px 0;font:clamp(42px,6vw,72px)/1.1 Marcellus,Georgia,serif}.book-shelf .book{position:relative}.amazon-tag{color:#251829;text-align:center;text-transform:uppercase;letter-spacing:.08em;background:#edc879;margin-bottom:12px;padding:8px 5px;font-size:13px;font-weight:700;display:block}.detail-amazon{color:#201522;background:#dfbd82;margin:15px 0 5px;padding:9px 14px;font-size:16px;font-weight:700;display:inline-block}.book-shelf h1{margin:12px 0;font:clamp(42px,6vw,72px)/1.1 Marcellus,Georgia,serif}@media (max-width:750px){.amazon-announcement{padding:24px 28px}.amazon-announcement h1{font-size:39px}.amazon-announcement p{font-size:16px}.book-shelf h2{font-size:46px}}.chapter-scene{max-width:980px;margin:38px 0 8px}.chapter-scene img{aspect-ratio:1672/941;object-fit:cover;border:1px solid #ffffff2b;width:100%;height:auto;display:block}.chapter-scene figcaption{color:#e8deea;flex-wrap:wrap;align-items:baseline;gap:16px;padding:13px 2px;font-family:Marcellus,Georgia,serif;font-size:18px;display:flex}.chapter-scene figcaption span{text-transform:uppercase;letter-spacing:.17em;color:var(--gold);font:700 12px/1.5 DM Sans,sans-serif}.coming-soon{background:radial-gradient(circle at 25% 35%,#18384a 0,#141522 48%,#100c19 90%);border-top:1px solid #dfbd8255;border-bottom:1px solid #dfbd8255;grid-template-columns:minmax(220px,390px) minmax(0,1fr);align-items:center;gap:clamp(32px,6vw,90px);display:grid}.coming-art img{border:1px solid #dfbd8266;width:100%;height:auto;display:block;box-shadow:0 25px 65px #000a}.coming-copy h2{margin:14px 0 24px;font:clamp(36px,5vw,64px)/1.08 Marcellus,Georgia,serif}.coming-copy p{color:#d9d1dc;max-width:720px;font-size:17px;line-height:1.75}.coming-copy .coming-lead{color:#f0d7ab;font:clamp(21px,2.5vw,28px)/1.4 Marcellus,Georgia,serif}.coming-note{border-top:1px solid #ffffff35;padding-top:18px;font-weight:700;color:#f0d7ab!important}.coming-soon .eyebrow{font-size:14px}@media (max-width:750px){.coming-soon{grid-template-columns:1fr}.coming-art{max-width:430px;margin:auto}.coming-copy h2{font-size:42px}.coming-copy p{font-size:16px}}.nav{flex-wrap:wrap;justify-content:flex-end}.reading-guide>p{max-width:800px;color:var(--muted)}.reading-guide>h2{margin-top:64px;font-size:clamp(30px,4vw,46px)}.reading-guide a{text-underline-offset:4px}.guide-books{gap:30px;display:grid}.guide-book{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr);align-items:center;gap:28px;max-width:850px;padding-top:30px;display:grid}.guide-book img{aspect-ratio:2/3;object-fit:contain;width:100%;height:auto;display:block}.guide-book h3{margin:12px 0;font:clamp(26px,3vw,36px)/1.2 Marcellus,Georgia,serif}.guide-book p{color:var(--muted);margin:0}.guide-book .read{margin-top:14px}@media (max-width:500px){.guide-book{grid-template-columns:95px minmax(0,1fr);align-items:start;gap:18px}.guide-book .eyebrow{letter-spacing:.12em;font-size:10px}.guide-book h3{font-size:25px}.guide-book p{font-size:15px}}
