:root{--black:#10120f;--paper:#d8cdb2;--ink:#343b2e;--gold:#bca273;--cream:#d5c6aa;--display:'IM Fell English',Georgia,serif;--body:'Cormorant Garamond',Georgia,serif;--page-w:420px;--page-h:600px;--book-w:840px;--spell-rgb:156,210,191;color-scheme:dark}
*{box-sizing:border-box}html,body{margin:0;min-width:320px;min-height:100%;font-family:var(--body);background:var(--black);color:var(--cream)}body{height:100svh;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;border:0;background:none}a{color:inherit}button:disabled{opacity:.25;cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-70px;left:20px;z-index:99;background:var(--paper);color:var(--ink);padding:10px}.skip-link:focus{top:20px}
.chamber{position:fixed;inset:0;background:#0c100e url('assets/chamber.png') center/cover no-repeat;pointer-events:none;filter:saturate(.65)}.chamber::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 53% 45%,transparent 10%,#060b0966 80%),linear-gradient(#070a0850,transparent 25%,transparent 65%,#070a08d9)}.moonlight{position:fixed;inset:-30%;background:conic-gradient(from 136deg at 0 0,transparent 0deg,#8fb1a00a 2deg,#b7d3bd12 6deg,transparent 11deg);pointer-events:none;filter:blur(6px)}.candle-glow{position:fixed;right:-8%;bottom:6%;width:40vw;height:70vh;pointer-events:none;background:radial-gradient(ellipse,#b77b3226,transparent 62%);animation:candle-breathe 6s ease-in-out infinite alternate}#atmosphere{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:15}
.masthead{position:fixed;top:0;left:0;right:0;padding:25px 38px;display:flex;align-items:center;justify-content:space-between;gap:22px;z-index:30}.wordmark{text-decoration:none;display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:29px;color:#d7c6a5}.wordmark img{opacity:.7}.edition{font-size:13px;font-style:italic;color:#9d9f8b;position:absolute;left:50%;transform:translateX(-50%)}.utilities{display:flex;align-items:center;gap:28px}.utilities>button{display:flex;align-items:center;gap:9px;font-family:var(--body);font-size:12px;color:#a7a996;padding:8px 0}.utilities svg{width:14px;height:14px;display:block}.utilities>a svg{fill:#b8b49b;width:13px;height:13px}.utilities>a{padding:8px}.experience{height:100svh;min-height:460px;position:relative;perspective:2200px}.sealed-copy{position:absolute;left:6.4%;top:42%;z-index:3;transition:opacity .6s,transform .8s;max-width:220px;pointer-events:none}.small-rule{display:block;width:36px;height:1px;background:#a7956d77}.sealed-copy p{font-family:var(--display);font-size:29px;line-height:1.2;color:#b9b49d;margin:24px 0 18px}.sealed-copy>span:last-child{font-size:14px;font-style:italic;line-height:1.4;color:#757e6c}
.book-stage{width:var(--book-w);height:var(--page-h);position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);perspective:2400px;z-index:5;isolation:isolate}.book-camera{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:translateX(-25%) rotateX(12deg) rotateY(-14deg) rotateZ(-7deg);transition:transform 1.1s cubic-bezier(.22,.65,.2,1);transform-origin:75% 50%;will-change:transform}.book{width:100%;height:100%;position:relative;filter:drop-shadow(0 13px 6px #0006);z-index:3}.book-shadow{position:absolute;left:28%;top:5%;width:52%;height:110%;background:#000c;filter:blur(30px);transform:translateY(24px) rotate(-9deg);border-radius:15%;transition:width 1.1s,left 1.1s,transform 1.1s;z-index:-3}.book-thickness{position:absolute;right:-5px;top:8px;bottom:-9px;width:50%;background:repeating-linear-gradient(0deg,#796e54 0,#796e54 1px,#b0a181 1px,#b0a181 3px);border-radius:3px 8px 8px 3px;box-shadow:4px 4px 0 #22251d,7px 7px 1px #4c4534,0 15px 22px #0008;z-index:-1;transition:width .7s;transform:translateZ(-4px)}.book-page{background:var(--paper);overflow:hidden;user-select:none;touch-action:pan-y}.page-content{position:relative;width:100%;height:100%;overflow:hidden}.book-page.stf__item--left .paper{box-shadow:inset -16px 0 30px -15px #625231aa,inset 2px 0 6px #493b2833}.book-page.stf__item--right .paper{box-shadow:inset 16px 0 30px -15px #625231aa,inset -2px 0 6px #493b2833}.front-cover{background:#171a14 url('assets/grimoire-cover.png') center/100% 100% no-repeat;border-radius:3px 7px 7px 3px;box-shadow:inset 5px 0 9px #000a,inset 0 0 0 1px #a3905f88;color:#c4a770;text-align:center}.front-cover::before{position:absolute;content:"";inset:0;background:linear-gradient(115deg,#f6e7b919,transparent 30%,#0000 65%,#0005);pointer-events:none;z-index:1}.cover-title{position:absolute;top:8.8%;left:10%;right:10%;font-family:var(--display);line-height:1;filter:drop-shadow(0 1px 0 #000);text-shadow:0 -1px 0 #e1ca8c55,0 2px 3px #000c;z-index:2}.cover-title>span{font-size:calc(var(--page-w)*.048);letter-spacing:calc(var(--page-w)*.007);font-variant:small-caps}.cover-title i{display:block;font-family:var(--body);font-size:calc(var(--page-w)*.034);margin:6px 0 3px;font-weight:400}.cover-title h1{font-size:calc(var(--page-w)*.155);font-weight:400;letter-spacing:calc(var(--page-w)*.007);margin:0}.cover-inscription{position:absolute;bottom:9%;left:10%;right:10%;z-index:2}.cover-inscription>span{font-size:calc(var(--page-w)*.032);font-style:italic}.cover-inscription small{display:block;font-size:calc(var(--page-w)*.024);letter-spacing:1.5px;margin-top:13px;font-variant:small-caps;color:#968560}.cover-clasp{position:absolute;top:46%;right:-1px;width:9%;height:9%;background:linear-gradient(90deg,#544528,#a48a50 35%,#53472e 70%,#96815a);border:2px solid #4b3d25;border-right:0;border-radius:30% 0 0 30%;box-shadow:-4px 2px 4px #000a,inset 0 0 0 2px #ad996344;z-index:4;transform-origin:right center;transition:transform .5s,opacity .35s}.cover-clasp i{position:absolute;left:18%;top:27%;width:40%;height:45%;border-radius:50%;background:#282b22;box-shadow:inset 1px 1px 3px #000,0 0 1px #c5aa6f}.cover-trigger{position:absolute;inset:0;width:100%;height:100%;z-index:5;cursor:pointer}.back-cover{background-color:#1d221a;background-image:repeating-linear-gradient(24deg,#ffffff02 0px,#ffffff02 1px,transparent 1px,transparent 4px);border:10px solid #27291e;box-shadow:inset 0 0 0 1px #84703c88,inset 0 0 0 7px #161b13,inset 0 0 0 8px #84703c44;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#a78f5b}.back-sigil{font-size:calc(var(--page-w)*.25)}.back-cover p{font-size:calc(var(--page-w)*.045);font-style:italic}.back-edition{position:absolute;bottom:12%;font-size:calc(var(--page-w)*.031);letter-spacing:2px}
.paper{background-color:var(--paper);background-image:radial-gradient(ellipse at 2% 0%,#8c66343b,transparent 35%),radial-gradient(ellipse at 100% 100%,#a8804936,transparent 40%),url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.69' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.12' d='M0 0h180v180H0z'/%3E%3C/svg%3E");padding:8% 10% 12%;color:var(--ink);color-scheme:light}.paper::after{content:"";position:absolute;inset:3%;border:1px solid #716b4933;pointer-events:none}.running-head{font-size:calc(var(--page-w)*.026);font-style:italic;color:#70735b;display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative;z-index:2}.folio-mark{position:absolute;left:10%;right:10%;bottom:5%;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:calc(var(--page-w)*.023);font-style:italic;color:#7c775f}.folio-mark b{font-style:normal;font-weight:400;flex-shrink:0}.folio-mark a{text-decoration:none}.paper h2{font-family:var(--display);font-weight:400;font-size:calc(var(--page-w)*.106);line-height:1.05;letter-spacing:-.8px;margin:11% 0 7%}.paper p{font-size:calc(var(--page-w)*.045);line-height:1.43;margin:0 0 5%}.paper p.handwritten{font-size:calc(var(--page-w)*.041);font-style:italic;color:#778060}.title-page{text-align:center}.title-page .running-head{text-align:left}.title-engraving{margin-top:12%;font-size:calc(var(--page-w)*.068);color:#8d8056}.title-page h2{font-size:calc(var(--page-w)*.147);line-height:.96;margin:7% 0}.title-page h2>span{font-size:.78em}.title-rule{display:block;width:24%;height:1px;background:#998a6466;margin:8% auto}.title-page p{font-size:calc(var(--page-w)*.047);line-height:1.35}.title-page p.handwritten{margin-top:10%;font-size:calc(var(--page-w)*.038)}.portrait-page{padding-left:8%;padding-right:8%}.wizard-portrait{position:absolute;inset:9% 0 7%;width:100%;height:84%;object-fit:contain;mix-blend-mode:multiply;filter:saturate(.7);mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 91%,transparent)}.portrait-note{position:absolute;right:6%;bottom:13%;font-size:calc(var(--page-w)*.03);color:#4f634c;line-height:1.3;transform:rotate(-8deg);font-style:italic;text-align:center;background:#d8cdb288;padding:2%}.prose-page h2{margin-top:13%;margin-bottom:8%}.dropcap::first-letter{font-family:var(--display);font-size:3.1em;float:left;line-height:.8;margin:5px 6px 0 0;color:#67704b}.prose-page blockquote{font-family:var(--display);font-style:italic;font-size:calc(var(--page-w)*.057);line-height:1.2;margin:9% 0 0 8%;border-left:1px solid #7c886166;padding-left:7%;color:#68714f}.archive-page{text-align:center}.archive-photo{position:relative;width:52%;padding:3% 3% 8%;background:#c9bfa1;box-shadow:2px 3px 5px #51412b4d;transform:rotate(-5deg);margin:12% auto 7%;border:1px solid #867b5844}.archive-photo::before{content:"";position:absolute;top:-8px;left:38%;width:33%;height:18px;background:#bcaa7e77;transform:rotate(9deg)}.archive-photo img{display:block;width:100%;height:auto;filter:sepia(.65) saturate(.25);mix-blend-mode:multiply}.archive-photo figcaption{position:absolute;bottom:4%;left:0;right:0;font-size:calc(var(--page-w)*.026);font-style:italic}.archive-page h2{font-size:calc(var(--page-w)*.091);margin:6% 0}.archive-page p{font-size:calc(var(--page-w)*.041)}.ink-link{display:inline-block;text-decoration:none;border-bottom:1px solid #74805c88;font-size:calc(var(--page-w)*.035);padding-bottom:4px}.ink-link:hover{color:#8e603a}.ink-link span{margin-left:8px}.archive-page .archive-note{font:calc(var(--page-w)*.023)/1.4 Arial,sans-serif;color:#777561;margin-top:6%}.spell-guide h2{margin-top:14%}.spell-guide>p{font-size:calc(var(--page-w)*.043)}.incantations{margin:9% 0 7%}.incantations button{width:100%;display:flex;align-items:center;text-align:left;gap:7%;padding:7% 2%;border-top:1px solid #86826955;color:var(--ink)}.incantations button:last-child{border-bottom:1px solid #86826955}.incantations button[aria-pressed=true]{background:#8a966219}.element-symbol{font-family:Georgia,serif;width:11%;font-size:calc(var(--page-w)*.075);color:#687453;text-align:center}.incantations b{font-weight:500;font-size:calc(var(--page-w)*.05);display:block}.incantations small{font-size:calc(var(--page-w)*.034);font-style:italic;display:block;margin-top:4px;color:#75765d}.incantations i{width:8px;height:8px;flex-shrink:0;margin-left:auto;border-radius:50%;border:1px solid #81896a}.incantations button[aria-pressed=true] i{background:#687453;box-shadow:inset 0 0 0 2px var(--paper)}.spell-guide .handwritten{font-size:calc(var(--page-w)*.035);text-align:center}
.night-paper{padding:8% 8% 12%;background:#15241f;color:#c4c8ac;background-image:radial-gradient(ellipse at 50% 44%,#2e4d3c55,transparent 65%),repeating-linear-gradient(55deg,#ffffff02 0px,#ffffff02 1px,transparent 1px,transparent 4px);box-shadow:inset 10px 0 24px #0006,inset 0 0 0 1px #a5a16c55}.night-paper::after{content:"";position:absolute;inset:3%;border:1px solid #a4a76d44;pointer-events:none}.night-paper .running-head{color:#92a186;font-size:calc(var(--page-w)*.028)}.ritual{position:relative;width:100%;aspect-ratio:1;margin:14% auto 7%;color:rgb(var(--spell-rgb));display:grid;place-items:center}.ritual-lines{position:absolute;inset:0;width:100%;height:100%;stroke:currentColor;stroke-width:.65;opacity:.45;transition:opacity .5s}.ritual-orb{position:relative;width:33%;height:33%;border:1px solid #b8d5ab44;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 26%,#e1efc61a,#d7e1a906 45%,#081a14aa 78%);box-shadow:inset -5px -5px 12px #071c16,0 0 40px rgba(var(--spell-rgb),.1);transition:box-shadow .6s,transform .6s}.ritual-orb::before{content:"";position:absolute;inset:9%;border-radius:50%;border-top:1px solid rgba(var(--spell-rgb),.3);transform:rotate(-35deg)}.ritual-orb span{font:calc(var(--page-w)*.135)/1 Georgia,serif;text-shadow:0 0 16px rgba(var(--spell-rgb),.5);opacity:.85}.ritual-rune{position:absolute;font-size:calc(var(--page-w)*.04);color:#a6ae84}.rune-n{top:-4%}.rune-s{bottom:-4%}.ritual.is-casting .ritual-lines{opacity:.9;animation:ritual-turn 3s cubic-bezier(.2,.8,.2,1)}.ritual.is-casting .ritual-orb{box-shadow:0 0 70px rgba(var(--spell-rgb),.4),inset 0 0 25px rgba(var(--spell-rgb),.2);transform:scale(1.08)}.prophecy{font-size:calc(var(--page-w)*.042);font-style:italic;text-align:center;line-height:1.3;min-height:2.6em;margin:6% 8%}.cast-button{display:flex;align-items:center;justify-content:space-between;gap:25px;width:75%;margin:8% auto 0;padding:5% 7%;font-size:calc(var(--page-w)*.044);border:1px solid #a8b58a66;background:#c2d8a408;box-shadow:inset 0 0 0 3px #c2d8a405;color:#d2dbc2;transition:background .3s,box-shadow .3s}.cast-button b{font-family:Georgia,serif;font-weight:400}.cast-button:hover{background:#c2d8a414;box-shadow:0 0 20px #c0dd9c12}.night-paper .folio-mark{color:#849276}.ascent-page h2{font-size:calc(var(--page-w)*.1)}.ascent-page>p{font-size:calc(var(--page-w)*.044)}.journey{position:relative;margin:10% 0 0 2%}.journey-line{position:absolute;top:9%;bottom:9%;left:6%;border-left:1px dashed #899371}.journey>div{position:relative;display:flex;align-items:center;gap:10%;margin:9% 0}.journey i{background:var(--paper);width:12%;aspect-ratio:1;border:1px solid #8b936c;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:calc(var(--page-w)*.045);color:#758357}.journey small{font-size:calc(var(--page-w)*.029);font-style:italic;display:block;color:#777b60}.journey div>span{font-size:calc(var(--page-w)*.06);line-height:1.3}.last-page{text-align:center}.last-star{font-size:calc(var(--page-w)*.14);color:#8d8154;margin-top:9%;line-height:1}.last-page h2{font-size:calc(var(--page-w)*.096);margin:8% 0}.last-page>p{font-size:calc(var(--page-w)*.041)}.paper-button{font-family:var(--body);background:#35402e;color:#e0d4b6;padding:5% 7%;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:24px;font-size:calc(var(--page-w)*.043);border:1px solid #253121;box-shadow:2px 2px 0 #384a2a33}.paper-button:hover{background:#4c5b3b}.last-page .paper-button{margin:5% 0 6%;min-width:80%}.last-page .ink-link{font-size:calc(var(--page-w)*.035)}
.seal-invitation{position:absolute;bottom:6.5%;left:50%;transform:translateX(-50%);text-align:center;transition:opacity .5s,transform .6s;z-index:20;white-space:nowrap}#open-book{display:inline-flex;align-items:center;gap:18px;padding:12px 6px;color:#e0d1ae;font-size:19px}#open-book:hover .open-line{width:48px}#open-book:hover .open-star{transform:rotate(90deg);color:#f5e6bd}.open-line{width:30px;height:1px;background:#a4905c;transition:width .4s}.open-star{font-family:Georgia,serif;font-size:25px;transition:transform .5s}.seal-invitation>p{font-size:12px;color:#777f6d;font-style:italic;margin:5px 0}.book-controls{position:absolute;left:50%;bottom:5.2%;transform:translate(-50%,15px);display:flex;align-items:center;justify-content:space-between;gap:30px;width:var(--book-w);max-width:calc(100vw - 100px);opacity:0;visibility:hidden;pointer-events:none;z-index:25;transition:opacity .6s .3s,transform .6s .3s,visibility .6s}.chapter-index{display:flex;gap:17px;align-items:center}.chapter-index button{font-size:13px;color:#8d9580;padding:7px 0;border-bottom:1px solid transparent}.chapter-index button[aria-current]{color:#d0c49d;border-bottom-color:#9c8955}.chapter-index button:hover{color:#dacba7}.page-navigation{display:flex;align-items:center;gap:15px}.page-navigation>button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #8c90604d;border-radius:50%;font:17px Georgia,serif;color:#b8b897}.reading-state{display:flex;flex-direction:column;align-items:center;min-width:64px;gap:4px}.reading-state #reading-label{display:none}.reading-state #folio{font-size:12px;letter-spacing:2px;color:#a3aa8c}#close-book{font-size:12px;color:#8b927c;display:flex;align-items:center;gap:10px;white-space:nowrap}#close-book>span{font:20px Georgia,serif}.corner-note{position:fixed;bottom:20px;font-size:11px;font-style:italic;color:#67735f;z-index:20}.left-corner{left:38px}.right-corner{right:38px}.read-hint{display:none}.is-open .read-hint{display:inline}.is-open .sealed-hint{display:none}.is-open .book-camera,.is-opening .book-camera{transform:none;transform-origin:50% 50%}.is-open .book-shadow,.is-opening .book-shadow{left:2%;width:96%;transform:translateY(16px)}.is-open .book-thickness,.is-opening .book-thickness{width:100%}.is-open .sealed-copy,.is-opening .sealed-copy{opacity:0;transform:translateX(-20px);visibility:hidden}.is-open .seal-invitation,.is-opening .seal-invitation{opacity:0;pointer-events:none;transform:translate(-50%,10px);visibility:hidden}.is-open .book-controls{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.is-opening .cover-clasp,.is-open .cover-clasp{transform:rotateY(-100deg);opacity:0}.is-turning .book-thickness{filter:brightness(.8)}.is-sealed .chapter-index,.is-sealed .page-navigation{pointer-events:none}
dialog{width:min(460px,calc(100% - 36px));padding:35px 40px;background:#d8cdb2;color:var(--ink);border:1px solid #a49265;text-align:center;box-shadow:0 0 0 5px #55482c44,0 30px 90px #000b}dialog::backdrop{background:#050a08c9;backdrop-filter:blur(7px)}dialog h2{font-family:var(--display);font-size:34px;line-height:1.1;font-weight:400}dialog p{font-size:19px;line-height:1.4}.dialog-rune{font-size:32px;color:#968259}dialog .paper-button{font-size:17px;padding:14px 18px;margin:10px 0 20px}dialog small{display:block;font:11px/1.5 Arial,sans-serif;color:#6e725d}.close-dialog{position:absolute;top:6px;right:12px;font-size:25px}.noscript{position:absolute;bottom:15%;left:10%;right:10%;text-align:center;background:#171d17;padding:12px;z-index:50}
@keyframes candle-breathe{0%,100%{opacity:.6}20%{opacity:.75}46%{opacity:.62}50%{opacity:.78}79%{opacity:.65}}@keyframes ritual-turn{from{transform:rotate(0deg) scale(.94)}to{transform:rotate(60deg) scale(1)}}
@media(min-width:1600px){.sealed-copy{left:15%;font-size:33px}.masthead{padding:32px 4%}.left-corner{left:4%}.right-corner{right:4%}}
@media(max-width:1100px){.sealed-copy{left:4%;max-width:165px}.sealed-copy p{font-size:23px}.sealed-copy>span:last-child{font-size:12px}.book-controls{gap:20px}.chapter-index{gap:12px}.chapter-index button{font-size:12px}#close-book{font-size:11px}.edition{font-size:12px}.masthead{padding:22px 28px}.left-corner{left:28px}.right-corner{right:28px}}
@media(max-width:800px){.sealed-copy{display:none}.book-controls{max-width:calc(100vw - 40px);gap:12px;flex-wrap:wrap;bottom:5.8%;justify-content:center}.chapter-index{order:3;justify-content:center;width:100%;gap:22px}.page-navigation{margin-right:12px}.reading-state #reading-label{display:block;font-size:12px;font-style:italic;color:#aab097}.reading-state #folio{font-size:10px}.edition{display:none}.corner-note{font-size:10px}.left-corner{display:none}.right-corner{left:0;right:0;text-align:center;bottom:15px}.wordmark{font-size:26px}.utilities{gap:22px}.utilities>button{font-size:11px}.seal-invitation{bottom:7%}.book-stage{top:46%}}
@media(max-width:580px){.masthead{padding:18px 21px}.wordmark img{width:20px;height:26px}.wordmark{font-size:25px}.utilities>button .sound-label{display:none}.utilities{gap:22px}.book-camera{transform:rotateX(8deg) rotateY(-12deg) rotateZ(-5deg);transform-origin:50% 50%}.book-stage{top:46%}.book-thickness{width:100%;right:-3px;bottom:-7px;top:5px}.book-shadow{left:0;width:100%;transform:translateY(14px) rotate(-5deg)}.seal-invitation>p{font-size:11px}#open-book{font-size:18px;gap:14px}.seal-invitation{bottom:8%}.book-controls{bottom:6.4%;row-gap:10px}.chapter-index{gap:20px}.chapter-index button{font-size:12px}.page-navigation{gap:14px}.page-navigation>button{width:32px;height:32px}.reading-state{min-width:80px}#close-book{font-size:12px}.chamber{background-position:56% center}.cover-title i{margin:3px 0}.cover-inscription small{letter-spacing:1px;margin-top:8px}.paper .archive-note{font-size:calc(var(--page-w)*.026)}.page-content .folio-mark{font-size:calc(var(--page-w)*.027)}dialog{padding:30px 25px}dialog h2{font-size:30px}}
@media(max-height:650px) and (min-width:581px){.masthead{padding-top:14px}.book-controls{bottom:5%}.corner-note{bottom:10px}.sealed-copy p{font-size:22px}.seal-invitation{bottom:4.5%}.seal-invitation>p{display:none}.book-stage{top:47%}.edition{font-size:11px}}
.prose-page h2{font-size:calc(var(--page-w)*.098);margin-top:8%;margin-bottom:6%}.prose-page>p{font-size:calc(var(--page-w)*.042);margin-bottom:4%}.prose-page blockquote{margin-top:5%;font-size:calc(var(--page-w)*.052)}.spell-guide h2{margin-top:10%}.incantations{margin:6% 0 5%}.incantations button{padding:4% 2%}.spell-guide p.handwritten{font-size:calc(var(--page-w)*.032);line-height:1.25;margin:4% 0 0}
.archive-photo{width:46%;margin:9% auto 6%}.archive-page h2{margin:5% 0}.archive-page .archive-note{margin-top:4%}
.last-star{font-size:calc(var(--page-w)*.11);margin-top:6%}.last-page h2{margin:6% 0}
.ritual{width:88%;margin:8% auto 5%}.prophecy{margin:4% 8%}.cast-button{margin:4% auto 0;padding:4% 6%}
.is-portrait .book-camera{transform:rotateX(8deg) rotateY(-12deg) rotateZ(-5deg);transform-origin:50% 50%}.is-portrait .book-thickness{width:100%}.is-portrait .book-shadow{left:0;width:100%}.is-portrait.is-open .book-camera,.is-portrait.is-opening .book-camera{transform:none}.is-sealed:not(.is-portrait) .book-camera{transform:translateX(-25%) rotateX(12deg) rotateY(-14deg) rotateZ(-7deg) scale(.88)}.is-sealed.is-portrait .book-camera{transform:rotateX(8deg) rotateY(-12deg) rotateZ(-5deg) scale(.92)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.book-camera{will-change:auto}.moonlight,.candle-glow{display:none}}
