.fsb{--ink:#191919;--ink-soft:rgba(25,25,25,0.62);--ink-faint:rgba(25,25,25,0.4);--hairline:rgba(25,25,25,0.12);--accent:#6A1FE0}.fsb,.fsb *{-webkit-user-select:none;-moz-user-select:none;user-select:none}.fsb img{-webkit-user-drag:none}.fsb .sb-wrap{display:grid;justify-items:center;gap:18px;width:100%;position:relative;z-index:2}.fsb .sb-stage{display:flex;align-items:center;justify-content:center;width:100%;position:relative;touch-action:pan-y;outline:none}.fsb .sb-stage:focus-visible{outline:2px solid #191919;outline-offset:8px;border-radius:16px}.fsb .sb-arrow:focus{outline:none}.fsb .sb-arrow:focus-visible{outline:2px solid #191919;outline-offset:2px;border-radius:999px}.fsb .sb-arrow{flex:none;display:inline-flex;align-items:center;justify-content:center;padding:6px 2px;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--ink-faint);cursor:pointer;transition:color .2s;-webkit-tap-highlight-color:transparent;z-index:8}.fsb .sb-arrow:hover{color:var(--ink)}.fsb .sb-3d{position:relative;flex:1 1;min-width:0;max-width:900px;perspective:1750px;perspective-origin:50% 46%}.fsb .loupe,.fsb .zoomwrap{display:none}.fsb .sb-tilt{margin-block:-11.5%;position:relative;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) scale(var(--zoom,1));will-change:transform}.fsb .sb-book{position:relative;width:100%;aspect-ratio:1760/1240;transform-style:preserve-3d;z-index:1}.fsb .sb-cast{position:absolute;pointer-events:none;z-index:0}.fsb .sb-cast.ambient{left:5%;right:5%;top:27%;bottom:2%;background:radial-gradient(50% 50% at 50% 58%,rgba(40,26,64,.3) 0,rgba(40,26,64,.16) 40%,rgba(40,26,64,0) 74%);filter:blur(26px);opacity:calc(1 - var(--shade, 0) * .42)}.fsb .sb-cast.contact{left:9%;right:9%;top:62%;bottom:10%;background:radial-gradient(50% 44% at 50% 42%,rgba(30,18,44,.36) 0,rgba(30,18,44,.15) 48%,rgba(30,18,44,0) 78%);filter:blur(11px);opacity:calc(1 - var(--shade, 0) * .5)}.fsb .sb-cast.hair{left:12%;right:12%;top:70%;bottom:17%;background:radial-gradient(50% 52% at 50% 40%,rgba(25,14,38,.3) 0,rgba(25,14,38,0) 76%);filter:blur(4px);opacity:calc(1 - var(--shade, 0) * .62)}.fsb .sb-full{position:absolute;inset:0}.fsb .sb-full img{width:100%;height:auto;display:block}.fsb .sb-half{position:absolute;top:0;bottom:0;width:50%;overflow-x:clip;overflow-y:visible}.fsb .sb-half.left{left:0}.fsb .sb-half.right{left:50%}.fsb .sb-half-img{width:200%;max-width:none;height:auto;display:block}.fsb .sb-half-img.right{margin-left:-100%}.fsb .gutter-shade{position:absolute;top:var(--pg,21.8%);bottom:var(--pg,21.8%);width:46%;pointer-events:none;opacity:calc(var(--shade, 0) * .62);-webkit-mask-image:linear-gradient(180deg,transparent,#000 5.2%,#000 94.8%,transparent);mask-image:linear-gradient(180deg,transparent,#000 5.2%,#000 94.8%,transparent)}.fsb .gutter-shade.left{right:0;background:linear-gradient(270deg,rgba(36,22,54,.3),rgba(36,22,54,0) 82%)}.fsb .gutter-shade.right{left:0;background:linear-gradient(90deg,rgba(36,22,54,.24),rgba(36,22,54,0) 82%)}.fsb .curl{position:absolute;top:0;height:100%;width:calc(var(--bw, 0px) * var(--span));transform-style:preserve-3d;z-index:6}.fsb .curl.next{left:50%;transform-origin:left center;transform:rotateY(calc(-1 * var(--tt, 0deg)))}.fsb .curl.prev{right:50%;transform-origin:right center;transform:rotateY(var(--tt,0deg))}.fsb .strip{position:absolute;top:0;height:100%;width:calc(var(--bw, 0px) * var(--span) / var(--n));transform-style:preserve-3d}.fsb .curl.next .strip{transform-origin:left center}.fsb .curl.prev .strip{transform-origin:right center}.fsb .curl.next>.strip{left:0}.fsb .curl.prev>.strip{right:0;left:auto}.fsb .curl.next .strip .strip{left:100%;transform:rotateY(var(--td,0deg))}.fsb .curl.prev .strip .strip{right:100%;transform:rotateY(calc(-1 * var(--td, 0deg)))}.fsb .face{position:absolute;top:0;bottom:0;left:0;right:-1.1px;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-repeat:no-repeat;background-size:var(--bw,0) auto}.fsb .face.back{transform:rotateY(180deg)}.fsb .face .gl,.fsb .face .sh{-webkit-mask-image:linear-gradient(180deg,transparent,#000 5.2%,#000 94.8%,transparent);mask-image:linear-gradient(180deg,transparent,#000 5.2%,#000 94.8%,transparent)}.fsb .strip.edge .face .gl,.fsb .strip.edge .face .sh{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%),var(--hf);mask-image:linear-gradient(180deg,transparent 0,#000 9%,#000 91%,transparent 100%),var(--hf);-webkit-mask-composite:source-in;mask-composite:intersect}.fsb .curl.next .strip.edge .face.front,.fsb .curl.prev .strip.edge .face.back{--hf:linear-gradient(90deg,#000 0 22%,transparent 96%)}.fsb .curl.next .strip.edge .face.back,.fsb .curl.prev .strip.edge .face.front{--hf:linear-gradient(270deg,#000 0 22%,transparent 96%)}.fsb .face .sh{position:absolute;left:0;right:0;top:var(--pg,21.8%);bottom:var(--pg,21.8%);pointer-events:none}.fsb .curl.next .face.front .sh,.fsb .curl.prev .face.back .sh{background:linear-gradient(90deg,rgba(40,26,64,var(--a1,0)),rgba(40,26,64,var(--a2,0)))}.fsb .curl.next .face.back .sh,.fsb .curl.prev .face.front .sh{background:linear-gradient(90deg,rgba(40,26,64,var(--a2,0)),rgba(40,26,64,var(--a1,0)))}.fsb .face .gl{right:0;top:var(--pg,21.8%);bottom:var(--pg,21.8%);background:#fffdfb;opacity:calc(var(--shade, 0) * var(--lit, 1) * var(--lit, 1) * .2)}.fsb .face .gl,.fsb .loupe{position:absolute;left:0;pointer-events:none}.fsb .loupe{top:0;width:var(--lr,270px);height:var(--lr,270px);z-index:80;opacity:0;transition:opacity .25s ease;will-change:transform}.fsb .loupe.on{opacity:1}.fsb .loupe.held .ring{cursor:grabbing}.fsb .loupe .ring{pointer-events:auto;cursor:grab;padding:calc(var(--lr, 270px) * .058);box-shadow:0 1px 2px rgba(25,14,38,.3),0 10px 18px rgba(25,14,38,.22),0 26px 40px rgba(25,14,38,.18),0 48px 66px rgba(25,14,38,.12)}.fsb .loupe .ring,.fsb .loupe .ring:before{position:absolute;inset:0;border-radius:50%}.fsb .loupe .ring:before{content:"";pointer-events:none;background:linear-gradient(146deg,#fbfbfd,#d9d6e2 14%,#8f8a9c 32%,#4b4656 50%,#b9b5c4 66%,#f1eff6 80%,#6e6880);box-shadow:inset 0 1px 1px rgba(255,255,255,.8),inset 0 -2px 3px rgba(30,20,44,.5);-webkit-mask-image:radial-gradient(circle closest-side at 50% 50%,transparent 0 88.2%,#000 89.8% 100%);mask-image:radial-gradient(circle closest-side at 50% 50%,transparent 0 88.2%,#000 89.8% 100%)}.fsb .loupe .grip{position:absolute;left:50%;top:50%;width:calc(var(--lr, 270px) * .74);height:calc(var(--lr, 270px) * .125);transform-origin:0 50%;transform:rotate(40deg) translate(calc(var(--lr, 270px) * .33),-50%);border-radius:calc(var(--lr, 270px) * .06);pointer-events:auto;cursor:grab;background:linear-gradient(180deg,rgba(255,255,255,.42) 0 13%,rgba(255,255,255,0) 44%,rgba(0,0,0,.26)),linear-gradient(90deg,#d9d6e2 0 14%,#8f8a9c 14% 20%,#7B2EFF 20% 52%,#FF3C82 72%,#FF6A00);box-shadow:0 8px 15px rgba(25,14,38,.24),0 18px 26px rgba(25,14,38,.13)}.fsb .lens{position:relative;display:block;width:100%;height:100%;border-radius:50%;background-repeat:no-repeat;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(30,20,44,.55),inset 0 4px 12px rgba(30,20,44,.26),inset 0 -7px 16px rgba(255,255,255,.14)}.fsb .lens .mag{display:none}.fsb .zoomwrap{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2;opacity:0}.fsb .zoominner{position:absolute;inset:0;transform-origin:0 0}.fsb .lens:after,.fsb .lens:before{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none}.fsb .lens:before{z-index:1;background:radial-gradient(circle at 50% 50%,rgba(0,0,0,0) 54%,rgba(30,20,44,.1) 76%,rgba(25,14,38,.32) 100%);box-shadow:inset 0 0 0 2px rgba(123,46,255,.22),inset 0 0 0 4px rgba(255,60,130,.12)}.fsb .lens:after{z-index:2;background:radial-gradient(36% 26% at 29% 19%,rgba(255,255,255,.3),rgba(255,255,255,0) 76%),radial-gradient(24% 16% at 74% 86%,rgba(255,255,255,.12),rgba(255,255,255,0) 80%),linear-gradient(150deg,rgba(255,255,255,.06) 0 18%,rgba(255,255,255,0) 42%)}.fsb .sb-tools{display:flex;align-items:center;gap:10px}.fsb .tool{position:relative;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#fff;color:var(--ink-soft);cursor:pointer;box-shadow:0 6px 16px -6px rgba(25,14,38,.25),0 1px 2px rgba(25,14,38,.08);transition:color .18s ease,transform .18s ease}.fsb .tool:after{content:"";position:absolute;inset:-2px;border-radius:50%}.fsb .tool:hover{color:var(--ink);transform:translateY(-1px)}.fsb .tool[aria-pressed=true]{background:rgba(123,46,255,.12);color:var(--accent)}.fsb .tool:disabled{opacity:.4;cursor:default;transform:none}.fsb .tool svg{width:16px;height:16px;display:block}.fsb .tool-sep{width:1px;height:17px;background:var(--hairline);margin:0 2px}.fsb .zoom-read{font-size:12px;letter-spacing:.08em;color:var(--ink-soft);min-width:44px;text-align:center;font-variant-numeric:tabular-nums}@media (pointer:coarse){.fsb .loupe,.fsb .loupe-only{display:none}}.fsb .sb-zone{position:absolute;top:0;bottom:0;border:0;background:transparent;cursor:grab;z-index:60;-webkit-tap-highlight-color:transparent}.fsb .sb-zone:active{cursor:grabbing}.fsb .sb-prev{left:0;width:50%}.fsb .sb-next{right:0;width:50%}.fsb .sb-captions{display:grid;justify-items:center;min-height:1.5em}.fsb .sb-captions>*{grid-area:1/1;margin:0}.fsb .sb-caption{font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);animation:fsb-cap-in .5s ease both}.fsb .sb-caption.live{animation:none}@keyframes fsb-cap-in{0%{opacity:0}}.fsb .sb-hint{margin:0;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);transition:opacity .4s ease}.fsb .sb-hint.gone{opacity:0}.fsb .sb-wrap.intro .sb-full img,.fsb .sb-wrap.intro .sb-half-img{filter:url(#fsb-mblur-1)}.fsb .sb-wrap.intro.b2 .sb-full img,.fsb .sb-wrap.intro.b2 .sb-half-img{filter:url(#fsb-mblur-2)}.fsb .sb-wrap.intro .sb-caption{animation:none}@media (max-width:640px){.fsb .sb-wrap{width:100vw;margin-inline:calc(50% - 50vw)}.fsb .sb-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:70;padding:12px 6px}.fsb .sb-arrow.left{left:2px}.fsb .sb-arrow.right{right:2px}.fsb .sb-3d{max-width:none}.fsb .sb-hint{letter-spacing:.08em;padding:0 16px;text-align:center}}.fsb .sb-captions,.fsb .sb-hint{display:none}.fsb .sb-wrap{gap:10px}