@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600&family=DM+Sans:wght@400;500&family=Libre+Caslon+Display&display=swap');
:root{color-scheme:light;--ink:#29382e;--paper:#f7f2e5;--desk:#b8c7ad}*{box-sizing:border-box}body{margin:0;background:var(--desk);color:var(--ink);font-family:'DM Sans',sans-serif;background-image:radial-gradient(ellipse at 40% 15%,#e1e5cc99,transparent 70%);min-height:100vh}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}header{max-width:1280px;padding:26px 40px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.signature{font-family:'Caveat',cursive;font-size:35px;text-decoration:none;color:var(--ink)}.signature span{color:#b54038}.edition{font-family:'Caveat',cursive;font-size:23px;transform:rotate(-2deg)}#cover-link{border:0;background:transparent;border-bottom:1px solid #64765c;padding:5px 0;font-size:12px}main{max-width:1240px;margin:auto}.desk{padding:22px 42px 30px;position:relative}.book-rest{filter:drop-shadow(1px 26px 23px #203c3540);position:relative}#book{margin:auto}.page{background:var(--paper);overflow:hidden;border:1px solid #b2a78e;border-radius:2px 6px 6px 2px;box-shadow:inset -2px 0 3px #c0b39a;user-select:none}.page.--left{border-radius:6px 2px 2px 6px}.paper{height:100%;position:relative;padding:9% 10% 11%;background-image:linear-gradient(90deg,#927b4517,transparent 9%,transparent 91%,#826d3825),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.07' filter='url(%23n)'/%3E%3C/svg%3E")}.paper:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 5px 0 12px #6f5d2010,inset -5px 0 12px #6f5d2015}.chapter{font-family:'Caveat',cursive;font-size:22px;color:#6e755e}h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(35px,4.3vw,63px);line-height:1.03;margin:22px 0 25px;letter-spacing:-1.5px}h2 em{font-weight:400;color:#ae4935}p{font-size:clamp(14px,1.35vw,17px);line-height:1.75;margin:0 0 17px}.handnote{font:500 clamp(21px,2vw,27px)/1.12 'Caveat',cursive;color:#385f86;margin-top:24px;transform:rotate(-3deg);max-width:95%}.handnote svg{display:block;width:120px;height:23px;margin:4px 0 0 auto;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.paper footer{position:absolute;bottom:5%;left:10%;right:10%;display:flex;justify-content:space-between;font-family:'Caveat',cursive;font-size:16px;color:#73755e}.art-page .paper{padding:6% 5% 10%}.pencil-caption{display:block;text-align:center;font:20px 'Caveat',cursive;transform:rotate(-2deg);margin:4px 0 0}.art-page img{display:block;width:100%;height:76%;object-fit:contain;mix-blend-mode:multiply;pointer-events:none}.art-note{text-align:center;font:23px/1.1 'Caveat',cursive;transform:rotate(-3deg);color:#365e6a}.cover{background:#244f52;border:2px solid #183e41;color:#ebdcae;box-shadow:inset 8px 0 12px #102e37, inset -2px 0 2px #89a791}.cover-inner{height:100%;padding:13% 12%;position:relative;background-image:repeating-linear-gradient(0deg,#fff1 0px,transparent 1px,transparent 4px),repeating-linear-gradient(90deg,#0001 0px,transparent 1px,transparent 4px)}.cover-inner>span{font:25px 'Caveat',cursive}.cover h1,.cover h2{font:400 clamp(40px,5vw,74px)/1 'Libre Caslon Display',Georgia,serif;margin:12% 0 8%;letter-spacing:-1px}.cover em{color:#e7a773}.cover p{font:24px/1.3 'Caveat',cursive}.cover small{position:absolute;bottom:9%;right:12%;font:22px 'Caveat',cursive}.cover-sketch{position:absolute;right:12%;top:14%;font:65px Georgia;color:#dfbd69}.book-controls{display:flex;justify-content:center;gap:28px;align-items:center;margin:0 auto 23px}.book-controls button{width:48px;height:44px;border:1px solid #627a62;border-radius:50%;background:#f7f2e533;font-size:25px;transition:background .2s}.book-controls button:hover{background:#f7f2e5}.book-controls button:disabled{opacity:.25;cursor:default}.book-controls>div{text-align:center;min-width:220px}#page-label{display:block;font-family:'Caveat',cursive;font-size:26px}.hint{font-size:11px;color:#56634f;display:block;margin-top:3px}details{max-width:600px;margin:0 auto;border-top:1px solid #77896d77;border-bottom:1px solid #77896d77}summary{cursor:pointer;padding:14px 2px;list-style:none;font-size:13px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}details[open] summary span{transform:rotate(45deg)}details p{font-size:14px;padding:0 2px 15px}.prototype{text-align:center;font:19px 'Caveat',cursive;padding:20px;margin:0;color:#64735c}button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #b54a31;outline-offset:4px}
@media(min-width:761px){#book:after{content:'';position:absolute;bottom:-7px;left:0;right:0;height:8px;background:repeating-linear-gradient(#e0d7bc 0 1px,#fff7e4 1px 2px);border-bottom:3px solid #244f52;z-index:-1;border-radius:0 0 5px 5px}}
@media(max-width:760px){header{padding:18px 20px}.signature{font-size:30px}.edition{display:none}.desk{padding:18px 15px 22px}main{overflow:hidden}.paper{padding:9% 9% 11%}h2{font-size:45px;margin:18px 0 22px}p{font-size:15px;line-height:1.65;margin-bottom:15px}.handnote{font-size:24px;margin-top:20px}.chapter{font-size:21px}.art-note{font-size:23px}.book-controls{gap:13px;margin-bottom:20px}.book-controls>div{min-width:200px}.book-controls button{width:40px;height:40px}.hint{font-size:11px}details{margin:0 23px}.cover h1,.cover h2{font-size:62px}.paper footer{font-size:15px}.prototype{padding:20px 0 28px}}
@media(max-width:350px){h2{font-size:38px;margin:13px 0 17px}p{font-size:13.5px;line-height:1.65}.handnote{font-size:21px;margin-top:18px}.book-controls>div{min-width:170px}.art-note{font-size:20px}}
@media(min-width:761px){.page{container-type:inline-size}h2{font-size:11.6cqw}p{font-size:3.25cqw}.handnote{font-size:5cqw;margin-top:4cqw}.chapter{font-size:4.4cqw}h2{margin:4cqw 0 4.5cqw}.art-note{font-size:4.5cqw}}

@media(max-width:760px){#book{isolation:isolate}#book:before{content:"";position:absolute;left:-5px;top:0;bottom:0;width:9px;background:linear-gradient(90deg,#244f52,#8e876c,#d2c8ad);border-radius:4px 0 0 4px;z-index:8;pointer-events:none}.mobile-turning>.stf__wrapper{visibility:hidden}.mobile-turn{position:absolute;inset:0;z-index:6;overflow:hidden;background:#f7f2e5;pointer-events:none;contain:paint}.turn-sheet{position:absolute;inset:0;background:#f7f2e5;overflow:hidden;border:1px solid #b2a78e;border-radius:2px}.turn-blank{background:linear-gradient(110deg,#d9cfb8,#f7f2e5 22%,#efe6d3 85%,#c1b49a);filter:drop-shadow(2px 2px 3px #30281744)}}

@media(max-width:760px){#book:not(.closed-cover):after{content:"";position:absolute;right:100%;top:0;bottom:0;width:100vw;background:linear-gradient(90deg,#f7f2e5 calc(100% - 28px),#e1d7c0 calc(100% - 12px),#9e9277 100%);border-top:1px solid #b2a78e;border-bottom:5px double #b2a78e;pointer-events:none}#book.closed-cover:before{display:none}.turn-sheet.cover{background:#244f52;border:2px solid #183e41;color:#ebdcae;box-shadow:inset 8px 0 12px #102e37,inset -2px 0 2px #89a791}.turn-blank.turn-cover-back{background:linear-gradient(100deg,#173f42,#376466 45%,#244f52);border:2px solid #183e41}.mobile-turn{transform:translateZ(0)}.turn-sheet{backface-visibility:hidden;-webkit-backface-visibility:hidden}}


@media(min-width:761px){#book.closed-cover:after{left:50%}}
@media(max-width:760px){.mobile-turning>.stf__wrapper{visibility:visible}.mobile-turn{background:transparent}.mobile-turn.hard-turn{perspective:1400px;overflow:visible;contain:none}.rigid-board{backface-visibility:hidden;will-change:transform;box-shadow:4px 1px 8px #17342a55}}


@media(max-width:760px){#book.front-cover-turn:before,#book.front-cover-turn:after{display:none}.turn-sheet:not(.turn-blank):not(.cover){border-radius:2px 6px 6px 2px;box-shadow:inset -2px 0 3px #c0b39a}}


.open-cover{position:absolute;bottom:9%;right:12%;font:22px "Caveat",cursive;background:none;border:0;padding:0;color:inherit}.open-cover:focus-visible{outline-color:#ebdcae}main{padding-bottom:28px}
@media(max-width:760px){html,body{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}}


@media(min-width:761px){#book:after{display:none}.page{border-bottom:3px double #b2a78e}}
@media(max-width:760px){#book.front-cover-turn:before{display:block;opacity:var(--book-open,0)}#book.front-cover-turn:after{display:block;content:"";position:absolute;right:100%;top:0;bottom:0;width:100vw;background:linear-gradient(90deg,#f7f2e5 calc(100% - 28px),#e1d7c0 calc(100% - 12px),#9e9277 100%);border-top:1px solid #b2a78e;border-bottom:5px double #b2a78e;pointer-events:none;opacity:var(--book-open,0)}.rigid-reverse{backface-visibility:hidden;will-change:transform;background:#e8dfc9!important;filter:none;box-shadow:inset 3px 0 10px #81745955}}


@media(max-width:760px){html{overflow-x:clip}main{overflow:visible;position:relative;z-index:2}header{position:relative;z-index:1}.mobile-turn{overflow:visible;contain:none}.turn-blank:not(.rigid-reverse){border:0;overflow:visible}.rigid-reverse{background:linear-gradient(90deg,#f7f2e5 calc(100% - 28px),#e1d7c0 calc(100% - 12px),#9e9277 100%)!important;border:0;border-top:1px solid #b2a78e;border-bottom:5px double #b2a78e;box-shadow:none;border-radius:0}}


html{scrollbar-gutter:stable;overflow-anchor:none}body{overflow-anchor:none}
@media(max-width:760px){html{scrollbar-gutter:auto}.mobile-turn{z-index:100;transform:none}#book.front-cover-turn:before,#book.front-cover-turn:after{opacity:1}#book.front-cover-turn>.stf__wrapper{visibility:hidden}.mobile-turn.hard-turn{perspective:1400px}}


@media(max-width:760px){#book.front-cover-turn:not(.cover-past-spine):before,#book.front-cover-turn:not(.cover-past-spine):after{display:none}.paper-edge{position:absolute;top:0;overflow:visible;pointer-events:none;filter:drop-shadow(2px 2px 2px #493c2855)}.paper-edge polygon{fill:none;stroke:#a3967d;stroke-width:1.2;stroke-linejoin:round;vector-effect:non-scaling-stroke}}


@media(max-width:760px){.mobile-resting{position:absolute;inset:0;z-index:4}.has-mobile-resting>.stf__wrapper{visibility:hidden}.front-cover-turn>.mobile-resting{visibility:hidden}}


@media(max-width:760px){.mobile-page-bank{position:fixed;left:0;top:0;opacity:0.001;z-index:-1;pointer-events:none;width:1px;height:1px;overflow:hidden}.mobile-page-bank *{pointer-events:none}}


@media(max-width:760px){.mobile-turn.mobile-fixed-resting{pointer-events:auto}.mobile-fixed-resting>.turn-sheet{pointer-events:auto}}


/* Chapter notes sit outside the book and follow the current project. */
.chapter-details{max-width:940px;margin:8px auto 40px;border-color:#6c7c6266}
.chapter-details[hidden]{display:none}




.technical-body{padding:4px 4px 24px}
.technical-body h3{font:500 29px/1.2 'Caveat',cursive;margin:30px 0 12px;color:#244f52}
.chapter-details .technical-body p{font-size:16px;line-height:1.7;padding:0;margin:0 0 16px;max-width:76ch}
.tool-list{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin:0}
.tool-list>div{padding:15px 0;border-bottom:1px solid #64765c33}
.tool-list dt{font-size:16px;font-weight:500;color:#244f52;margin-bottom:5px}
.tool-list dd{font-size:15px;line-height:1.6;margin:0}
.chapter-details .supporting-tool{margin-top:16px}
.technical-body code{font-size:.9em}
.project-visit{display:inline-block;margin-top:12px;color:#244f52;text-underline-offset:5px;font-size:16px}
@media(max-width:1000px){.chapter-details{margin-left:30px;margin-right:30px}}
@media(max-width:760px){.chapter-details{margin:8px 23px 24px}.tool-list{grid-template-columns:1fr}.technical-body h3{font-size:27px}.chapter-details .technical-body p{font-size:15px}.tool-list dd{font-size:15px}}
@media(max-width:350px){.story-page .paper{padding-top:7%}.story-page h2{margin:8px 0 12px}.story-page p{margin-bottom:8px}}

.detail-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.detail-controls button{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border:1px solid #64765c77;border-radius:5px;background:#f7f2e53d;text-align:left;font-size:16px;min-height:62px}
.detail-controls button:hover{background:#f7f2e570}
.detail-controls button[aria-expanded="true"]{background:#f7f2e5a6;border-color:#244f52}
.detail-mark{font-size:24px;line-height:1;flex:none}
[aria-expanded="true"]>.detail-mark{transform:rotate(45deg)}
.detail-controls button[hidden],.chapter-details [role="region"][hidden]{display:none}
.chapter-details [role="region"]{margin-top:16px;border-top:1px solid #64765c55}
@media(max-width:760px){.detail-controls{grid-template-columns:1fr;gap:10px}.detail-controls button{padding:16px;min-height:58px}}

/* Give the illustration page to its image, with only the folio retained. */
.art-page .paper{padding:5% 5% 10%}
.art-page img{height:100%;width:100%;object-fit:contain}
.art-page .paper>img{height:calc(100% - 20px)}
#reading-scroll-space{width:1px;pointer-events:none;overflow-anchor:none}

.paper footer{justify-content:flex-end}
.ei-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.ei-title>span{white-space:nowrap}.ei-title .ei-logo{width:20%;max-width:80px;height:auto;flex:none;object-fit:contain}

/* Blend the red emblem paper background into the book stock. */
.ei-title .ei-logo{mix-blend-mode:multiply}

/* A little paper toy on the illustrated desk. Nothing changes the page size. */
.deck-scene{position:relative;width:100%;height:auto;aspect-ratio:3/4;max-height:100%;top:50%;transform:translateY(-50%);container-type:inline-size}
.deck-scene>img{transition:filter .35s}
.deck-scene:has(.deck-table:not([hidden]))>img{filter:brightness(.74) saturate(.8)}
.deck-play button:focus-visible,.deck-play a:focus-visible,.deck-hit:focus-visible{outline:3px solid #244f52;outline-offset:5px}
.deck-hit{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:none;z-index:2;touch-action:manipulation;clip-path:polygon(11.9% 48.1%,15.9% 46%,19.4% 44.2%,23.6% 42.8%,28% 42.6%,30% 44.6%,35.1% 44.9%,38.2% 46.5%,43.8% 48.8%,40.2% 56%,36.8% 63.6%,21.2% 59%)}
.deck-hit[aria-expanded=true]{visibility:hidden}
.deck-sunlight{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:0;transition:none;overflow:visible}
.deck-sunlight path{fill:none;stroke-linejoin:round;stroke-linecap:round}
.deck-halo{stroke:#efbd58;stroke-width:9;filter:blur(5px);opacity:.42}
.deck-rim{stroke:#fff0bc;stroke-width:1.8;opacity:.85;filter:drop-shadow(0 0 2px #edbc60)}
.deck-rays path{stroke:#e9b34d;stroke-width:2.5;opacity:.8;filter:drop-shadow(0 0 2px #ffe7a0)}
.deck-rays path:nth-child(3n){stroke:#ffe6a3;stroke-width:3.5;opacity:.85}
@media(hover:hover){.deck-hit:hover+.deck-sunlight{opacity:1}}
.deck-hit:focus-visible+.deck-sunlight{opacity:1}
.deck-hit:active+.deck-sunlight{opacity:1}
.deck-hit[aria-expanded=true]+.deck-sunlight{opacity:0}
@media(prefers-reduced-motion:reduce){.deck-sunlight{transition:none}}
.deck-table{position:absolute;inset:7% 3%;z-index:3;perspective:1000px}
.deck-table[hidden],.deck-reading[hidden],.deck-fan[hidden]{display:none}
.deck-close{position:absolute;right:0;top:0;z-index:5;width:44px;height:44px;border:1px solid #8d7757;border-radius:50%;background:#f7edcf;font:30px/1 Georgia,serif;box-shadow:1px 3px 6px #30231433}
.deck-invitation{position:absolute;top:14%;left:0;right:0;text-align:center;color:#fff3d2;text-shadow:0 2px 5px #291c0e;font:34px 'Caveat',cursive}
.deck-fan{position:absolute;inset:0}
.idea-card{position:absolute;left:31%;top:32%;width:38%;height:44%;padding:10px;border:6px solid #f6e9ca;border-radius:9px;background:repeating-linear-gradient(45deg,#963c32 0 2px,#a94b3d 2px 8px);color:#fbe6ba;box-shadow:0 1px 0 1px #674334,4px 12px 15px #291c0e66;transform:translateX(var(--shift)) rotate(var(--angle));transform-origin:50% 110%;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .3s;animation:deal-cards .45s both}
.idea-card:nth-child(2){background:repeating-linear-gradient(45deg,#244f52 0 2px,#306369 2px 8px);animation-delay:60ms}
.idea-card:nth-child(3){background:repeating-linear-gradient(45deg,#87632e 0 2px,#9c793d 2px 8px);animation-delay:120ms}
.idea-card:after{content:'';position:absolute;inset:5px;border:1px solid #ebd7aa99;border-radius:3px;pointer-events:none}
.card-ornament{display:block;font:54px Georgia,serif;line-height:1.2}
.card-back-label{font:24px/1.05 'Caveat',cursive}
@media(hover:hover){.idea-card:hover{transform:translateX(var(--shift)) translateY(-16px) rotate(var(--angle));box-shadow:4px 20px 20px #291c0e88;z-index:2}}
.deck-reading{position:absolute;inset:10% 4% 4%;padding:9% 9% 7%;border:1px solid #947b52;border-radius:8px;background:#f7edcf;box-shadow:2px 4px 0 #d7c6a2,5px 15px 24px #291c0e66;display:flex;flex-direction:column;align-items:flex-start;animation:reveal-idea .38s ease-out;overflow:hidden}
.deck-reading:after{content:'';position:absolute;inset:7px;border:1px solid #947b5255;border-radius:3px;pointer-events:none}
.deck-number{font:24px 'Caveat',cursive;color:#9c3d30}
.deck-reading h3{font:400 clamp(25px,7.7cqw,38px)/1.05 'Libre Caslon Display',Georgia,serif;margin:12px 0 15px;color:#29382e}
.deck-reading p{font:clamp(14px,3.9cqw,17px)/1.6 'DM Sans',sans-serif;margin:0 0 15px}
.deck-examples{color:#244f52;font-size:15px;text-underline-offset:4px;margin-top:auto;min-height:35px}
.deck-again{padding:8px 0;border:0;background:none;font:24px 'Caveat',cursive;color:#8e3b2e;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.deck-reading small{font-size:10px;opacity:.7;margin-top:8px}
.deck-table:has(.deck-reading:not([hidden])) .deck-invitation{display:none}
@keyframes deal-cards{from{transform:translateX(0) translateY(40%) rotate(0);opacity:0}to{opacity:1}}
@keyframes reveal-idea{from{transform:rotateY(-70deg) scale(.86);opacity:.5}to{transform:rotateY(0) scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.deck-scene>img,.idea-card{transition:none}.idea-card,.deck-reading{animation:none}}
.idea-card{left:34%;width:32%}
@media(max-width:760px){
 .deck-reading{inset:4% 0 0;padding:7% 8% 5%}
 .deck-reading h3{font-size:28px;margin:8px 0 10px}
 .deck-reading p{font-size:14px;line-height:1.45;margin-bottom:10px}
 .deck-number{font-size:20px}
 .deck-examples{font-size:14px;min-height:30px}
 .deck-again{font-size:22px;padding:4px 0}
 .deck-reading small{margin-top:3px}
 .card-back-label{font-size:21px}
 .card-ornament{font-size:40px}
 .deck-invitation{font-size:29px}
}
@media(max-width:350px){
 .deck-table{inset:-5% 0}
 .deck-reading{padding:6% 8% 5%}
 .deck-reading h3{font-size:26px}
 .card-back-label{font-size:18px}
}

/* Navigation back to the rest of the portfolio. */
header nav{position:relative;z-index:100;flex-shrink:0}header .site-menu{margin:0;border:0;position:relative}header .site-menu summary{gap:12px;padding:10px 0;font-size:14px}header .site-menu>div{position:absolute;right:0;top:100%;width:150px;background:#f7f2e5;border:1px solid #78856e;border-radius:4px;box-shadow:0 8px 24px #29382e25;padding:6px}header .site-menu a{display:block;color:#29382e;padding:10px 12px;text-decoration:none;font-size:14px}header .site-menu a:hover{background:#e3e7d7}@media(max-width:900px){header .edition{display:none}}
header:has(.site-menu[open]){position:relative;z-index:101}
@media(max-width:360px){.introduction-page .paper{padding:7% 8% 10%}.introduction-page h2{font-size:38px;margin:10px 0 14px}.introduction-page p{font-size:14px;line-height:1.5;margin-bottom:12px}}
@media(max-width:360px){.introduction-page .chapter{font-size:18px}.introduction-page h2{margin:6px 0 10px}.introduction-page p{line-height:1.45;margin-bottom:10px}}
@media(max-width:360px){.introduction-page .chapter{display:none}.introduction-page .paper{padding-top:5%}.introduction-page h2{margin-top:0}}
/* Small handwritten references in the page margin. */
.paper footer:has(.margin-link){justify-content:space-between;align-items:center;gap:8px}
.margin-link{font:20px/1.2 'Caveat',cursive;color:#355c77;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;pointer-events:auto}
.ei-title{justify-content:flex-start;gap:clamp(15px,3vw,30px)}
.introduction-page .intro-copy{max-height:calc(100% - 120px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px}
@media(max-width:360px){.introduction-page .intro-copy{max-height:calc(100% - 72px)}.margin-link{font-size:18px}}
.introduction-page .paper{display:flex;flex-direction:column}.introduction-page .chapter,.introduction-page h2{flex-shrink:0}.introduction-page .intro-copy{flex:1;min-height:0;max-height:none}
.introduction-page .intro-copy{margin-bottom:28px}
/* Consistent portrait frames, with softly irregular painted edges. */
.art-page .paper{display:grid;place-items:center;container-type:size}
.art-frame,.deck-scene.art-frame{width:min(100cqw,75cqh);height:min(133.333cqw,100cqh);max-height:none;aspect-ratio:3/4;top:auto;transform:none;position:relative}
.art-frame>img,.art-page .art-frame>img{width:100%;height:100%;object-fit:cover;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20600%20800%22%3E%3Cdefs%3E%3Cfilter%20id%3D%22soft%22%3E%3CfeGaussianBlur%20stdDeviation%3D%220.45%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M6.00%2C7.30%20L13.00%2C3.00%20L20.00%2C6.45%20L27.00%2C8.03%20L34.00%2C5.44%20L41.00%2C5.34%20L48.00%2C4.37%20L55.00%2C8.79%20L62.00%2C6.15%20L69.00%2C3.77%20L76.00%2C6.41%20L83.00%2C6.50%20L90.00%2C7.88%20L97.00%2C3.53%20L104.00%2C5.24%20L111.00%2C8.34%20L118.00%2C5.76%20L125.00%2C5.66%20L132.00%2C3.93%20L139.00%2C8.06%20L146.00%2C7.33%20L153.00%2C3.63%20L160.00%2C6.04%20L167.00%2C6.18%20L174.00%2C8.17%20L181.00%2C4.42%20L188.00%2C4.14%20L195.00%2C8.31%20L202.00%2C6.16%20L209.00%2C5.98%20L216.00%2C3.82%20L223.00%2C7.04%20L230.00%2C8.32%20L237.00%2C3.84%20L244.00%2C5.63%20L251.00%2C5.87%20L258.00%2C8.12%20L265.00%2C5.54%20L272.00%2C3.31%20L279.00%2C7.93%20L286.00%2C6.58%20L293.00%2C6.26%20L300.00%2C4.02%20L307.00%2C5.86%20L314.00%2C8.96%20L321.00%2C4.39%20L328.00%2C5.22%20L335.00%2C5.62%20L342.00%2C7.77%20L349.00%2C6.72%20L356.00%2C2.88%20L363.00%2C7.23%20L370.00%2C6.96%20L377.00%2C6.48%20L384.00%2C4.51%20L391.00%2C4.73%20L398.00%2C9.16%20L405.00%2C5.21%20L412.00%2C4.89%20L419.00%2C5.44%20L426.00%2C7.17%20L433.00%2C7.77%20L440.00%2C2.93%20L447.00%2C6.32%20L454.00%2C7.23%20L461.00%2C6.63%20L468.00%2C5.19%20L475.00%2C3.80%20L482.00%2C8.87%20L489.00%2C6.17%20L496.00%2C4.68%20L503.00%2C5.33%20L510.00%2C6.43%20L517.00%2C8.53%20L524.00%2C3.45%20L531.00%2C5.33%20L538.00%2C7.35%20L545.00%2C6.69%20L552.00%2C5.95%20L559.00%2C3.23%20L566.00%2C8.14%20L573.00%2C7.14%20L580.00%2C4.65%20L587.00%2C5.31%20L594.00%2C5.67%20L594.68%2C6.00%20L591.08%2C13.00%20L595.08%2C20.00%20L595.97%2C27.00%20L592.82%2C34.00%20L593.35%2C41.00%20L593.00%2C48.00%20L596.83%2C55.00%20L593.52%2C62.00%20L591.71%2C69.00%20L595.02%2C76.00%20L594.61%2C83.00%20L595.28%2C90.00%20L591.37%2C97.00%20L593.85%2C104.00%20L596.52%2C111.00%20L593.18%2C118.00%20L593.44%2C125.00%20L592.50%2C132.00%20L596.33%2C139.00%20L594.76%2C146.00%20L591.34%2C153.00%20L594.58%2C160.00%20L594.50%2C167.00%20L595.66%2C174.00%20L592.05%2C181.00%20L592.65%2C188.00%20L596.70%2C195.00%20L593.69%2C202.00%20L593.56%2C209.00%20L592.25%2C216.00%20L595.50%2C223.00%20L595.89%2C230.00%20L591.37%2C237.00%20L594.02%2C244.00%20L594.37%2C251.00%20L595.77%2C258.00%20L593.01%2C265.00%20L591.64%2C272.00%20L596.47%2C279.00%20L594.28%2C286.00%20L593.71%2C293.00%20L592.27%2C300.00%20L594.45%2C307.00%20L596.74%2C314.00%20L591.80%2C321.00%20L593.41%2C328.00%20L594.21%2C335.00%20L595.63%2C342.00%20L594.10%2C349.00%20L590.99%2C356.00%20L595.85%2C363.00%20L594.88%2C370.00%20L593.87%2C377.00%20L592.53%2C384.00%20L593.36%2C391.00%20L597.16%2C398.00%20L592.58%2C405.00%20L592.85%2C412.00%20L594.04%2C419.00%20L595.27%2C426.00%20L595.15%2C433.00%20L590.80%2C440.00%20L594.94%2C447.00%20L595.39%2C454.00%20L594.04%2C461.00%20L592.98%2C468.00%20L592.39%2C475.00%20L597.11%2C482.00%20L593.59%2C489.00%20L592.42%2C496.00%20L593.88%2C503.00%20L594.75%2C510.00%20L596.00%2C517.00%20L591.10%2C524.00%20L593.85%2C531.00%20L595.72%2C538.00%20L594.21%2C545.00%20L593.55%2C552.00%20L591.69%2C559.00%20L596.58%2C566.00%20L594.70%2C573.00%20L592.21%2C580.00%20L593.71%2C587.00%20L594.16%2C594.00%20L596.53%2C601.00%20L591.84%2C608.00%20L592.77%2C615.00%20L595.81%2C622.00%20L594.37%2C629.00%20L594.14%2C636.00%20L591.35%2C643.00%20L595.66%2C650.00%20L595.72%2C657.00%20L592.25%2C664.00%20L593.55%2C671.00%20L593.59%2C678.00%20L596.67%2C685.00%20L592.90%2C692.00%20L591.86%2C699.00%20L595.63%2C706.00%20L594.52%2C713.00%20L594.66%2C720.00%20L591.41%2C727.00%20L594.49%2C734.00%20L596.49%2C741.00%20L592.56%2C748.00%20L593.41%2C755.00%20L593.12%2C762.00%20L596.41%2C769.00%20L594.13%2C776.00%20L591.25%2C783.00%20L595.19%2C790.00%20L594.00%2C792.81%20L587.00%2C795.79%20L580.00%2C795.34%20L573.00%2C791.05%20L566.00%2C794.55%20L559.00%2C794.71%20L552.00%2C795.28%20L545.00%2C792.62%20L538.00%2C792.13%20L531.00%2C796.88%20L524.00%2C793.83%20L517.00%2C793.28%20L510.00%2C792.68%20L503.00%2C794.93%20L496.00%2C796.33%20L489.00%2C791.30%20L482.00%2C793.79%20L475.00%2C794.72%20L468.00%2C795.31%20L461.00%2C793.55%20L454.00%2C791.30%20L447.00%2C796.41%20L440.00%2C794.61%20L433.00%2C793.31%20L426.00%2C792.75%20L419.00%2C793.96%20L412.00%2C796.97%20L405.00%2C791.97%20L398.00%2C793.02%20L391.00%2C794.64%20L384.00%2C795.16%20L377.00%2C794.53%20L370.00%2C790.88%20L363.00%2C795.56%20L356.00%2C795.33%20L349.00%2C793.43%20L342.00%2C792.97%20L335.00%2C793.02%20L328.00%2C797.15%20L321.00%2C792.96%20L314.00%2C792.36%20L307.00%2C794.48%20L300.00%2C794.87%20L293.00%2C795.39%20L286.00%2C790.94%20L279.00%2C794.46%20L272.00%2C795.89%20L265.00%2C793.63%20L258.00%2C793.31%20L251.00%2C792.26%20L244.00%2C796.85%20L237.00%2C794.13%20L230.00%2C791.92%20L223.00%2C794.24%20L216.00%2C794.49%20L209.00%2C796.02%20L202.00%2C791.47%20L195.00%2C793.28%20L188.00%2C796.19%20L181.00%2C793.91%20L174.00%2C793.71%20L167.00%2C791.79%20L160.00%2C796.12%20L153.00%2C795.29%20L146.00%2C791.78%20L139.00%2C793.93%20L132.00%2C794.09%20L125.00%2C796.32%20L118.00%2C792.37%20L111.00%2C792.19%20L104.00%2C796.16%20L97.00%2C794.24%20L90.00%2C794.11%20L83.00%2C791.66%20L76.00%2C795.08%20L69.00%2C796.27%20L62.00%2C791.98%20L55.00%2C793.60%20L48.00%2C793.71%20L41.00%2C796.27%20L34.00%2C793.51%20L27.00%2C791.36%20L20.00%2C795.81%20L13.00%2C794.57%20L6.00%2C794.45%20L5.42%2C794.00%20L7.89%2C787.00%20L6.71%2C780.00%20L2.93%2C773.00%20L7.15%2C766.00%20L6.87%2C759.00%20L6.69%2C752.00%20L4.40%2C745.00%20L4.72%2C738.00%20L9.11%2C731.00%20L5.25%2C724.00%20L5.01%2C717.00%20L5.22%2C710.00%20L7.25%2C703.00%20L7.79%2C696.00%20L2.96%2C689.00%20L6.30%2C682.00%20L7.08%2C675.00%20L6.83%2C668.00%20L5.14%2C661.00%20L3.76%2C654.00%20L8.84%2C647.00%20L6.16%2C640.00%20L4.86%2C633.00%20L5.14%2C626.00%20L6.45%2C619.00%20L8.59%2C612.00%20L3.46%2C605.00%20L5.37%2C598.00%20L7.16%2C591.00%20L6.86%2C584.00%20L5.97%2C577.00%20L3.16%2C570.00%20L8.14%2C563.00%20L7.08%2C556.00%20L4.86%2C549.00%20L5.17%2C542.00%20L5.62%2C535.00%20L8.98%2C528.00%20L4.35%2C521.00%20L4.50%2C514.00%20L7.08%2C507.00%20L6.78%2C500.00%20L6.77%2C493.00%20L2.99%2C486.00%20L7.10%2C479.00%20L7.87%2C472.00%20L5.02%2C465.00%20L5.28%2C458.00%20L4.88%2C451.00%20L8.92%2C444.00%20L5.50%2C437.00%20L3.83%2C430.00%20L6.84%2C423.00%20L6.63%2C416.00%20L7.42%2C409.00%20L3.28%2C402.00%20L5.88%2C395.00%20L8.39%2C388.00%20L5.34%2C381.00%20L5.46%2C374.00%20L4.34%2C367.00%20L8.42%2C360.00%20L6.73%2C353.00%20L3.47%2C346.00%20L6.45%2C339.00%20L6.44%2C332.00%20L7.83%2C325.00%20L3.97%2C318.00%20L4.68%2C311.00%20L8.57%2C304.00%20L5.78%2C297.00%20L5.67%2C290.00%20L4.07%2C283.00%20L7.56%2C276.00%20L7.86%2C269.00%20L3.49%2C262.00%20L5.96%2C255.00%20L6.23%2C248.00%20L7.95%2C241.00%20L4.96%2C234.00%20L3.67%2C227.00%20L8.36%2C220.00%20L6.30%2C213.00%20L5.88%2C206.00%20L4.10%2C199.00%20L6.48%2C192.00%20L8.71%2C185.00%20L3.89%2C178.00%20L5.43%2C171.00%20L6.02%2C164.00%20L7.79%2C157.00%20L6.09%2C150.00%20L3.01%2C143.00%20L7.78%2C136.00%20L6.82%2C129.00%20L6.08%2C122.00%20L4.39%2C115.00%20L5.35%2C108.00%20L9.15%2C101.00%20L4.63%2C94.00%20L4.94%2C87.00%20L5.83%2C80.00%20L7.38%2C73.00%20L7.18%2C66.00%20L2.81%2C59.00%20L6.91%2C52.00%20L7.26%2C45.00%20L6.26%2C38.00%20L4.90%2C31.00%20L4.34%2C24.00%20L9.11%2C17.00%20L5.60%2C10.00Z%22%20fill%3D%22white%22%20filter%3D%22url(%23soft)%22%2F%3E%3C%2Fsvg%3E");mask-size:100% 100%;mask-repeat:no-repeat}
.story-page .chapter,.retired-title-dot{visibility:hidden}
.introduction-page .chapter,.introduction-page h2{display:none}
.open-cover{pointer-events:none}
.introduction-page .intro-copy{flex:0 1 auto;max-height:100%;margin-block:auto}.introduction-page .intro-copy p:last-child{margin-bottom:0}
.back-cover .cover-inner{container-type:inline-size}.back-cover h2{font-size:clamp(30px,13cqw,58px)}

.art-loading-message{display:none;position:absolute;inset:0;align-items:center;justify-content:center;color:#52685e;font:18px Caveat,cursive;text-align:center;pointer-events:none}
.art-loading .art-loading-message{display:flex}
.art-loading .workflow-cue,.art-loading .workflow-hit{visibility:hidden}
@media(hover:none),(pointer:coarse){
 .art-frame:not(.art-loading)>.deck-sunlight{opacity:1}
 .art-frame:not(.art-loading)>.deck-hit[aria-expanded=true]+.deck-sunlight{opacity:0}
}
@media(max-width:760px){.mobile-fixed-resting,.deck-hit{touch-action:pan-y}}
