:root{--paper:#f4f0e5;--warm:#faf8f2;--ink:#262b28;--green:#183b39;--brass:#dcbf78;--night:#171921;--serif:Lora,Georgia,serif;--ui:system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;background:var(--paper);color:var(--ink);font:20px/1.65 var(--serif)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}button,input,select,textarea{font:inherit;color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid currentColor;outline-offset:5px}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.14;letter-spacing:-.025em;margin:0 0 .55em;overflow-wrap:break-word}p{margin:0 0 1.1em}figure,blockquote{margin:0}[hidden]{display:none!important}main,section,article,aside,footer,header,nav,figure,div{min-width:0}.skip{position:fixed;z-index:100;top:8px;left:8px;max-width:calc(100vw - 16px);transform:translateY(-200%);padding:16px;background:var(--warm)}.skip:focus{transform:none}
.site-header{display:flex;align-items:center;gap:24px;min-height:78px;padding:12px 4.5%;border-bottom:1px solid #262b2833;background:var(--warm);font:14px/1.5 var(--ui)}.identity{font:600 29px/1.1 var(--serif);overflow-wrap:anywhere;text-decoration:none}.site-header .identity{display:flex;align-items:center;min-height:44px}.tagline{font:16px/1.5 var(--serif)}.site-header nav{display:flex;flex-wrap:wrap;gap:4px 24px;margin-left:auto}.site-header nav a{display:flex;align-items:center;min-height:44px;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{text-decoration:underline}
/* The actual coffeehouse illustration is the opening object; its source pixels stay untouched. */
.author-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);grid-template-areas:'art copy';gap:clamp(30px,6vw,92px);align-items:center;padding:clamp(34px,5vw,76px) 7.5%;background:var(--paper)}.author-artwork{grid-area:art;width:min(100%,800px);margin:0;padding:0;border:0}.author-artwork img{width:100%;height:auto}.author-artwork figcaption{margin-top:14px;font:12px/1.5 var(--ui)}.author-copy{grid-area:copy;max-width:34ch}.author-name{margin:0 0 24px;font-size:clamp(64px,5.2vw,76px);font-weight:500;line-height:1.06}.author-heading h2{font-size:clamp(28px,2.4vw,34px);font-weight:400;line-height:1.25}.author-description{margin:22px 0 0;font-size:20px;line-height:1.65}.author-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px;font:14px/1.4 var(--ui)}.author-actions a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 17px;border:1px solid var(--ink);background:var(--ink);color:var(--warm);text-decoration:none}.author-actions a:nth-child(n+2){background:transparent;color:var(--ink)}
/* Existing covers become a small shelf before the reading journey. */
.book-index{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;padding:38px 5% 34px;background:var(--green);color:var(--warm);font:14px/1.3 var(--ui)}.book-index a{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0;padding:0 5px;text-align:center;text-decoration:none}.index-cover{width:clamp(130px,11vw,160px);max-width:100%;transition:transform .2s ease}.index-cover img{width:100%;box-shadow:9px 13px 22px #0007}.index-title{min-height:2.6em;overflow-wrap:anywhere}.book-index a:hover .index-cover,.book-index a:focus-visible .index-cover{transform:translateY(-10px)}.book-index a[aria-current]{color:var(--brass);font-weight:700}.book-switcher{position:sticky;top:0;z-index:15;display:flex;justify-content:space-between;gap:8px 20px;padding:8px 4.5%;border-bottom:1px solid #262b2833;background:#faf8f2f2;backdrop-filter:blur(8px);font:13px/1.4 var(--ui)}.book-switcher a{min-width:44px;display:flex;align-items:center;min-height:44px;text-decoration:none}.book-switcher a[aria-current]{font-weight:700;text-decoration:underline}
/* Each title retains a clear cover, original blurb, real proof, and both editions. */
.scene{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.75fr);grid-template-areas:'title book' 'blurb book' 'foot foot';gap:42px 10%;align-items:start;min-height:680px;padding:clamp(58px,7vw,104px) 8% 32px;scroll-margin-top:0;background:var(--paper)}.scene-title{grid-area:title;max-width:10ch;font-size:clamp(60px,6.7vw,90px);font-weight:500;line-height:1.12;margin:0}.book{grid-area:book;width:100%;max-width:333px;justify-self:end;text-align:center}.book>img{width:100%;box-shadow:15px 20px 32px #262b2844}.buy{display:flex;flex-direction:column;gap:10px;margin-top:22px;font:14px/1.45 var(--ui)}.buy a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 12px}.buy a:first-child{padding:14px 20px;background:var(--green);color:var(--warm);text-decoration:none}.blurb{grid-area:blurb;max-width:37ch;font-size:21px;line-height:1.64}.blurb p{margin:0}.story-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:50px;margin-top:28px;padding:12px 0;border-bottom:2px solid currentColor;font:15px/1.5 var(--ui);text-decoration:none}.story-entry span{flex:none;font-size:24px}.scene-proof{margin-top:28px;padding-top:18px;border-top:1px solid currentColor;font-size:18px;line-height:1.5}.scene-proof figcaption{margin-top:10px;font:12px/1.5 var(--ui);opacity:.8}.scene-foot{grid-area:foot;display:flex;justify-content:space-between;gap:24px;align-self:end;padding-top:18px;border-top:1px solid #262b2855;font:14px/1.5 var(--ui)}.scene-foot a{display:flex;align-items:center;min-height:44px}.drawing{grid-area:drawing;margin:0}.drawing img{width:100%;box-shadow:0 14px 28px #262b2822}.drawing figcaption{margin-top:16px;font:12px/1.5 var(--ui)}.scenery{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.scene.brooklyn{grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);grid-template-areas:'book title' 'book blurb' 'drawing drawing' 'foot foot';gap:42px 11%;background:var(--paper)}.brooklyn .book{justify-self:start}.brooklyn .scene-title{max-width:9ch}.brooklyn .blurb{max-width:40ch}.exhibition .scene.brooklyn{grid-template-areas:'book title' 'book blurb' 'foot foot'}.exhibition .scene.brooklyn .drawing{display:none}.scene.brooklyn .scene-foot{border-color:#262b2855}
.scene.night{grid-template-columns:minmax(0,1.15fr) minmax(260px,.75fr);grid-template-areas:'title book' 'blurb book' 'foot foot';gap:42px 12%;background:var(--night);color:var(--warm)}.night .scene-title{max-width:7ch;font-size:clamp(66px,8vw,98px);line-height:1.05}.night .book{justify-self:start}.night .book>img{box-shadow:22px 26px 48px #0009;outline:1px solid #ffffff22}.night .buy a:first-child{background:var(--brass);color:var(--ink)}.night .story-entry{color:var(--brass)}.night .scene-foot{border-color:#faf8f255}.night .scenery{background:radial-gradient(ellipse 39% 64% at 72% 56%,#534836 0,var(--night) 70%)}.night .scenery:after{content:'';position:absolute;top:17%;bottom:12%;left:61%;width:1px;background:#dcbf7833;box-shadow:0 0 105px 62px #dcbf7818;transform:translateX(32px)}.night.entered .scenery:after{animation:light-settle .55s cubic-bezier(.16,1,.3,1) both}
.scene.lily{background:var(--green);color:var(--warm)}.scene.lily,.scene.wind{grid-template-columns:minmax(260px,.76fr) minmax(0,1.24fr);grid-template-areas:'book title' 'book blurb' 'foot foot';gap:42px 12%}.lily .book,.wind .book{justify-self:start}.lily .scene-title{max-width:10ch;font-size:clamp(60px,6vw,72px);line-height:1.15}.lily .buy a:first-child{background:var(--brass);color:var(--ink)}.lily .story-entry{color:var(--brass)}.lily .scene-foot{border-color:#faf8f255}.scene.wind{background:var(--paper);color:var(--green)}.wind .scene-title{max-width:none;font-size:clamp(44px,7vw,90px);line-height:1.08}.wind .buy a:first-child{background:var(--green)}
.scene.castle{grid-template-columns:minmax(0,.9fr) minmax(250px,.75fr) minmax(0,.9fr);grid-template-areas:'title title title' 'blurb book menu' 'foot foot foot';gap:42px 7%;background:var(--paper);color:var(--ink)}.castle .scene-title{max-width:none;font-size:clamp(64px,7.4vw,88px);line-height:1.08}.castle .book{justify-self:center}.castle .buy a:first-child{background:var(--green);color:var(--warm)}.castle-menu{grid-area:menu;display:flex;flex-direction:column;gap:18px;padding-top:20px}.castle-menu a{padding-bottom:18px;border-bottom:1px solid #262b2855;font:500 27px/1.15 var(--serif);text-decoration:none}.castle-menu span{display:block;margin-top:10px;font:13px/1.5 var(--ui)}
.author-profile{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:clamp(34px,7vw,120px);align-items:start;padding:86px 12%;background:var(--warm)}.author-profile .author-portrait{width:100%;margin:0}.author-profile .author-portrait figcaption{margin-top:14px;font:12px/1.5 var(--ui)}.author-profile .author-portrait img{width:100%;height:auto}.author-profile .author-summary{max-width:50ch;margin:0;padding:0;border:0}.author-profile .author-summary h2{font-size:clamp(48px,5vw,66px);line-height:1.1}.author-profile .author-summary p{font-size:22px;line-height:1.65}.author-profile .author-summary a{display:inline-flex;align-items:center;min-height:44px;font:14px/1.5 var(--ui)}
.original-reviews{padding:78px 8%;background:var(--paper)}.original-reviews>div:first-child,.original-reviews>div:last-child{font:15px/1.55 var(--ui)}.original-reviews>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:36px 0}.original-reviews blockquote{font-size:30px;line-height:1.4}.story-section{padding:78px 8%;background:var(--warm)}.story-section>h1,.catalog-page>h1{max-width:14ch;font-size:clamp(52px,6vw,70px);line-height:1.12}.story-section>h2{font-size:clamp(46px,5vw,64px)}.story-section>p{max-width:60ch;font-size:22px;line-height:1.65}.story-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 45px;margin:45px 0}.story-list>a{min-width:0;display:block;padding:28px 0;border-top:2px solid #262b2866;text-decoration:none}.story-list h3{font-size:28px;line-height:1.2}.story-list span,.story-list small{font:13px/1.5 var(--ui)}.story-list p{font-size:20px;line-height:1.6;margin:20px 0}.filter{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:32px 0;font:16px/1.5 var(--ui)}.filter select{min-height:48px;max-width:100%;padding:12px;border:1px solid #262b2866;background:#fff}.launch{padding:76px 8%;background:var(--green);color:var(--warm)}.launch>div{display:grid;grid-template-columns:1.5fr 1fr;gap:32px 10%}.launch h2{font-size:48px;line-height:1.12}.launch p{font-size:21px;line-height:1.6}.launch form{display:flex;flex-direction:column;justify-content:center;gap:16px}.launch form>div{font:14px/1.6 var(--ui)}.launch input[type=email]{width:100%;padding:16px;border:1px solid transparent;background:var(--warm);color:var(--ink);font:17px/1.5 var(--ui)}.launch button{padding:16px;border:0;background:var(--brass);color:var(--ink);font:16px/1.5 var(--ui);cursor:pointer}input[name=_honey]{display:none}
footer{display:grid;grid-template-columns:1fr 1fr;gap:28px 60px;padding:55px 8% max(45px,env(safe-area-inset-bottom));background:var(--warm);border-top:1px solid #262b2833}footer p{max-width:32ch;margin:14px 0 0;font-size:19px;line-height:1.65}footer nav{display:flex;flex-wrap:wrap;align-content:start;gap:4px 25px;font:14px/1.5 var(--ui)}footer nav a{display:flex;align-items:center;min-height:44px;overflow-wrap:anywhere}footer small{grid-column:1/-1;font:13px/1.5 var(--ui)}
.catalog-page{max-width:1500px;margin:0 auto;padding:88px 6%;background:var(--paper)}.catalog-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:42px 10%;align-items:end;margin-bottom:42px}.catalog-heading h1{max-width:11ch;margin:0;font-size:clamp(56px,6.5vw,70px);line-height:1.12}.catalog-heading>div{max-width:48ch;padding-bottom:10px;border-bottom:2px solid var(--green)}.catalog-heading p{font-size:22px;line-height:1.65}.catalog-heading a{display:inline-flex;align-items:center;min-height:44px;font:14px/1.5 var(--ui)}.catalog-index{display:flex;flex-wrap:wrap;gap:8px 24px;margin:40px 0 28px;padding:16px 0;border-top:2px solid var(--green);border-bottom:2px solid var(--green);font:14px/1.5 var(--ui)}.catalog-index a{display:flex;align-items:center;min-height:44px;text-decoration:none}.covers{display:flex;flex-direction:column;gap:28px;padding:30px 0}.catalog-entry{display:grid;grid-template-columns:minmax(210px,.76fr) minmax(0,1.24fr);gap:clamp(34px,7vw,120px);align-items:center;min-height:490px;padding:clamp(34px,5vw,70px) 8%;background:var(--green);color:var(--warm)}.catalog-entry:nth-child(even){grid-template-columns:minmax(0,1.24fr) minmax(210px,.76fr);background:var(--warm);color:var(--ink)}.catalog-entry:nth-child(even) .catalog-art{grid-column:2}.catalog-entry:nth-child(even) .catalog-info{grid-column:1;grid-row:1}.catalog-entry.night{background:var(--night);color:var(--warm)}.catalog-entry.lily{background:var(--green);color:var(--warm)}.catalog-entry.wind,.catalog-entry.castle{background:var(--paper);color:var(--ink)}.catalog-art{display:block;justify-self:center;width:min(100%,310px)}.catalog-art img{width:100%;box-shadow:18px 23px 34px #0006}.catalog-info{max-width:48ch}.catalog-info h2{font-size:clamp(56px,6vw,70px);line-height:1.08;margin:0 0 28px}.catalog-info h2 a{text-decoration:none}.catalog-info p{font-size:21px;line-height:1.62}.catalog-info .buy{max-width:340px;margin-top:30px}.catalog-entry .buy a:first-child{background:var(--brass);color:var(--ink)}.catalog-entry.wind .buy a:first-child,.catalog-entry.castle .buy a:first-child{background:var(--green);color:var(--warm)}.catalog-forthcoming{max-width:65ch;margin:70px 0 0;padding-top:30px;border-top:2px solid var(--green)}.catalog-forthcoming h2{font-size:clamp(46px,5vw,62px);line-height:1.1}.catalog-forthcoming h2 a{text-decoration:none}.catalog-forthcoming p{font-size:21px;line-height:1.6}
.book-details{max-width:1080px;margin:0 auto;padding:78px 10%;background:var(--warm);font:21px/1.65 var(--serif)}.book-details>div:first-child{font:15px/1.6 var(--ui)}.book-details aside{padding:25px 0;font:15px/1.7 var(--ui)}.book-details section{max-width:68ch;padding:35px 0}.book-details section[aria-label="Amazon reader reviews"]>div:last-child{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:18px;font:14px/1.6 var(--ui)}.book-details section[aria-label="Amazon reader reviews"]>div:last-child a{margin:0;min-height:44px;display:flex;align-items:center}.book-details blockquote{font-size:28px;line-height:1.45}.book-details h2,.book-details h3{font-size:36px;line-height:1.16}.book-details>div{margin:24px 0}.book-details a{display:inline-block;margin:8px 16px 8px 0}.book-details a[href*="/stories/"]{display:block;margin:24px 0;padding:24px 0 0;border-top:2px solid #262b2844;text-decoration:none}.book-details a[href*="/stories/"]>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font:500 30px/1.15 var(--serif)}.book-details a[href*="/stories/"]>div:first-child>span:last-child{flex:none;white-space:nowrap;font:13px/1.5 var(--ui)}.book-details a[href*="/stories/"]>div+div{max-width:65ch;margin-top:12px;font:20px/1.65 var(--serif)}
.about-page,.contact-page{min-height:62vh;padding:76px 8% 90px;background:var(--warm)}.about-page>section:first-child,.contact-page>section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:40px 8%;max-width:1240px;margin:0 auto;align-items:start}.about-page img{width:100%;max-width:420px}.bookcover-col>div{margin-top:18px;font:13px/1.6 var(--ui)}.about-page h1,.contact-page h1{font-size:clamp(48px,5vw,66px);line-height:1.14}.about-page p,.contact-page p{font-size:22px;line-height:1.7}.about-page h2{font-size:34px;line-height:1.2}.about-page blockquote{margin:32px 0;padding-left:20px;border-left:3px solid var(--green);font:20px/1.6 var(--serif)}.about-page blockquote+div{display:flex;flex-wrap:wrap;gap:10px 28px;font:15px/1.5 var(--ui)}.about-page blockquote+div>a{display:flex;align-items:center;min-height:44px}.about-page section[aria-label]{margin-top:50px;padding-top:32px;border-top:2px solid #262b2844}.about-page section[aria-label]>div:first-child{margin-bottom:30px;font:14px/1.5 var(--ui)}.about-page section[aria-label]>div>div{margin-bottom:32px}.contact-page>section{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.contact-page form{display:flex;flex-direction:column;gap:22px;padding-top:26px;border-top:2px solid var(--green)}.contact-page label{display:flex;flex-direction:column;gap:10px;font:16px/1.5 var(--ui)}.contact-page input,.contact-page textarea{width:100%;min-height:48px;padding:14px;border:1px solid #262b2866;background:#fff;font:18px/1.5 var(--ui)}.contact-page textarea{resize:vertical}.contact-page button{align-self:flex-start;min-height:48px;padding:16px 24px;border:0;background:var(--green);color:var(--warm);font:16px/1.5 var(--ui);cursor:pointer}.contact-page aside{padding-top:22px;border-top:2px solid #262b2844;font:19px/1.6 var(--serif)}.contact-page aside a{overflow-wrap:anywhere}.contact-page aside>div:first-child{margin-bottom:24px}.contact-page aside>div:nth-child(2){display:flex;flex-direction:column;gap:24px}
.reading-page{background:var(--warm)}.reading-page .reading{max-width:760px;margin:70px auto;padding:0 35px}.reading header{display:block;margin-bottom:50px;text-align:center}.reading h1{font-size:clamp(46px,5vw,60px);line-height:1.15}.reading header>div{margin:18px 0;font:17px/1.65 var(--serif)}.story-body p{font:21px/1.7 var(--serif)}.reading-page main>section{max-width:760px;margin:45px auto;padding:30px 35px;font:19px/1.6 var(--serif)}.reading-page main>section a{display:inline-block;margin:10px 18px 10px 0}
dialog{width:min(980px,96%);height:94svh;max-height:94svh;margin:auto;padding:0;border:0;background:var(--warm);color:var(--ink);overscroll-behavior:contain}dialog::backdrop{background:#171921d9;backdrop-filter:blur(5px)}.reader-toolbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 30px;border-bottom:2px solid #262b2833;background:var(--warm);font:14px/1.5 var(--ui)}.reader-toolbar button{min-height:44px;padding:11px 16px;border:1px solid #262b2866;background:var(--warm);font:inherit;cursor:pointer}.reader-toolbar a{display:flex;align-items:center;min-height:44px}.reader-content{font-size:21px}.reader-content:empty{min-height:180px}.reader-content .reading{max-width:710px;margin:52px auto 78px;padding:0 28px}.reader-content .reading header{text-align:left}.reader-content .reading h1{font-size:clamp(46px,5vw,60px);line-height:1.14}.reading-open{overflow:hidden}.story-purchase{display:block;margin-top:54px;padding:34px 0;border-top:2px solid #262b2855}.story-purchase>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:24px;align-items:start}.story-purchase .end-book-art{grid-column:1}.story-purchase .end-book-art+div{grid-column:2;min-width:0}.story-purchase .end-book-art a{display:block;margin:0}.story-purchase .end-book-art img{width:100%;box-shadow:6px 9px 16px #262b282b}.story-purchase h2{font-size:34px;line-height:1.16}.end-book-actions{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px;font:14px/1.5 var(--ui)}.end-book-actions a{display:flex;align-items:center;min-height:44px;margin:0}.end-book-actions a:first-child{padding:10px 16px;background:var(--green);color:var(--warm);text-decoration:none}.end-book-actions>div{flex-basis:100%}.reading-page main>.story-purchase a{display:flex;margin:0}.motion-paused{scroll-behavior:auto}.motion-paused .index-cover{transition:none!important}.motion-paused .book-index a .index-cover{transform:none!important}.motion-paused dialog[open]{animation:none}.motion-paused .scenery:before,.motion-paused .scenery:after{animation:none!important;transform:none!important}dialog[open]{animation:reader-arrive .26s cubic-bezier(.16,1,.3,1) both}@keyframes reader-arrive{from{transform:translateY(4vh);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes light-settle{from{transform:translateX(-28px);opacity:.25}to{transform:translateX(32px);opacity:1}}
@media(max-width:1100px){.scene.castle{grid-template-columns:minmax(0,1fr) minmax(230px,.85fr);grid-template-areas:'title title' 'blurb book' 'menu menu' 'foot foot';gap:36px 8%}.castle-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;padding-top:12px}.site-header{flex-wrap:wrap;gap:4px 24px}.site-header .tagline{display:block;order:2;flex-basis:100%}.site-header nav{order:3;width:100%;margin-left:0}.author-intro{grid-template-columns:minmax(0,1.4fr) minmax(250px,.9fr);gap:40px 6%;padding-inline:6%}.scene.brooklyn{grid-template-columns:minmax(230px,.76fr) minmax(0,1.24fr)}.story-list{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-entry{gap:54px;padding-inline:6%}.catalog-entry:nth-child(even){gap:54px}}
@media(max-width:760px){html{scroll-padding-top:18px}.site-header{flex-wrap:wrap;gap:4px 20px;min-height:0;padding:12px 6%}.site-header .identity{font-size:28px}.site-header nav{order:3;width:100%;justify-content:space-between;gap:0 18px;margin-left:0;font-size:13px}.site-header nav a,footer nav a{min-width:0;overflow-wrap:anywhere}.author-intro{grid-template-columns:1fr;grid-template-areas:'art' 'copy';gap:30px;padding:30px 6% 54px}.author-artwork{width:100%;padding:0;border:0}.author-copy{max-width:none}.author-name{font-size:clamp(52px,14vw,68px);line-height:1.12;margin-bottom:18px}.author-heading h2{font-size:clamp(28px,7vw,34px);line-height:1.25}.author-actions{margin-top:24px}.author-actions a{min-height:44px;padding:9px 14px}.book-index{display:flex;gap:18px;overflow-x:auto;padding:30px 6%;scroll-padding-inline:6%;scrollbar-color:var(--brass) var(--green)}.book-index a{flex:0 0 132px;padding:0}.index-cover{width:132px}.index-title{min-height:2.6em}.book-switcher{position:relative;flex-wrap:wrap;justify-content:flex-start;padding:12px 6%;gap:0 20px;backdrop-filter:none}.scene,.scene.brooklyn,.scene.night,.scene.lily,.scene.wind,.scene.castle{display:flex;flex-direction:column;gap:0;min-height:0;padding:54px 6% 32px;scroll-margin-top:0}.scene .scene-title,.scene.brooklyn .scene-title,.scene.night .scene-title,.scene.lily .scene-title,.scene.wind .scene-title,.scene.castle .scene-title{order:1;width:100%;max-width:none;margin:0 0 36px;font-size:clamp(50px,12vw,66px);line-height:1.14}.scene .book{order:2;width:68%;max-width:300px;margin:0;align-self:center}.scene .blurb{order:3;width:100%;max-width:none;margin-top:36px;padding:0;font-size:21px;line-height:1.65}.scene .blurb .story-entry{order:-1;margin:0 0 26px}.scene .drawing{order:4;width:100%;margin:36px 0 0}.scene-foot{order:6;width:100%;margin-top:36px;padding-top:20px;font-size:13px}.castle-menu{display:flex;order:4;width:100%;padding-top:40px}.castle-menu a{font-size:28px}.night .scenery:after{display:none}.scene-proof{font-size:18px}.author-profile{grid-template-columns:1fr;gap:30px;padding:54px 6%}.author-profile .author-portrait{width:min(75%,280px);justify-self:center}.author-profile .author-summary p{font-size:21px}.original-reviews,.story-section,.launch{padding-inline:6%}.original-reviews{padding-block:54px}.original-reviews>div:nth-child(2){grid-template-columns:1fr;gap:32px}.original-reviews blockquote{font-size:28px}.story-section{padding-block:54px}.story-section>h1{font-size:48px}.story-section>h2{font-size:44px}.story-section>p{font-size:21px}.story-list{grid-template-columns:minmax(0,1fr);gap:8px;margin:32px 0}.launch{padding-block:54px}.launch>div{grid-template-columns:1fr}.launch h2{font-size:42px}footer{grid-template-columns:1fr;padding:42px 6% max(40px,env(safe-area-inset-bottom))}.catalog-page{padding:54px 0}.catalog-heading{grid-template-columns:minmax(0,1fr);gap:26px;margin:0 6% 30px}.catalog-heading h1{font-size:54px}.catalog-heading>div{padding-bottom:18px}.catalog-heading p{font-size:21px}.catalog-index{margin:30px 6% 20px;gap:4px 20px}.covers{gap:0;padding:16px 0}.catalog-entry,.catalog-entry:nth-child(even){grid-template-columns:1fr;gap:30px;min-height:0;padding:54px 7%}.catalog-entry:nth-child(even) .catalog-art,.catalog-entry:nth-child(even) .catalog-info{grid-column:auto;grid-row:auto}.catalog-art{width:min(72%,280px)}.catalog-info{max-width:none}.catalog-info h2{font-size:56px}.catalog-info p{font-size:21px}.catalog-info .buy{max-width:none}.catalog-forthcoming{margin:54px 6% 0}.catalog-forthcoming h2{font-size:46px}.catalog-forthcoming p{font-size:21px}.book-details{padding:48px 6%;font-size:21px}.book-details h2,.book-details h3{font-size:34px}.about-page,.contact-page{padding:46px 6% 62px}.about-page>section:first-child,.contact-page>section{grid-template-columns:1fr;gap:32px}.about-page .bookcover-col{width:85%;max-width:360px;justify-self:center}.about-page h1,.contact-page h1{font-size:48px}.about-page p,.contact-page p{font-size:21px}.contact-page aside{padding-top:10px}.reading-page .reading{margin:44px auto;padding:0 6%}.reading h1{font-size:48px}.story-body p{font-size:21px}.reading-page main>section{padding:26px 6%}dialog{width:100%;height:100svh;max-height:100svh}.reader-toolbar{padding:12px 6%;gap:14px;font-size:13px}.reader-content .reading{margin-top:32px;padding:0 6%}.reader-content .reading h1{font-size:48px}.story-purchase>div{grid-template-columns:80px minmax(0,1fr);gap:18px}.story-purchase h2{font-size:30px}}
@media(max-width:360px){.catalog-info h2{font-size:46px}.site-header nav{gap:0 12px;font-size:12px}.author-name{font-size:48px}.author-heading h2{font-size:27px}.scene .scene-title,.scene.night .scene-title,.scene.lily .scene-title{font-size:46px}.about-page h1,.contact-page h1,.reading h1{font-size:44px}.reader-content .reading h1{font-size:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scenery:before,.scenery:after,.book-index a .index-cover{transform:none!important}}

/* Story reminders are a reading aid: a rail when the article has room, a bar when it does not. */
:root{--story-purchase-space:0px}
html{scroll-padding-bottom:calc(var(--story-purchase-space) + env(safe-area-inset-bottom))}
.reading-page{padding-bottom:var(--story-purchase-space)}
.story-body{overflow-wrap:break-word}
.reading-page :is(a,button,input,select,textarea,[tabindex]){scroll-margin-bottom:calc(var(--story-purchase-space) + 18px)}

.story-purchase-reminder{--purchase-layout:bar;position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:54px minmax(0,1fr) 44px;grid-template-areas:'cover copy dismiss' 'actions actions actions';gap:9px 12px;align-items:center;padding:10px max(14px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border-top:1px solid #262b284d;background:var(--warm);box-shadow:0 -8px 22px #262b281c;color:var(--ink);font-family:var(--ui)}
.story-purchase-reminder[hidden]{display:none!important}
.story-purchase-reminder .reminder-cover{grid-area:cover;width:54px;max-height:64px;object-fit:contain;object-position:center;box-shadow:3px 5px 10px #262b2833}
.story-purchase-reminder .reminder-copy{grid-area:copy;min-width:0}
.story-purchase-reminder .reminder-eyebrow{margin:0 0 2px;font:11px/1.25 var(--ui);letter-spacing:.045em;text-transform:uppercase}
.story-purchase-reminder .reminder-title{margin:0;font:600 15px/1.24 var(--serif);overflow-wrap:anywhere}
.story-purchase-reminder .reminder-dismiss{grid-area:dismiss;align-self:start;display:grid;width:44px;height:44px;place-items:center;padding:0;border:1px solid #262b2866;background:transparent;font:28px/1 var(--ui);cursor:pointer}
.story-purchase-reminder .reminder-actions{grid-area:actions;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font:13px/1.25 var(--ui)}
.story-purchase-reminder .reminder-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 10px;border:1px solid var(--green);text-align:center;text-decoration:none;overflow-wrap:anywhere}
.story-purchase-reminder .reminder-actions a:first-child{background:var(--green);color:var(--warm)}

/* The modal itself owns scrolling; its purchase reminder stays in normal flex flow. */
#story-reader{max-width:100%}
#story-reader[open]{display:flex;flex-direction:column;overflow:hidden}
#story-reader .reader-toolbar{position:static;z-index:auto;flex:none}
#story-reader .reader-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
#story-reader .story-purchase-reminder{position:relative;z-index:auto;right:auto;bottom:auto;left:auto;flex:none;width:auto;max-height:40%;overflow-y:auto;box-shadow:none}
#story-reader .reader-content :is(a,button,input,select,textarea,[tabindex]){scroll-margin-bottom:18px}

@media(min-width:640px){
  #story-reader .story-purchase-reminder{grid-template-columns:48px minmax(120px,1fr) minmax(0,1.5fr) 44px;grid-template-areas:'cover copy actions dismiss';gap:12px;padding:10px 18px}
  #story-reader .story-purchase-reminder .reminder-cover{width:48px;max-height:62px}
  #story-reader .story-purchase-reminder .reminder-actions{display:grid;gap:8px}
  #story-reader .story-purchase-reminder .reminder-actions a{min-width:0}
}

@media(min-width:1280px) and (min-height:700px){
  .story-purchase-reminder[data-presentation='page']{--purchase-layout:rail;top:max(108px,14svh);right:auto;bottom:auto;left:calc(50% + 400px);width:220px;grid-template-columns:1fr 44px;grid-template-areas:'cover dismiss' 'copy copy' 'actions actions';gap:14px;padding:18px;border:1px solid #262b284d;box-shadow:7px 10px 22px #262b281c}
  .story-purchase-reminder[data-presentation='page'] .reminder-cover{width:min(110px,100%);max-height:none;justify-self:start}
  .story-purchase-reminder[data-presentation='page'] .reminder-dismiss{justify-self:end}
  .story-purchase-reminder[data-presentation='page'] .reminder-title{font-size:19px;line-height:1.2}
  .story-purchase-reminder[data-presentation='page'] .reminder-actions{grid-template-columns:1fr}
}
