.book[data-astro-cid-7e46yg3s]{--w:300px;--h:425px;--d:40px;--c:4px;--page-offset-x:5px;--page-offset-y:6px;--spine:#081525;--paper:#f0efec}.book-wrapper[data-astro-cid-7e46yg3s]{justify-content:center;align-items:center;padding:3rem 2rem 4.5rem;display:flex;position:relative}.book-shadow[data-astro-cid-7e46yg3s]{filter:blur(20px);z-index:0;background:#00000073;border-radius:50%;width:270px;height:32px;position:absolute;bottom:25px;left:50%;transform:translate(-44%)skew(-14deg)}.book-scene[data-astro-cid-7e46yg3s]{perspective:1400px;perspective-origin:50% 40%;z-index:1;position:relative}.book[data-astro-cid-7e46yg3s],.cover[data-astro-cid-7e46yg3s],.page-block[data-astro-cid-7e46yg3s]{transform-style:preserve-3d;position:relative}.book[data-astro-cid-7e46yg3s]{width:var(--w);height:var(--h);transition:transform .65s cubic-bezier(.25,.8,.25,1);transform:rotateX(7deg)rotateY(-22deg)}.cover__outer[data-astro-cid-7e46yg3s],.cover__inner[data-astro-cid-7e46yg3s],.cover__edge[data-astro-cid-7e46yg3s],.face--pages[data-astro-cid-7e46yg3s],.face--top[data-astro-cid-7e46yg3s],.face--bottom[data-astro-cid-7e46yg3s],.spine[data-astro-cid-7e46yg3s]{position:absolute}.cover--front[data-astro-cid-7e46yg3s]{width:var(--w);height:var(--h);transform:translateZ(calc(var(--d) / 2));position:absolute;top:0;left:0}.cover__outer[data-astro-cid-7e46yg3s]{background:var(--spine);width:100%;height:100%;transform:translateZ(0)}.cover-img[data-astro-cid-7e46yg3s]{object-fit:cover;filter:brightness(1.05)contrast(.88)saturate(.9);width:100%;height:100%;display:block}.cover__inner[data-astro-cid-7e46yg3s]{width:100%;height:100%;transform:translateZ(calc(var(--c) * -1));background:var(--spine)}.cover__edge[data-astro-cid-7e46yg3s]{background:var(--spine);filter:brightness(.85)}.cover__edge--right[data-astro-cid-7e46yg3s]{width:var(--c);transform-origin:100%;height:calc(100% - 2px);top:1px;right:0;transform:rotateY(-90deg)}.cover__edge--top[data-astro-cid-7e46yg3s]{width:calc(100% - 2px);height:var(--c);transform-origin:top;top:0;left:1px;transform:rotateX(90deg)}.cover__edge--bottom[data-astro-cid-7e46yg3s]{width:calc(100% - 2px);height:var(--c);transform-origin:bottom;bottom:0;left:1px;transform:rotateX(-90deg)}.hinge-shadow[data-astro-cid-7e46yg3s]{pointer-events:none;z-index:2;background:linear-gradient(90deg,#0000004d 0,#0000001a 8px,#ffffff05 16px,#0000 28px);position:absolute;inset:0}.glare[data-astro-cid-7e46yg3s]{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.glare[data-astro-cid-7e46yg3s]:after{content:"";background:radial-gradient(#ffffff1a 0%,#fff0 45%),linear-gradient(115deg,#fff0 40%,#ffffff0d 50%,#fff0 60%);width:200%;height:200%;transition:transform .65s cubic-bezier(.25,.8,.25,1);position:absolute;top:-50%;left:-50%;transform:translate(25%,-5%)}.cover--back[data-astro-cid-7e46yg3s]{width:var(--w);height:var(--h);transform:rotateY(180deg) translateZ(calc(var(--d) / 2));position:absolute;top:0;left:0}.cover--back[data-astro-cid-7e46yg3s] .cover__outer[data-astro-cid-7e46yg3s]{background:var(--spine);box-shadow:inset 0 0 40px #00000080}.cover__edge--left[data-astro-cid-7e46yg3s]{width:var(--c);transform-origin:0;height:calc(100% - 2px);top:1px;left:0;transform:rotateY(90deg)}.spine[data-astro-cid-7e46yg3s]{width:var(--d);height:calc(var(--h) - 1px);margin-left:calc(var(--d) / -2);transform:rotateY(-90deg) translateZ(calc(var(--w) / 2));background:linear-gradient(to right, #010a12 0%, var(--spine) 15%, #0d2035 50%, var(--spine) 85%, #010a12 100%);top:.5px;left:50%}.page-block[data-astro-cid-7e46yg3s]{width:calc(var(--w) - var(--page-offset-x));height:calc(var(--h) - 2 * var(--page-offset-y));left:0;top:var(--page-offset-y);--page-d:calc(var(--d) - 2 * var(--c));position:absolute;transform:translateZ(0)}.face--pages[data-astro-cid-7e46yg3s]{width:var(--page-d);height:100%;margin-left:calc(var(--page-d) / -2);background:repeating-linear-gradient(to right, #fcfcfc 0px, var(--paper) 1px, #e6e4e0 2px, #f0efec 3px);left:100%;transform:rotateY(90deg)}.face--top[data-astro-cid-7e46yg3s]{width:100%;height:var(--page-d);margin-top:calc(var(--page-d) / -2);background:repeating-linear-gradient(to bottom, #fcfcfc 0px, var(--paper) 1px, #e1dfdb 2px, #f0efec 3px);top:0;transform:rotateX(90deg)}.face--bottom[data-astro-cid-7e46yg3s]{width:100%;height:var(--page-d);margin-top:calc(var(--page-d) / -2);background:repeating-linear-gradient(#e6e4e0 0,#d7d5d1 1px,#c9c7c3 2px,#d3d1cd 3px);top:100%;transform:rotateX(-90deg)}@media (hover:hover) and (pointer:fine){.book-wrapper[data-astro-cid-7e46yg3s]:hover .book[data-astro-cid-7e46yg3s]{transform:rotateX(3deg)rotateY(-12deg)scale(1.04)}.book-wrapper[data-astro-cid-7e46yg3s]:hover .glare[data-astro-cid-7e46yg3s]:after{transform:translate(-25%,5%)}}@media (width<=600px){.book[data-astro-cid-7e46yg3s]{--w:240px;--h:340px;--d:32px;--c:3px;--page-offset-x:5px;--page-offset-y:5px}.book-wrapper[data-astro-cid-7e46yg3s]{padding:2rem 1rem 3.5rem}.book-shadow[data-astro-cid-7e46yg3s]{width:215px;bottom:20px}}@media (width<=400px){.book[data-astro-cid-7e46yg3s]{--w:190px;--h:269px;--d:26px;--c:3px;--page-offset-x:4px;--page-offset-y:4px}.book-shadow[data-astro-cid-7e46yg3s]{width:170px;bottom:15px}}.lightbox{z-index:99999;background-color:#0a2342f2;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.lightbox-content{border:2px solid var(--color-accent);border-radius:8px;max-width:90%;max-height:85vh;animation:.3s fadeIn;box-shadow:0 0 30px #000c}.lightbox-close{color:#fff;cursor:pointer;z-index:100000;font-size:40px;font-weight:700;position:absolute;top:15px;right:25px}.lightbox-prev,.lightbox-next{cursor:pointer;color:#fff;user-select:none;z-index:100000;background:#00000080;border:none;border-radius:5px;width:auto;padding:15px 20px;font-size:25px;font-weight:700;transition:all .2s;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:15px}.lightbox-next{right:15px}.lightbox-prev:hover,.lightbox-next:hover,.lightbox-close:hover{color:var(--color-accent);background:#000c}.preview-label{text-align:center;color:var(--color-white);margin-bottom:1rem;font-size:.95rem;font-weight:700;display:block}.price-box-overlay{margin-top:.9rem;padding-bottom:0!important}.price-row{justify-content:center}.price-new{color:var(--color-accent);font-size:2rem;font-weight:700;line-height:1}.large-preview-grid{grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:.5rem;display:grid}.show-on-mobile-only{display:none}.mobile-cover-img{object-fit:contain;width:100%;height:auto;max-height:40vh;margin:0 auto 1.5rem;display:block}@media (width<=992px){.show-on-mobile-only{display:block}.large-preview-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important}.large-preview-grid .gallery-link:nth-child(n+4){display:none!important}}.large-preview-grid .gallery-link{border:1px solid #ddd;border-radius:8px;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden;box-shadow:0 4px 6px #0000000d}.large-preview-grid .gallery-link:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0000001a}.large-preview-grid img{aspect-ratio:1/1.414;object-fit:cover;width:100%;height:auto;display:block}@media (width<=768px){.large-preview-grid{gap:10px}}.stripe-modal{backdrop-filter:blur(5px);background-color:#0a2342d9;display:none}.stripe-modal-content{text-align:center;background:#fff;border-radius:12px;width:90%;max-width:500px;padding:30px;animation:.3s modalFadeIn;position:relative;box-shadow:0 15px 40px #0003}.stripe-modal-close{color:#888;cursor:pointer;z-index:2;font-size:28px;font-weight:700;line-height:1;position:absolute;top:15px;right:20px}.stripe-modal-close:hover{color:var(--color-accent)}.stripe-modal-title{color:var(--color-text);margin-bottom:10px;font-size:1.5rem;font-weight:700}.stripe-modal-desc{color:#555;margin-bottom:25px;font-size:.95rem;line-height:1.5}.digital-waiver{color:var(--color-text);cursor:pointer;text-align:left;background:#00000008;border:1px solid #0000001a;border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:25px;padding:15px;font-size:.8rem;line-height:1.4;transition:all .3s;display:flex}.digital-waiver:hover{background:#0000000d}.digital-waiver.error{color:#ff4757;background:#ff47571a;border-color:#ff4757}.waiver-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--color-accent);flex-shrink:0;margin-top:3px}.shake{animation:.5s cubic-bezier(.36,.07,.19,.97) both shake}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
