:root{--ink:#161320;--ink-deep:#100d18;--ink-soft:#221c2e;--gold:#c9a86a;--gold-bright:#e3c98f;--text:#ede4d3;--muted:#b0a693;--paper:#ece2cc;--violet:#6f5a8f;--ease:cubic-bezier(.2, .78, .2, 1);--mx:0px;--my:0px}*{box-sizing:border-box}html,body{background:var(--ink-deep);width:100%;min-height:100%;margin:0}body{min-height:100svh;color:var(--text);-webkit-font-smoothing:antialiased;cursor:default;font-family:Iowan Old Style,Palatino Linotype,Palatino,Book Antiqua,Baskerville,Georgia,serif;overflow-x:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,a{font:inherit}button{color:inherit}.stage{isolation:isolate;background:radial-gradient(120% 85% at 50% 108%,#ff9e4229,#0000 46%),linear-gradient(#120e0a 0%,#0a0705 46%,#000 100%);width:100%;min-height:100svh;position:relative;overflow:hidden}.stage:before{content:"";z-index:0;pointer-events:none;mix-blend-mode:screen;will-change:opacity;background:radial-gradient(130% 100% at 50% 118%,#ffd48280 0%,#ffa84a42 30%,#d6742621 55%,#7840180a 72%,#0000 82%);animation:9s ease-in-out infinite candleFlicker;position:absolute;inset:0}@keyframes candleFlicker{0%,to{opacity:.6}12%{opacity:.64}26%{opacity:.56}38%{opacity:.62}40%{opacity:.46}43%{opacity:.61}58%{opacity:.58}70%{opacity:.63}72%{opacity:.49}75%{opacity:.61}90%{opacity:.59}}.topbar{z-index:50;pointer-events:none;justify-content:space-between;align-items:center;width:100%;padding:26px 3.2vw;display:flex;position:fixed;top:0;left:0}.brand{color:var(--gold);letter-spacing:-.035em;pointer-events:auto;white-space:nowrap;font-size:clamp(20px,1.8vw,26px);font-style:italic;font-weight:600;line-height:1;text-decoration:none}.nav-actions{pointer-events:auto;align-items:center;gap:10px;display:flex}.icon-button,.ticket-button,.close-button,.pill,.book-card{-webkit-tap-highlight-color:transparent;border:0;outline:0}.icon-button,.ticket-button{background:var(--paper);color:#2b2438;height:44px;transition:transform .24s var(--ease), background-color .24s ease;border:1px solid #3d31232e;box-shadow:0 8px 26px #0a071240}.ticket-button{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;place-items:center;min-width:110px;padding:0 20px;font-size:12px;font-weight:700;text-decoration:none;display:inline-grid}.ticket-button--alt{background:var(--gold)}.icon-button{cursor:pointer;border-radius:50%;place-items:center;width:44px;display:grid}.lang-button{letter-spacing:.08em;font-size:11px;font-weight:700;text-decoration:none}.menu-glyph{width:14px;height:10px;position:relative}.menu-glyph:before,.menu-glyph:after{content:"";width:12px;height:2px;transition:transform .3s var(--ease), top .3s var(--ease);background:currentColor;border-radius:2px;position:absolute;left:1px}.menu-glyph:before{top:2px}.menu-glyph:after{top:7px}[data-menu=open] .menu-glyph:before{top:5px;transform:rotate(45deg)}[data-menu=open] .menu-glyph:after{top:5px;transform:rotate(-45deg)}.icon-button:hover,.ticket-button:hover{background:#f7eed9;transform:translateY(-3px)}.icon-button:focus-visible,.ticket-button:focus-visible,.close-button:focus-visible,.pill:focus-visible,.menu-link:focus-visible{outline:2px solid var(--gold-bright);outline-offset:4px}.hero-word{z-index:1;color:var(--gold);letter-spacing:-.08em;white-space:nowrap;text-align:center;transform:translate3d(calc(-50% + var(--mx) * -.12), calc(var(--my) * -.12), 0);-webkit-user-select:none;user-select:none;margin:0;font-size:clamp(150px,19vw,290px);font-style:italic;font-weight:500;line-height:.84;position:absolute;top:10.5vh;left:50%}.hero-tagline{color:var(--muted);letter-spacing:.34em;text-transform:uppercase;white-space:normal;margin-top:2.4vh;font-family:inherit;font-size:clamp(15px,1.5vw,22px);font-style:italic;font-weight:500;display:block}.gallery{z-index:5;perspective:1400px;transform-style:flat;position:absolute;inset:0}.book-card{--hover-y:0px;--local-x:0px;--local-y:0px;left:var(--x);top:var(--y);width:var(--w);aspect-ratio:.672;cursor:pointer;transform:translate3d(calc(-50% + var(--local-x)), calc(var(--hover-y) + var(--local-y)), 0) rotate(var(--r)) rotateY(var(--yaw));transform-style:preserve-3d;transition:left 1.1s var(--ease), top 1.1s var(--ease), width 1.1s var(--ease), opacity .5s ease, filter .5s ease, transform .52s var(--ease);will-change:transform, left, top, width;background:0 0;padding:0;position:absolute}.book-card--left{--x:23.2%;--y:44%;--w:min(29vw, 415px);--r:-8deg;--yaw:-7deg;z-index:1}.book-card--center{--x:50%;--y:38%;--w:min(31.5vw, 450px);--r:.8deg;--yaw:-3deg;z-index:3}.book-card--right{--x:77%;--y:45%;--w:min(29vw, 415px);--r:8deg;--yaw:7deg;z-index:2}.book-card:hover,.book-card[data-hovered=true]{--hover-y:-28px;z-index:8}.book{width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s var(--ease);display:block;position:relative}.book-card:hover .book{transform:scale(1.035)rotateX(-1.5deg)}.book-back,.page-block,.page-fan,.front-cover,.book-shadow{border-radius:3px 7px 7px 3px;position:absolute;inset:0}.book-shadow{z-index:-2;filter:blur(22px);opacity:.78;background:#06040cbf;border-radius:12px;inset:5% -4% -2% 4%;transform:translate3d(18px,28px,-60px)}.book-back{z-index:0;background:var(--cover-color);transform:translate3d(7px,1px,-26px);box-shadow:0 18px 30px #06040c73}.page-block{z-index:1;transition:transform 1.1s var(--ease), inset 1.1s var(--ease);background:repeating-linear-gradient(0deg,#69563a24 0 1px,#0000 1px 2.8px),linear-gradient(90deg,#cfc1a4 0%,#f2e8d2 14%,#e7dac0 87%,#cbb894 100%);border:1px solid #54442d40;border-radius:2px 5px 5px 2px;inset:1.7% 1.4% 1.7% 3.8%;overflow:visible;transform:translate3d(7px,1px,-12px);box-shadow:7px 5px 16px #0b071147}.page-block:before{content:"";transform-origin:0 100%;background:repeating-linear-gradient(90deg,#d9cbae 0 2px,#f2e7cf 2px 5px);border-radius:2px 4px 0 0;height:8px;position:absolute;top:-7px;left:1px;right:1px;transform:skew(-8deg)}.page-block:after{content:"";transform-origin:0;background:repeating-linear-gradient(0deg,#cbb995 0 1px,#eee3cd 1px 3px);border-radius:0 4px 4px 0;width:8px;height:100%;position:absolute;top:0;right:-7px;transform:skewY(-2deg);box-shadow:3px 2px 7px #0d08122e}.page-fan{z-index:2;pointer-events:none;transform-style:preserve-3d;inset:2.4% 2% 2.4% 4.3%}.page-fan i{opacity:0;transform-origin:1.5%;transition:opacity .5s ease, transform 1.2s var(--ease);background:linear-gradient(90deg,#745b3838,#0000 9%),repeating-linear-gradient(0deg,#f0e6d0 0 2px,#e6d8ba 2px 3px);border:1px solid #66533738;border-radius:2px 5px 5px 2px;display:block;position:absolute;inset:0;transform:translate(0,0)rotateY(0);box-shadow:3px 5px 10px #0f0a1414}.front-cover{z-index:3;background-color:var(--cover-color);background-image:var(--cover-art);transform-origin:1.5%;transform-style:preserve-3d;transition:transform 1.2s var(--ease), box-shadow .6s ease;background-position:50%;background-size:cover;border:1px solid #eee0c233;overflow:hidden;transform:translateZ(12px);box-shadow:0 25px 38px #06040c73,inset -12px 0 18px #0000002e,inset 4px 0 9px #ffffff1a}.front-cover:before{content:"";z-index:3;mix-blend-mode:multiply;opacity:.8;background:linear-gradient(90deg,#00000059,#ffffff14 35%,#0000001f 75%,#0000);width:5.5%;position:absolute;top:0;bottom:0;left:0}.front-cover:after{content:"";z-index:4;border-radius:inherit;pointer-events:none;border:3px solid #ffffff0a;position:absolute;inset:0}.cover-copy{z-index:2;color:var(--cover-ink);text-align:center;text-shadow:0 1px #00000038;grid-template-rows:auto auto auto 1fr auto;align-content:start;display:grid;position:absolute;inset:5.8% 7.5% 5.5%}.cover-kicker{letter-spacing:.16em;text-transform:uppercase;font-size:clamp(8px,.72vw,11px);font-style:italic;font-weight:600}.cover-title{letter-spacing:-.05em;margin-top:2.2%;font-size:clamp(30px,3.6vw,54px);font-weight:600;line-height:.92}.cover-subtitle{letter-spacing:.035em;margin-top:3%;font-size:clamp(9px,.95vw,14px);font-style:italic;font-weight:600}.cover-footer{letter-spacing:.18em;text-transform:uppercase;border-top:1px solid;align-self:end;padding-top:3%;font-size:clamp(7px,.62vw,9px);font-weight:700}.open-badge{z-index:6;color:#2b2138;background:var(--paper);clip-path:polygon(3% 22%,10% 8%,25% 7%,38% 1%,51% 6%,66% 2%,77% 10%,92% 11%,96% 26%,100% 39%,95% 52%,99% 67%,88% 79%,83% 93%,68% 94%,55% 100%,42% 94%,27% 98%,17% 88%,4% 84%,5% 69%,0 57%,5% 43%,1% 34%);letter-spacing:.12em;opacity:0;width:94px;height:66px;transition:opacity .26s ease, transform .42s var(--ease), filter .26s ease;pointer-events:none;place-items:center;font-size:11px;font-style:italic;font-weight:700;display:grid;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%)scale(.76)rotate(-3deg)}.book-card:hover .open-badge,.book-card[data-hovered=true] .open-badge,.book-card:focus-visible .open-badge{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(-3deg)}.book-card:focus-visible{outline:0}.detail-panel{z-index:12;opacity:0;pointer-events:none;width:min(47.5%,650px);transition:opacity .52s .28s;position:absolute;top:14.5%;right:4.5%}.detail-title{color:var(--gold);letter-spacing:-.055em;margin:0 0 24px;font-size:clamp(46px,5.2vw,74px);font-style:italic;font-weight:500;line-height:.96}.detail-description{max-width:600px;color:var(--muted);margin:0;font-size:clamp(14px,1.28vw,17px);line-height:1.64}.detail-scroll{overscroll-behavior:contain;scrollbar-color:#c9a86ab3 #3a324859;scrollbar-width:thin;max-height:clamp(340px,100svh - 450px,600px);padding:0 22px 76px 0;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 0 calc(100% - 76px),#0000 100%);mask-image:linear-gradient(#000 0 calc(100% - 76px),#0000 100%)}.detail-scroll::-webkit-scrollbar{width:5px}.detail-scroll::-webkit-scrollbar-track{background:#3a324859;border-radius:999px}.detail-scroll::-webkit-scrollbar-thumb{background:#c9a86ab3;border-radius:999px}.doc-section{border-top:1px solid #dcc8a433;margin-top:26px;padding-top:22px}.doc-label{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-style:italic;font-weight:700}.doc-steps{counter-reset:guide-step;gap:16px;margin:0;padding:0;list-style:none;display:grid}.doc-steps li{counter-increment:guide-step;grid-template-columns:34px 1fr;gap:12px;display:grid}.doc-steps li:before{content:counter(guide-step, decimal-leading-zero);color:#e3c98fa6;letter-spacing:.08em;padding-top:2px;font-size:12px;font-style:italic}.doc-step-copy{gap:4px;display:grid}.doc-step-copy strong{color:#e8dcc4;font-size:15px;font-style:italic;font-weight:650}.doc-step-copy span,.doc-review{color:var(--muted);font-size:14px;line-height:1.58}.prompt-block{background:#2820389e;border:1px solid #dcc8a433;border-radius:12px;margin:0;padding:17px 18px;box-shadow:inset 0 1px #ffffff09}.prompt-block code{color:#e8dcc4;white-space:pre-wrap;font-family:inherit;font-size:14px;font-style:italic;line-height:1.6}.doc-review{margin:0}.meta-row{color:var(--gold);grid-template-columns:max-content 1px max-content 1fr;align-items:center;gap:clamp(16px,2vw,27px);margin-top:22px;display:grid}.stars{letter-spacing:.02em;gap:8px;font-size:24px;line-height:1;display:flex}.stars .dim{color:#5c5344}.meta-divider{background:#dcc8a447;width:1px;height:26px}.review-source,.year{color:#c3b391;font-size:18px;font-style:italic;font-weight:650}.year{justify-self:end}.detail-rule{background:#dcc8a43d;border:0;height:1px;margin:10px 0 22px}.bottom-dock{z-index:24;width:min(47.5%,650px);position:fixed;bottom:28px;right:4.5%}.bottom-dock .meta-row{margin:0 10px}.bottom-dock .detail-rule{margin:10px 8px 14px}.action-rail{--action-inset:8px;align-items:center;gap:var(--action-inset);width:100%;padding:var(--action-inset);background:#302840e0;border:1px solid #eee2ca12;border-radius:32px;display:flex;box-shadow:0 16px 32px #08050e4d}.pill{background:var(--gold);color:#2b2438;cursor:pointer;white-space:nowrap;min-width:0;min-height:58px;transition:transform .22s var(--ease), filter .22s ease, background .22s ease;border-radius:24px;flex:1 1 0;justify-content:center;align-items:center;padding:0 18px;font-size:15px;font-style:italic;font-weight:700;text-decoration:none;display:inline-flex}.pill:hover{filter:brightness(1.06);transform:translateY(-2px)}.pill--download{background:var(--paper);flex:0 auto}.pill.icon-only{color:#f1e6cf;background:#4a3d63;flex:0 0 58px;width:58px;min-width:58px;padding:0}.pill.icon-only svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:19px;height:19px;transition:fill .22s}.pill.icon-only[aria-pressed=true] svg{fill:var(--gold-bright);stroke:var(--gold-bright)}.close-button{z-index:52;width:54px;height:54px;color:var(--paper);cursor:pointer;opacity:0;transition:opacity .4s ease, transform .62s var(--ease), background .22s ease;pointer-events:none;background:#1e182c99;border:1px solid #ffffff42;border-radius:50%;place-items:center;font-size:27px;font-weight:200;display:grid;position:fixed;top:72px;left:50%;transform:translate(-50%,-18px)rotate(-45deg)}.close-button:hover{background:#ffffff14}.menu-layer{z-index:40;opacity:0;pointer-events:none;background:radial-gradient(circle at 50% 62%,#ffaa481a,#0000 42%),#020101f0;place-items:center;transition:opacity .46s;display:grid;position:fixed;inset:0}.menu-list{flex-direction:column;align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.menu-link{cursor:pointer;color:var(--gold);letter-spacing:-.055em;transition:color .2s ease, transform .5s var(--ease);background:0 0;border:0;padding:0;font-size:clamp(44px,6.4vw,92px);font-style:italic;font-weight:500;line-height:1.05;text-decoration:none;display:inline-block;transform:translateY(24px)}.menu-link:hover{color:#fff}[data-menu=open] .menu-layer{opacity:1;pointer-events:auto}[data-menu=open] .menu-link{transform:translateY(0)}.about-layer{z-index:60;opacity:0;pointer-events:none;background:#020101d1;place-items:center;padding:24px;transition:opacity .4s;display:grid;position:fixed;inset:0}.about-layer[data-open=true]{opacity:1;pointer-events:auto}.about-modal{overscroll-behavior:contain;width:min(100%,620px);max-height:calc(100svh - 48px);transition:transform .52s var(--ease);scrollbar-color:#c9a86ab3 transparent;scrollbar-width:thin;background:radial-gradient(120% 70% at 50% 0,#ffaa4814,#0000 60%),#16121ef5;border:1px solid #dcc8a433;border-radius:18px;padding:clamp(28px,4vw,48px);position:relative;overflow-y:auto;transform:translateY(18px)scale(.98);box-shadow:0 30px 80px #0000008c}.about-layer[data-open=true] .about-modal{transform:translateY(0)scale(1)}.about-close{width:40px;height:40px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50%;place-items:center;font-size:22px;font-weight:200;transition:background .22s;display:grid;position:absolute;top:16px;right:16px}.about-close:hover{background:#ffffff14}.about-close:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.about-title{color:var(--gold);letter-spacing:-.055em;margin:0 0 20px;font-size:clamp(44px,5vw,64px);font-style:italic;font-weight:500;line-height:.96}.about-prose{color:var(--muted);margin:0 0 14px;font-size:clamp(14px,1.2vw,16px);line-height:1.64}.about-prose:first-of-type{color:#e8dcc4;font-style:italic}.about-features{border-top:1px solid #dcc8a433;gap:14px;margin:26px 0 0;padding:22px 0 0;list-style:none;display:grid}.about-features li{grid-template-columns:22px 1fr;column-gap:10px;display:grid}.about-features li:before{content:"✦";color:#e3c98fb3;grid-row:span 2;padding-top:1px;font-size:13px}.about-features strong{color:#e8dcc4;font-size:15px;font-style:italic;font-weight:650}.about-features span{color:var(--muted);font-size:14px;line-height:1.55}.about-coda{color:var(--gold);letter-spacing:.16em;text-align:center;text-transform:uppercase;margin:26px 0 0;font-size:13px;font-style:italic}.toast{z-index:80;max-width:calc(100vw - 32px);color:var(--paper);opacity:0;transition:opacity .25s ease, transform .35s var(--ease);pointer-events:none;background:#1c1728e6;border:1px solid #ffffff24;border-radius:999px;padding:12px 18px;font-size:13px;font-weight:650;position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);box-shadow:0 12px 36px #00000040}.toast[data-show=true]{opacity:1;transform:translate(-50%)}.stage[data-mode=detail] .hero-word{opacity:0;filter:blur(16px);transform:translate3d(calc(-50% + var(--mx) * -.12), -34px, 0) scale(.9);transition:opacity .7s ease, filter .7s ease, transform .9s var(--ease)}.stage[data-mode=detail] .book-card:not(.selected){opacity:0;filter:blur(10px);transform:translate3d(-50%, 60vh, -200px) rotate(var(--r)) scale(.8);pointer-events:none}.stage[data-mode=detail] .book-card.selected{--hover-y:0px;--local-x:0px;--local-y:0px;--detail-yaw:-5deg;--detail-pitch:0deg;z-index:14;cursor:default;pointer-events:none;width:min(29vw,400px);top:50%;left:27%;transform:translate(-50%,-50%)rotate(-3deg)}.stage[data-mode=detail] .book-card.selected .book{transform:scale(1.02) rotateX(var(--detail-pitch)) rotateY(var(--detail-yaw));transition-duration:.17s;transition-timing-function:cubic-bezier(.2,.78,.2,1)}.stage[data-mode=detail] .book-card.selected .front-cover{transform:translateZ(18px)rotateY(-29deg);box-shadow:25px 26px 44px #08050e5c,inset -12px 0 18px #00000026,inset 4px 0 9px #ffffff17}.stage[data-mode=detail] .book-card.selected .page-block{inset:1.9% 1.5% 1.9% 4.4%;transform:translate3d(6px,1px,-11px)}.stage[data-mode=detail] .book-card.selected .page-fan i{opacity:1}.stage[data-mode=detail] .book-card.selected .page-fan i:first-child{transform:translateZ(10px)rotateY(-4deg)}.stage[data-mode=detail] .book-card.selected .page-fan i:nth-child(2){transform:translateZ(11px)rotateY(-8deg)}.stage[data-mode=detail] .book-card.selected .page-fan i:nth-child(3){transform:translateZ(12px)rotateY(-12deg)}.stage[data-mode=detail] .book-card.selected .page-fan i:nth-child(4){transform:translateZ(13px)rotateY(-16deg)}.stage[data-mode=detail] .open-badge{opacity:0}.stage[data-mode=detail] .detail-panel{opacity:1;pointer-events:auto}.stage[data-mode=gallery] .detail-panel{transition-duration:.16s;transition-delay:0s}.stage[data-mode=detail] .close-button{opacity:1;pointer-events:auto;transform:translate(-50%)rotate(0)}@media (max-width:900px){body{overflow-x:hidden}.topbar{padding:20px}.ticket-button{min-width:auto;height:40px;padding:0 14px;font-size:10px}.icon-button{width:40px;height:40px}.hero-word{font-size:clamp(110px,26vw,210px);top:15vh}.book-card--left{--x:14%;--y:44%;--w:min(47vw, 340px)}.book-card--center{--x:50%;--y:38%;--w:min(52vw, 375px)}.book-card--right{--x:87%;--y:45%;--w:min(47vw, 340px)}.stage[data-mode=detail]{min-height:calc(100svh + 760px);overflow-y:auto}.stage[data-mode=detail] .book-card.selected{width:min(56vw,330px);top:50svh;left:50%}.detail-panel{width:auto;padding-bottom:130px;top:calc(100svh + 48px);left:7%;right:7%}.detail-scroll{max-height:none;padding-bottom:20px;-webkit-mask-image:none;mask-image:none}.detail-title{font-size:clamp(42px,9vw,64px)}.bottom-dock{width:auto;bottom:20px;left:20px;right:20px}.action-rail{scrollbar-width:none;overflow-x:auto}.action-rail::-webkit-scrollbar{display:none}.pill{min-width:118px}.pill.icon-only{min-width:58px}}@media (max-width:560px){.brand{font-size:22px}.hero-word{font-size:34vw;top:20vh}.hero-tagline{letter-spacing:.28em;font-size:12px}.book-card--left{--x:4%;--y:46%;--w:62vw}.book-card--center{--x:50%;--y:41%;--w:68vw}.book-card--right{--x:96%;--y:47%;--w:62vw}.stage[data-mode=detail] .book-card.selected{width:min(64vw,300px)}.detail-panel{left:20px;right:20px}.pill{min-width:0;min-height:52px;padding:0 12px;font-size:12px}.pill.icon-only{flex-basis:52px;width:52px;min-width:52px}.meta-row{grid-template-columns:max-content 1px 1fr}.year{display:none}.close-button{top:56px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
