@font-face{font-family:Bricolage;src:url('assets/fonts/bricolage-latin.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Literata;src:url('assets/fonts/literata-latin.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--shopfront:#172f43;--paper:#f7f5ee;--brass:#d9b65f;--wine:#77394b;--petrol:#245e63;--ink:#233442;--muted:#596269;--rule:#d8d5cb;--paper-deep:#ece9df;--display:Bricolage,'Arial',sans-serif;--reading:Literata,Georgia,serif;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:5rem;--space-7:7rem;--ease:cubic-bezier(.16,1,.3,1);--duration:450ms;--elevation:0 20px 50px #07131e40}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem;scrollbar-color:var(--brass) var(--shopfront)}body{margin:0;background:var(--shopfront);color:var(--paper);font-family:var(--display);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--brass);color:var(--shopfront)}:focus-visible{outline:3px solid var(--brass);outline-offset:6px}.paper-world :focus-visible{outline-color:var(--petrol)}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button{font:inherit;cursor:pointer;color:inherit}button:disabled{opacity:.6;cursor:default}button[hidden],[hidden]{display:none!important}button,input{caret-color:var(--wine)}svg{display:block}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.08;text-wrap:balance}h1{font-size:clamp(3.5rem,6.65vw,6rem);letter-spacing:-.035em}h2{font-size:clamp(2.4rem,4vw,3.6rem);letter-spacing:-.03em}h3{font-size:1.45rem;letter-spacing:-.02em}p{max-width:65ch}a,button,summary{touch-action:manipulation}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.section{padding-block:100px}.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:13px 21px;border-radius:4px;text-decoration:none;font-size:14px;line-height:1.4;border:1px solid transparent;transition:background var(--duration) var(--ease),color var(--duration) var(--ease)}.button-brass{background:var(--brass);color:var(--shopfront)}.button-brass:hover{background:#e8cc8b}.button-outline{border-color:#80909b;color:var(--paper)}.button-outline:hover{background:var(--paper);color:var(--shopfront)}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:12px}.text-link:hover{text-decoration-color:var(--brass)}.skip-link{position:fixed;left:16px;top:-100px;background:var(--brass);color:var(--shopfront);padding:12px;z-index:20}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;gap:35px;padding-block:28px;border-bottom:1px solid #ffffff26}.wordmark{display:inline-flex;align-items:center;gap:9px;font-size:35px;line-height:1;letter-spacing:-.04em;text-decoration:none}.wordmark svg{width:33px;height:33px}.brand-period{color:var(--brass);margin-left:-9px}.site-header nav{display:flex;gap:28px;margin-left:auto}.site-header nav a{text-decoration:none;font-size:13px}.site-header nav a:hover{text-decoration:underline}.header-download{font-size:12px;min-height:43px;padding:9px 14px;gap:10px}.header-download .icon{width:17px}.hero{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center;padding-block:80px 64px;min-height:620px}.hero-copy{padding-bottom:28px}.hero-description{font-family:var(--reading);font-size:clamp(17px,1.65vw,21px);line-height:1.7;margin-top:27px;color:#e0e5e7}.hero-detail{font-size:13px;color:#c3cdd4;margin-top:17px}.hero-actions{margin-top:32px;display:flex;align-items:flex-start;flex-direction:column;gap:20px}.hero-display{position:relative;padding:10px 0 35px}.tablet{position:relative;background:#0a1823;padding:18px 24px;border-radius:26px;transform:rotate(-3deg);box-shadow:0 23px 44px #07131e66}.tablet-camera{position:absolute;width:5px;height:5px;background:#34434f;border-radius:50%;top:50%;left:9px}.tablet-screen{background:var(--paper);color:var(--ink);border-radius:10px;padding:18px 25px 12px;overflow:hidden}.reader-top,.reader-bottom{display:flex;justify-content:space-between;align-items:center;font:9px var(--display);letter-spacing:.035em}.reader-top{border-bottom:1px solid var(--rule);padding-bottom:9px}.reader-top span{font-size:8px}.tablet-content{position:relative;padding:19px 10px 14px;min-height:315px}.chapter{font-family:var(--reading);font-size:11px;color:var(--muted)}.tablet-content h2{font:600 26px/1.15 var(--display);letter-spacing:-.02em;margin-top:8px;margin-bottom:16px}.tablet-content>p:not(.chapter){font:12px/1.9 var(--reading);max-width:37ch;margin-top:10px}.sample-word{text-decoration:underline;text-decoration-color:var(--brass);text-decoration-thickness:2px;text-underline-offset:3px}.sample-definition{display:flex;align-items:center;gap:8px;background:#e9e2ca;position:relative;z-index:1;width:max-content;max-width:100%;padding:11px 14px;margin-top:16px;border-radius:2px;transform:rotate(2deg)}.sample-definition svg{color:var(--petrol);width:27px;height:27px;flex:none}.sample-definition strong,.sample-definition span{display:block;font-size:10px;line-height:1.6}.sample-definition strong{font-size:12px}.hero-otter{position:absolute;right:-15px;bottom:7px;width:138px;transform:rotate(7deg)}.reader-bottom{border-top:1px solid var(--rule);padding-top:10px;font-size:8px}.bookseller-note{font:14px/1.5 var(--reading);color:var(--brass);transform:rotate(-4deg);margin-top:24px;margin-left:55px;max-width:30ch}.spine-nav{display:flex;align-items:end;gap:5px;padding-top:12px}.spine{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:13px 26px;border-radius:5px 5px 0 0;text-decoration:none;flex:1;font-size:14px;position:relative;transition:transform var(--duration) var(--ease);box-shadow:inset 5px 0 #00000014}.spine:hover{transform:translateY(-7px)}.spine-mustard{background:var(--brass);color:var(--shopfront);flex:1.2;min-height:63px}.spine-wine{background:var(--wine);color:var(--paper);min-height:57px}.spine-petrol{background:var(--petrol);color:var(--paper);min-height:61px}.spine-paper{background:#e4e2d6;color:var(--shopfront);min-height:52px}.paper-world{background:var(--paper);color:var(--ink)}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;margin-bottom:48px}.section-heading p{font-family:var(--reading);font-size:16px;line-height:1.9}.hand-note{display:inline-block;font:13px/1.6 var(--reading);color:var(--wine);transform:rotate(-3deg);margin-top:14px}.reading-table{display:grid;grid-template-columns:1.7fr 1fr;background:var(--paper-deep);padding:32px;gap:40px;align-items:start}.story-page{background:#fffef9;padding:32px 42px 20px;box-shadow:0 4px 17px #0000000d;position:relative}.story-meta{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;margin-bottom:31px}.story-meta span:last-child{color:var(--wine)}.story-page h3{font-size:26px}.story-page>.chapter{margin-top:10px;font-size:11px}.story-text{font-family:var(--reading);font-size:17px;line-height:2.15;margin-top:25px}.story-text p+p{margin-top:20px}.word{display:inline;padding:1px 2px;background:transparent;border:0;border-bottom:2px solid var(--petrol);color:var(--petrol);font:inherit;line-height:1.3;border-radius:1px}.word:hover,.word[aria-expanded=true]{background:#dfe8df}.word.familiar{border-bottom:1px dashed var(--petrol)}.story-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;padding-top:15px;border-top:1px solid var(--rule);font-size:11px}.small-button{display:inline-flex;gap:10px;align-items:center;font-size:11px;border:0;background:none;padding:8px 0;color:var(--petrol);min-height:44px}.small-button .icon{width:16px}.reading-aside{padding-top:48px}.word-slip{background:#e2d1a1;padding:25px 25px 20px;transform:rotate(2deg);min-height:295px;transition:background var(--duration) var(--ease)}.slip-art{height:75px;width:100px;color:var(--petrol);margin-bottom:12px}.word-slip h3{font-size:23px;margin-bottom:16px}.word-slip p{font-family:var(--reading);font-size:14px;line-height:1.85}.word-slip.is-familiar{background:#dce5dc;min-height:0;transform:rotate(-1deg)}.word-slip.is-familiar .slip-art{height:48px}.text-button{background:transparent;border:0;padding:10px 0;font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:block;color:var(--shopfront)}.reread-note{margin-top:32px;padding-inline:10px}.reread-note p:first-child{font-size:15px;line-height:1.4;margin-bottom:10px}.reread-note p:nth-child(2){font:12px/1.8 var(--reading);color:var(--muted)}.reread-note .text-button{color:var(--muted);margin-top:12px}.text-alternative{font-size:13px;margin-top:20px;color:var(--muted)}summary{cursor:pointer;min-height:44px;padding-block:10px}.text-alternative dl{padding:15px;display:grid;grid-template-columns:auto 1fr;gap:12px 25px;background:var(--paper-deep)}dd{margin:0}dt{font-weight:600}.how-section{padding-top:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;list-style:none;padding:0;margin:0;counter-reset:step}.steps li{border-top:1px solid var(--rule);padding-top:25px}.steps h3{font-size:20px;margin:20px 0 12px;line-height:1.2}.steps p{font:14px/1.9 var(--reading);color:var(--muted)}.step-graphic{height:80px;display:flex;align-items:center;position:relative}.mini-books{gap:5px;padding-left:8px}.mini-books i{display:block;width:25px;height:65px;background:var(--wine);border-radius:2px;transform:rotate(-9deg);box-shadow:inset 4px 0 #00000014}.mini-books i:nth-child(2){background:var(--brass);height:73px;transform:rotate(3deg)}.mini-books i:nth-child(3){background:var(--petrol);transform:rotate(12deg)}.word-example,.fading-help{display:flex;align-items:start;flex-direction:column;justify-content:center}.word-example span,.fading-help span{font:22px var(--reading);border-bottom:2px solid var(--petrol);color:var(--petrol)}.word-example small{background:#e2d1a1;padding:3px 11px;margin:6px 0 0 23px;font-size:11px}.fading-help span{border-bottom:1px dashed var(--petrol)}.fading-help small{font-size:10px;color:var(--muted);margin:6px 0 0 50px}.parent-section{background:var(--petrol);color:var(--paper);padding-block:80px}.parent-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.parent-copy p{font:15px/1.95 var(--reading);color:#e1e9e6;margin-top:25px}.parent-copy .text-link{margin-top:28px}.parent-notes{background:var(--paper);color:var(--ink);padding:35px;transform:rotate(1deg)}.parent-notes h3{font-size:22px}.confirmation{font-size:11px;color:var(--wine);margin-top:9px}.parent-notes ul{list-style:none;padding:0;margin:23px 0 0}.parent-notes li{border-top:1px solid var(--rule);padding-block:17px}.parent-notes li:last-child{padding-bottom:0}.parent-notes strong{display:block;font-size:14px}.parent-notes li span{display:block;font:12px/1.8 var(--reading);margin-top:6px;color:var(--muted)}.sample-label{font-family:var(--display)!important;font-size:11px!important;color:var(--muted);margin-top:12px}.book-display{display:grid;grid-template-columns:repeat(3,1fr) .65fr;gap:30px;align-items:start}.book-cover{aspect-ratio: .71;box-shadow:inset 7px 0 #0000001a,5px 8px 14px #00000012;display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px 17px 15px;transition:transform var(--duration) var(--ease);position:relative;border-radius:1px 3px 3px 1px}.book-item:hover .book-cover{transform:translateY(-7px) rotate(-1deg)}.cover-voyage{background:var(--brass);color:var(--shopfront);transform:rotate(-2deg)}.cover-moon{background:var(--wine);color:var(--paper);transform:rotate(1deg)}.cover-garden{background:var(--petrol);color:var(--paper);transform:rotate(-1deg)}.cover-series{font:9px/1.5 var(--reading);margin-bottom:19px}.book-cover h3{font-size:clamp(20px,2.25vw,31px);line-height:1.07;letter-spacing:-.03em}.book-cover svg{width:100%;max-height:170px;flex:1;margin-block:5px}.book-cover>span:last-child{font-size:7px;letter-spacing:.02em;margin-top:auto}.book-item>h3{font-size:14px;margin-top:25px;line-height:1.4}.book-item>p{font-size:10px;color:var(--muted);margin-top:5px}.shelf-guest{align-self:center;text-align:center}.shelf-guest button{border:0;background:none;color:var(--petrol);font-size:11px;width:100%;padding:10px}.shelf-guest button svg{width:80px;margin:0 auto 10px}.shelf-guest button span{text-decoration:underline;text-underline-offset:4px}.shelf-guest p{font:11px/1.7 var(--reading)}.shelf-guest img{width:150px;margin:0 auto}.trust-section{padding-top:0}.trust-section h2{font-size:35px;margin-bottom:30px}.trust-content{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;border-top:1px solid var(--rule);padding-top:32px}.trust-content>p{font:15px/1.9 var(--reading);color:var(--muted)}.trust-content dl{margin:0}.trust-content dl>div+div{margin-top:22px}.trust-content dt{font-size:14px;margin-bottom:6px}.trust-content dd{font-size:12px;line-height:1.8;color:var(--muted)}.download-section{background:var(--shopfront);color:var(--paper);padding-block:75px}.download-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:center}.download-layout h2{font-size:clamp(2rem,3.7vw,3.5rem)}.download-layout>div>p{font:16px/1.9 var(--reading);color:#dce2e5;margin-top:24px}.download-counter{border-left:1px solid #ffffff30;padding-left:55px}.download-counter .price{font:32px var(--display);color:var(--brass);margin:0}.download-counter p:nth-child(2){font:10px var(--display);margin:10px 0 20px}.download-counter .store-note{font:10px/1.8 var(--display);color:#bac6ce;margin-top:14px}.download-counter #store-status{font-size:12px;line-height:1.7;color:var(--brass);margin-top:10px}.faq-section{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.faq-section h2{font-size:38px;max-width:12ch}.faq-list details{border-bottom:1px solid var(--rule)}.faq-list details:first-child{border-top:1px solid var(--rule)}.faq-list summary{list-style:none;position:relative;padding:22px 35px 22px 0;font-size:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:5px;top:16px;font:24px var(--display);color:var(--petrol)}.faq-list details[open] summary:after{content:'−'}.faq-list p{font:13px/1.9 var(--reading);padding:0 25px 24px 0;color:var(--muted)}.site-footer{padding-block:50px 30px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.site-footer .wordmark{font-size:32px}.site-footer p{font-size:12px;color:#c3cdd4;margin-top:14px}.site-footer small{font-size:10px;display:block;margin-top:26px;color:#c3cdd4}.footer-links{display:flex;gap:25px;justify-content:end;align-items:start;font-size:12px;padding-top:10px}.footer-documents{grid-column:1/-1;border-top:1px solid #ffffff26;padding-top:15px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.footer-documents summary{font-size:11px;color:#c3cdd4}.footer-documents p{font-size:11px;line-height:1.9;margin-top:0}.page-bookmark{position:fixed;right:17px;top:0;height:100vh;width:6px;z-index:10;pointer-events:none}.page-bookmark>span{display:block;width:6px;height:30px;background:var(--brass);position:absolute;top:0;clip-path:polygon(0 0,100% 0,100% 100%,50% 86%,0 100%)}
@media(min-width:1500px){.hero{padding-block:95px 85px}.tablet-content{min-height:345px}.tablet-content>p:not(.chapter){font-size:14px}.hero-otter{width:160px}.tablet-content h2{font-size:30px}}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.site-header{gap:22px}.site-header nav{gap:22px}.header-download{font-size:0;gap:0;padding:11px}.header-download .icon{width:20px}.hero{gap:30px;padding-block:60px 45px;min-height:560px}h1{font-size:clamp(3.5rem,6.5vw,5rem)}.hero .button{font-size:12px;gap:12px;padding-inline:15px}.tablet{padding:14px 19px}.tablet-screen{padding-inline:15px}.tablet-content{padding-inline:5px;min-height:300px}.tablet-content h2{font-size:23px}.tablet-content>p:not(.chapter){font-size:11px;max-width:32ch}.hero-otter{width:112px;right:-12px;bottom:15px}.sample-definition{padding:8px;width:max-content}.sample-definition span{font-size:9px}.sample-definition strong{font-size:10px}.sample-definition svg{width:21px}.bookseller-note{font-size:12px;margin-left:20px}.spine{font-size:12px;padding-inline:18px}.section{padding-block:80px}.reading-table{padding:25px;gap:26px;grid-template-columns:1.6fr 1fr}.story-page{padding:27px}.story-text{font-size:15px}.word-slip{padding:20px}.parent-layout{gap:60px}.book-display{gap:23px}.book-cover{padding:18px 14px 12px}.cover-series{font-size:8px;margin-bottom:15px}.trust-content{gap:60px}.how-section{padding-top:0}.trust-section{padding-top:0}.download-layout{gap:40px}.download-counter{padding-left:32px}.faq-section{gap:40px}.footer-links{gap:18px}}
@media(max-width:800px){.wrap{width:calc(100% - 48px)}.site-header{padding-block:22px}.wordmark{font-size:31px}.wordmark svg{width:28px}.site-header nav{gap:20px}.site-header nav a{font-size:12px}.site-header nav a:last-child{display:none}.hero{grid-template-columns:.93fr 1.07fr;gap:25px;padding-block:55px 45px;min-height:520px}h1{font-size:clamp(2.8rem,6.8vw,3.6rem)}.hero-description{font-size:15px;line-height:1.8;margin-top:20px}.hero-detail{font-size:11px}.hero .button{font-size:11px;gap:9px;padding:12px}.hero .button .icon{width:16px}.hero-actions{gap:16px;margin-top:25px}.text-link{font-size:12px}.tablet{border-radius:20px;padding:12px 16px}.tablet-screen{padding:12px}.reader-top span{font-size:6px}.tablet-content{padding-top:16px;min-height:295px}.tablet-content h2{font-size:20px}.tablet-content>p:not(.chapter){font-size:10px;line-height:1.95}.hero-otter{width:90px;bottom:5px}.sample-definition{padding:9px 6px;gap:6px;margin-top:12px}.sample-definition svg{width:17px}.sample-definition span{font-size:8px}.sample-definition strong{font-size:9px}.reader-bottom{font-size:6px}.bookseller-note{margin-left:10px;font-size:11px}.spine{font-size:11px;padding-inline:12px}.spine .icon{width:15px}.spine-nav{gap:4px}.section-heading{gap:35px}.section-heading p{font-size:14px}.reading-table{grid-template-columns:1.5fr 1fr;gap:20px;padding:20px}.story-page{padding:25px 23px}.story-meta{font-size:8px;gap:10px}.story-page h3{font-size:23px}.story-page>.chapter{font-size:9px}.story-text{font-size:14px;line-height:2.1}.word-slip{padding:20px 16px;min-height:270px}.word-slip h3{font-size:21px}.word-slip p{font-size:12px}.slip-art{width:80px;height:60px}.story-footer{flex-wrap:wrap}.small-button{font-size:10px}.steps{gap:28px}.steps h3{font-size:18px}.steps p{font-size:12px}.parent-layout{gap:35px}.parent-notes{padding:25px}.parent-copy p{font-size:13px}.parent-notes h3{font-size:20px}.parent-notes strong{font-size:13px}.parent-notes li span{font-size:11px}.book-display{grid-template-columns:repeat(3,1fr);gap:26px}.shelf-guest{grid-column:1/-1;max-width:240px;margin:0 auto}.shelf-guest button{display:flex;align-items:center;gap:16px}.shelf-guest button svg{width:42px;margin:0}.shelf-guest #otter-surprise{display:flex;align-items:center;gap:10px}.shelf-guest img{width:85px}.book-cover h3{font-size:25px}.trust-content{gap:35px}.download-layout{grid-template-columns:1fr 1fr;gap:40px}.download-layout>div>p{font-size:13px}.download-counter{padding-left:30px}.download-counter .store-note{font-size:9px}.download-counter .price{font-size:27px}.download-counter .button{font-size:11px;padding-inline:12px}.download-counter .button .icon{width:16px}.faq-section h2{font-size:32px}.footer-links{flex-wrap:wrap;gap:12px 20px}.page-bookmark{right:7px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.site-header{padding-block:19px;gap:15px}.wordmark{font-size:30px}.site-header nav{margin-left:auto;gap:14px}.site-header nav a{font-size:11px}.site-header nav a:nth-child(2){display:none}.header-download{min-height:38px;padding:8px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-block:44px 28px;gap:34px}.hero-copy{padding-bottom:0}h1{font-size:clamp(3.5rem,13.5vw,5rem);letter-spacing:-.035em}.hero-description{font-size:17px;line-height:1.7;margin-top:20px}.hero-detail{font-size:12px;margin-top:13px}.hero-actions{margin-top:25px;gap:17px}.hero .button{font-size:12px;min-height:49px;padding-inline:17px}.hero .button .icon{width:18px}.hero .text-link{font-size:12px}.hero-display{padding:8px 8px 12px;max-width:440px;width:100%;margin:auto}.tablet{padding:14px 18px;border-radius:23px;transform:rotate(-3deg)}.tablet-screen{padding:14px 17px}.tablet-content{min-height:295px;padding-inline:5px}.tablet-content h2{font-size:23px}.tablet-content>p:not(.chapter){font-size:11px;max-width:31ch}.chapter{font-size:10px}.hero-otter{width:104px;right:-7px;bottom:6px}.sample-definition{padding:10px;gap:8px}.sample-definition strong{font-size:10px}.sample-definition span{font-size:9px}.sample-definition svg{width:22px}.reader-top span{font-size:7px}.reader-bottom{font-size:7px}.bookseller-note{font-size:12px;margin:24px 0 0 20px;transform:rotate(-3deg)}.spine-nav{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:4px;padding-top:12px}.spine{font-size:11px;min-height:46px;padding:10px 15px;border-radius:3px 3px 0 0}.spine-mustard{min-height:46px}.spine-nav .spine:nth-child(3),.spine-nav .spine:nth-child(4){border-radius:0}.section{padding-block:65px}h2{font-size:35px;letter-spacing:-.03em}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.section-heading p{font-size:14px}.hand-note{margin-top:10px;font-size:12px}.reading-table{display:block;padding:14px;margin-inline:-7px}.story-page{padding:24px 22px 18px}.story-meta{font-size:8px;margin-bottom:25px}.story-page h3{font-size:23px}.story-page>.chapter{font-size:9px}.story-text{font-size:15px;line-height:2.1;margin-top:24px}.story-text p+p{margin-top:20px}.reading-aside{padding:24px 10px 6px}.word-slip{transform:rotate(1deg);padding:22px;min-height:0;max-width:100%}.word-slip h3{font-size:24px;margin-bottom:10px}.word-slip h3 br{display:none}.word-slip p{font-size:14px}.slip-art{float:right;width:75px;height:65px;margin:0 0 8px 12px}.reread-note{margin-top:25px;padding:0 3px}.reread-note p:nth-child(2){font-size:12px}.text-alternative{font-size:12px;margin-top:20px}.text-alternative dl{display:block}.text-alternative dd{margin:5px 0 15px}.how-section{padding-top:0}.steps{display:block}.steps li{display:grid;grid-template-columns:85px 1fr;gap:0 20px;padding-block:25px}.step-graphic{grid-row:1/3;height:80px}.steps h3{margin:5px 0 10px;font-size:20px}.steps p{font-size:13px}.mini-books{gap:4px;padding-left:2px}.mini-books i{width:19px;height:55px}.mini-books i:nth-child(2){height:65px}.word-example span,.fading-help span{font-size:15px}.word-example small{font-size:8px;margin-left:0;padding:4px}.fading-help small{font-size:8px;margin-left:0}.parent-section{padding-block:60px}.parent-layout{grid-template-columns:1fr;gap:35px}.parent-copy p{font-size:14px;margin-top:22px}.parent-copy .text-link{font-size:12px}.parent-notes{padding:27px;transform:rotate(.6deg)}.parent-notes h3{font-size:23px}.parent-notes strong{font-size:14px}.parent-notes li span{font-size:12px}.book-display{grid-template-columns:repeat(2,1fr);gap:35px 23px}.book-cover{padding:17px 12px 13px}.book-cover h3{font-size:23px}.cover-series{font-size:7px;margin-bottom:14px}.book-cover>span:last-child{font-size:5px}.book-item>h3{font-size:13px;margin-top:17px}.book-item>p{font-size:9px}.shelf-guest{grid-column:auto;align-self:center;max-width:100%}.shelf-guest button{display:block}.shelf-guest button svg{width:65px;margin:0 auto 10px}.shelf-guest #otter-surprise{display:block}.shelf-guest img{width:100px}.trust-section{padding-top:0}.trust-section h2{font-size:31px;max-width:15ch}.trust-content{grid-template-columns:1fr;gap:27px;padding-top:25px}.trust-content>p{font-size:14px}.trust-content dd{font-size:12px}.download-section{padding-block:60px}.download-layout{grid-template-columns:1fr;gap:35px}.download-layout h2{font-size:35px}.download-layout>div>p{font-size:14px}.download-counter{border-left:0;border-top:1px solid #ffffff30;padding:25px 0 0}.download-counter .price{font-size:32px}.download-counter p:nth-child(2){font-size:10px}.download-counter .button{font-size:13px;padding-inline:20px}.download-counter .store-note{font-size:10px}.faq-section{display:block}.faq-section h2{font-size:35px;max-width:14ch;margin-bottom:30px}.faq-list summary{font-size:14px;padding-block:21px}.faq-list p{font-size:13px}.site-footer{padding-block:40px 25px;grid-template-columns:1fr}.site-footer small{margin-top:20px}.footer-links{justify-content:start;gap:23px;font-size:12px;padding-top:0}.footer-documents{grid-template-columns:1fr 1fr;gap:10px 20px}.page-bookmark{right:4px;width:4px}.page-bookmark>span{width:4px;height:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.page-bookmark{display:none}}

/* Readable notes at every size; covers and tablet remain illustrative objects. */
.story-meta{font-size:11px}.story-page>.chapter{font-size:12px}.small-button{font-size:12px}.book-item>p{font-size:12px}.sample-label{font-size:12px!important}.confirmation{font-size:12px}.download-counter p:nth-child(2),.download-counter .store-note{font-size:12px}.footer-documents summary,.footer-documents p{font-size:12px}.reread-note p:nth-child(2){font-size:14px}.parent-notes li span{font-size:13px}.parent-notes strong{font-size:15px}.trust-content dd{font-size:14px}.cover-series{font-size:11px}.cover-series+ h3{margin-top:0}.site-header nav a{padding-block:8px}.footer-links a{padding-block:5px}.book-cover>span:last-child{display:none}
@media(max-width:800px) and (min-width:601px){.cover-series{font-size:10px}.story-meta{flex-wrap:wrap;gap:4px}.story-page>.chapter{font-size:11px}}
@media(max-width:600px){.book-cover{aspect-ratio:.65}.cover-series{font-size:10px;margin-bottom:12px}.story-meta{font-size:10px}.book-item>p{font-size:11px}.parent-notes li span{font-size:13px}.steps p{font-size:14px}.download-counter p:nth-child(2),.download-counter .store-note{font-size:12px}}

/* Impeccable 4.8 — the bookshop, opened wider. */
:root {
  --heading: var(--reading);
  --section-space: clamp(72px, 8vw, 120px);
  --object-shadow: 0 24px 50px #00000024;
}
.wrap { width: min(1280px, calc(100% - 96px)); }
.site-header { padding-block: 27px; border-bottom-color: #d9b65f40; }
.site-header nav { gap: 32px; }
.site-header nav a { font-size: 14px; }
.header-download { font-size: 13px; padding: 11px 16px; gap: 12px; }
h1, .section-heading h2, .parent-copy h2, .download-layout h2, .faq-section h2 {
  font-family: var(--heading); font-weight: 400; letter-spacing: -.04em;
}
h1 { font-size: clamp(58px, 6.4vw, 92px); line-height: 1.13; }
h2 { font-size: clamp(34px, 3.8vw, 54px); line-height: 1.16; }
.hero { grid-template-columns: 1fr 1.08fr; gap: 60px; min-height: 680px; padding-block: 64px 68px; }
.hero-copy { padding-bottom: 0; }
.hero-description { font-family: var(--display); font-size: 20px; line-height: 1.6; margin-top: 28px; max-width: 29ch; }
.hero-detail { font-size: 14px; margin-top: 18px; color: #c3d5e0; }
.hero-actions { margin-top: 30px; gap: 20px; }
.button { min-height: 52px; padding: 15px 22px; font-size: 14px; border-radius: 2px; }
.button:active { transform: translateY(1px); }
.header-download { min-height: 44px; padding: 10px 14px; font-size: 13px; }
.hero-display { isolation: isolate; padding: 64px 0 43px; }
.hero-display:before { content: ''; position: absolute; z-index: -1; inset: 0 20px 0 45px; background: var(--brass); border-radius: 48% 48% 0 0; }
.tablet { padding: 17px 24px; transform: rotate(-5deg); border-radius: 26px; box-shadow: 0 25px 38px #00000038; }
.tablet-screen { padding: 20px 26px 15px; }
.tablet-content { padding: 24px 8px 20px; min-height: 355px; }
.tablet-content h2 { font-family: var(--reading); font-weight: 400; font-size: 29px; line-height: 1.22; margin: 11px 0 20px; }
.tablet-content>p:not(.chapter) { font-size: 13px; line-height: 1.95; max-width: 34ch; }
.reader-top span, .reader-bottom { font-size: 9px; letter-spacing: 0; }
.tablet-content .chapter { font-size: 12px; }
.sample-definition { background: #e2d1a1; padding: 12px 15px; margin-top: 18px; transform: rotate(3deg); }
.sample-definition strong { font-size: 13px; }
.sample-definition span { font-size: 11px; }
.hero-otter { width: 135px; right: -15px; bottom: 20px; }
.bookseller-note { color: var(--shopfront); font-size: 13px; transform: none; margin: 30px 0 0 78px; position: relative; }
.bookseller-note:before { content: ''; width: 23px; height: 1px; background: currentColor; position: absolute; left: -34px; top: 10px; }
.spine-nav { gap: 6px; padding-top: 0; }
.spine { min-height: 61px; padding: 18px 24px; font-size: 15px; border-radius: 3px 3px 0 0; box-shadow: inset 6px 0 #00000015; }
.spine:before { content: ''; position: absolute; left: 10px; top: 11px; bottom: 11px; width: 1px; background: currentColor; opacity: .3; }
.spine-mustard { min-height: 68px; }
.spine-petrol { min-height: 64px; }
.spine-paper { min-height: 58px; }
.section { padding-block: var(--section-space); }
.section-heading { grid-template-columns: 1.15fr 1fr; gap: 72px; margin-bottom: 48px; }
.section-heading p { font-size: 16px; line-height: 1.8; }
.hand-note { color: var(--wine); font-size: 14px; margin-top: 16px; }
.reading-table { grid-template-columns: 1.65fr 1fr; gap: 0; padding: 0; background: #e8e4d8; align-items: stretch; }
.story-page { padding: 44px 52px 25px; margin: 26px 0 26px 26px; box-shadow: 0 5px 16px #0000000a; }
.story-page h3 { font-family: var(--reading); font-weight: 400; font-size: 30px; line-height: 1.3; }
.story-meta { font-size: 12px; margin-bottom: 30px; }
.story-page>.chapter { font-size: 12px; margin-top: 12px; }
.story-text { font-size: 18px; line-height: 2.1; margin-top: 28px; }
.story-text p+p { margin-top: 22px; }
.story-text>p:first-child:first-letter { font-size: 54px; line-height: 1; float: left; margin: 8px 7px 0 0; color: var(--wine); }
.story-footer { margin-top: 30px; }
.small-button { font-size: 13px; gap: 12px; }
.reading-aside { padding: 48px 32px 32px; display: flex; flex-direction: column; justify-content: center; }
.word-slip { padding: 30px; min-height: 300px; transform: rotate(2deg); box-shadow: 0 9px 20px #0000000a; }
.word-slip h3 { font-family: var(--reading); font-weight: 400; font-size: 28px; line-height: 1.22; }
.word-slip p { font-size: 15px; line-height: 1.85; }
.slip-art { height: 75px; width: 95px; margin-bottom: 18px; }
.reread-note { margin-top: 34px; padding-inline: 8px; }
.reread-note p:first-child { font-size: 16px; }
.reread-note p:nth-child(2) { font-size: 14px; }
.text-button, .text-alternative { font-size: 13px; }
.how-section { padding-top: 0; }
.steps { gap: 48px; }
.steps li { padding-top: 28px; }
.step-graphic { height: 95px; }
.steps h3 { font-size: 23px; margin-top: 24px; }
.steps p { font-size: 15px; line-height: 1.9; }
.word-example span, .fading-help span { font-size: 27px; }
.word-example small, .fading-help small { font-size: 12px; }
.parent-section { padding-block: 88px; }
.parent-layout { grid-template-columns: 1fr 1fr; gap: 100px; }
.parent-copy h2 { font-size: 54px; }
.parent-copy p { font-size: 16px; line-height: 1.9; color: #e0eeee; }
.parent-notes { transform: rotate(-2deg); padding: 39px; position: relative; }
.parent-notes:before { content: ''; position: absolute; width: 64px; height: 12px; top: -6px; left: calc(50% - 32px); background: var(--brass); }
.parent-notes h3 { font-size: 25px; }
.parent-notes li { padding-block: 21px; }
.parent-notes li span { font-size: 14px; }
.book-display { grid-template-columns: repeat(3, 1fr); gap: 46px; padding-bottom: 26px; position: relative; }
.book-display:after { content: ''; position: absolute; left: -12px; right: -12px; bottom: 120px; height: 11px; background: #d9b65f; box-shadow: 0 8px 14px #00000015; z-index: 0; }
.book-item { position: relative; z-index: 1; }
.book-cover { aspect-ratio: .76; padding: 28px 23px 25px; }
.book-cover h3 { font-size: clamp(25px, 3vw, 42px); }
.cover-series { font-family: var(--reading); font-size: 12px; margin-bottom: 23px; }
.book-cover svg { max-height: 235px; margin-block: 15px; }
.book-item>h3 { font-size: 17px; margin-top: 35px; }
.book-item>p { font-size: 13px; margin-top: 8px; }
.shelf-guest { grid-column: 1/-1; justify-self: end; margin: 0; max-width: 350px; min-height: 70px; position: relative; z-index: 2; }
.shelf-guest button { display: flex; align-items: center; gap: 15px; font-size: 13px; }
.shelf-guest button svg { width: 42px; margin: 0; }
.shelf-guest #otter-surprise { display: flex; gap: 15px; align-items: center; }
.shelf-guest img { width: 100px; }
.shelf-guest p { font-size: 13px; }
.trust-section { padding-top: 0; }
.trust-section h2 { font-family: var(--reading); font-weight: 400; font-size: 35px; }
.trust-content { grid-template-columns: 1fr 1.35fr; gap: 90px; }
.trust-content>p { font-size: 16px; }
.trust-content dt { font-size: 16px; }
.trust-content dd { font-size: 14px; }
.download-section { padding-block: 88px; }
.download-layout { grid-template-columns: 1.25fr 1fr; gap: 80px; }
.download-layout h2 { font-size: clamp(35px, 3.6vw, 51px); }
.download-counter { padding-left: 40px; }
.download-counter .price { font-size: 38px; }
.faq-section { gap: 100px; }
.faq-section h2 { font-size: 44px; max-width: 13ch; }
.faq-list summary { font-size: 17px; padding-block: 25px; }
.faq-list p { font-size: 15px; }
.site-footer { padding-block: 55px 32px; }
.site-footer>.footer-brand { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.site-footer p { font-size: 14px; }
.footer-links { font-size: 14px; gap: 28px; }
.footer-documents { margin-top: 15px; }

@media(max-width:1100px) {
  .wrap { width: calc(100% - 64px); }
  .site-header nav { gap: 23px; }
  .header-download { font-size: 12px; }
  .hero { gap: 35px; min-height: 610px; padding-block: 55px; }
  h1 { font-size: 64px; }
  .hero-description { font-size: 18px; }
  .hero .button { font-size: 12px; padding-inline: 15px; }
  .tablet { padding: 15px 19px; }
  .tablet-screen { padding: 16px; }
  .tablet-content { min-height: 330px; padding-top: 20px; }
  .tablet-content h2 { font-size: 25px; }
  .tablet-content>p:not(.chapter) { font-size: 12px; }
  .hero-otter { width: 105px; bottom: 20px; }
  .sample-definition { padding: 10px; }
  .sample-definition span { font-size: 10px; }
  .bookseller-note { margin-left: 65px; font-size: 12px; }
  .hero-display:before { inset-inline: 25px 10px; }
  .spine { padding-inline: 21px; font-size: 13px; }
  .story-page { padding: 32px; margin: 20px 0 20px 20px; }
  .story-text { font-size: 17px; }
  .reading-aside { padding: 35px 25px; }
  .word-slip { padding: 24px; }
  .parent-layout { gap: 60px; }
  .parent-copy h2 { font-size: 46px; }
  .parent-notes { padding: 28px; }
  .parent-copy p { font-size: 15px; }
  .book-display { gap: 30px; }
  .book-cover { padding: 24px 17px; }
  .trust-content { gap: 60px; }
  .download-layout, .faq-section { gap: 55px; }
}
@media(max-width:800px) {
  .wrap { width: calc(100% - 48px); }
  .site-header nav a { font-size: 13px; }
  .header-download { font-size: 0; padding: 12px; gap: 0; }
  .hero { gap: 28px; min-height: 560px; }
  h1 { font-size: clamp(42px, 6.4vw, 53px); }
  .hero-description { font-size: 16px; }
  .hero-detail { font-size: 13px; }
  .hero .button { font-size: 11px; padding: 12px; }
  .hero-display { padding-block: 45px 30px; }
  .tablet { padding: 12px 16px; }
  .tablet-screen { padding: 13px; }
  .tablet-content { min-height: 315px; padding-inline: 3px; }
  .tablet-content h2 { font-size: 22px; }
  .tablet-content>p:not(.chapter) { font-size: 11px; }
  .hero-otter { width: 88px; right: -10px; bottom: 18px; }
  .sample-definition span { font-size: 9px; }
  .sample-definition strong { font-size: 11px; }
  .bookseller-note { margin-left: 43px; font-size: 11px; }
  .spine { font-size: 12px; padding-inline: 18px; }
  .section-heading { gap: 35px; }
  .reading-table { grid-template-columns: 1.45fr 1fr; }
  .story-page { margin: 16px 0 16px 16px; padding: 25px; }
  .story-page h3 { font-size: 25px; }
  .story-text { font-size: 16px; }
  .reading-aside { padding: 30px 20px; }
  .word-slip { padding: 22px; }
  .word-slip h3 { font-size: 24px; }
  .word-slip p { font-size: 14px; }
  .parent-layout { gap: 35px; }
  .parent-notes { padding: 26px; }
  .parent-notes h3 { font-size: 23px; }
  .parent-copy h2 { font-size: 40px; }
  .steps { gap: 28px; }
  .steps h3 { font-size: 21px; }
  .steps p { font-size: 14px; }
  .book-display { gap: 24px; }
  .book-cover h3 { font-size: 28px; }
  .cover-series { font-size: 11px; margin-bottom: 15px; }
  .book-item>h3 { font-size: 15px; }
  .book-item>p { font-size: 12px; }
  .faq-section h2 { font-size: 36px; }
  .download-layout { gap: 35px; grid-template-columns: 1fr 1fr; }
  .download-counter { padding-left: 25px; }
  .download-counter .button { font-size: 12px; padding-inline: 14px; }
}
@media(max-width:600px) {
  .wrap { width: calc(100% - 40px); }
  .site-header { padding-block: 20px; }
  .site-header nav { gap: 0; }
  .site-header nav a { font-size: 13px; }
  .hero { display: flex; gap: 36px; padding-block: 40px 40px; }
  h1 { font-size: clamp(48px, 12vw, 68px); line-height: 1.16; }
  .hero-description { font-size: 18px; margin-top: 23px; }
  .hero-detail { font-size: 14px; }
  .hero .button { font-size: 13px; padding: 15px 18px; }
  .hero-actions { gap: 18px; margin-top: 25px; }
  .hero-display { width: 100%; padding: 40px 0 28px; }
  .hero-display:before { inset-inline: 20px 8px; }
  .tablet { padding: 13px 18px; transform: rotate(-4deg); }
  .tablet-content { min-height: 332px; padding-top: 23px; }
  .tablet-content h2 { font-size: 25px; }
  .tablet-content>p:not(.chapter) { font-size: 12px; max-width: 29ch; }
  .hero-otter { width: 108px; right: -9px; bottom: 12px; }
  .sample-definition { padding: 11px; }
  .sample-definition span { font-size: 10px; }
  .bookseller-note { font-size: 12px; margin: 25px 0 0 60px; }
  .spine-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; }
  .spine { padding: 14px 19px; font-size: 12px; min-height: 50px; }
  h2 { font-size: 35px; }
  .section-heading { display: block; margin-bottom: 30px; }
  .section-heading>div, .section-heading>p { margin-top: 24px; }
  .section-heading p { font-size: 15px; }
  .hand-note { font-size: 13px; }
  .reading-table { display: block; padding: 14px; margin-inline: -7px; }
  .story-page { margin: 0; padding: 25px 22px 18px; }
  .story-page h3 { font-size: 26px; }
  .story-meta { font-size: 11px; gap: 12px; flex-wrap: wrap; }
  .story-text { font-size: 16px; line-height: 2.05; }
  .story-page>.chapter { font-size: 11px; }
  .story-text>p:first-child:first-letter { font-size: 47px; }
  .reading-aside { padding: 28px 8px 10px; }
  .word-slip { min-height: 0; padding: 24px; }
  .word-slip h3 { font-size: 26px; }
  .word-slip p { font-size: 15px; }
  .slip-art { width: 68px; height: 60px; }
  .reread-note { padding-inline: 0; }
  .steps { display: block; }
  .steps li { padding-block: 28px; grid-template-columns: 85px 1fr; gap: 0 20px; }
  .steps h3 { font-size: 22px; margin-top: 0; }
  .steps p { font-size: 14px; }
  .step-graphic { height: 85px; }
  .word-example span, .fading-help span { font-size: 15px; }
  .word-example small, .fading-help small { font-size: 9px; }
  .parent-section { padding-block: 65px; }
  .parent-layout { display: block; }
  .parent-copy h2 { font-size: 40px; }
  .parent-copy p { font-size: 15px; }
  .parent-notes { margin-top: 38px; padding: 28px; transform: rotate(-1deg); }
  .parent-notes li span { font-size: 14px; }
  .book-display { grid-template-columns: 1fr; gap: 38px; padding-bottom: 0; max-width: 300px; margin-inline: auto; }
  .book-display:after { display: none; }
  .book-cover { aspect-ratio: .78; padding: 26px 23px; }
  .book-cover h3 { font-size: 38px; }
  .cover-series { font-size: 12px; }
  .book-item>h3 { font-size: 18px; margin-top: 25px; }
  .book-item>p { font-size: 13px; }
  .shelf-guest { grid-column: auto; justify-self: center; }
  .shelf-guest button { display: flex; }
  .shelf-guest button svg { width: 45px; }
  .trust-section h2 { font-size: 32px; }
  .trust-content { display: block; }
  .trust-content dl { margin-top: 28px; }
  .trust-content>p { font-size: 15px; }
  .download-section { padding-block: 65px; }
  .download-layout { display: block; }
  .download-layout h2 { font-size: 37px; }
  .download-counter { margin-top: 35px; padding: 28px 0 0; }
  .download-counter .button { font-size: 14px; padding-inline: 20px; }
  .faq-section { display: block; }
  .faq-section h2 { font-size: 36px; max-width: 15ch; }
  .faq-list summary { font-size: 16px; }
  .faq-list p { font-size: 14px; }
  .site-footer { padding-block: 40px 30px; }
  .footer-links { gap: 22px; font-size: 13px; }
}

/* Shelf layout follows the books, with captions clear of the shelf edge. */
.book-display { display: block; }
.book-display:after { display: none; }
.book-row { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 46px; }
.shelf-guest { margin: 32px 0 0 auto; }
.shelf-instruction { display: none; }
@media(max-width:1100px) { .book-row { gap: 30px; } }
@media(max-width:800px) { .book-row { gap: 24px; } }
@media(max-width:600px) {
  .book-display { max-width: none; }
  .book-row { display: flex; gap: 25px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; padding: 12px 12px 20px; margin-inline: -12px; scrollbar-color: var(--petrol) var(--paper-deep); scrollbar-width: thin; }
  .book-item { flex: 0 0 85%; scroll-snap-align: start; min-width: 0; }
  .book-cover h3 { font-size: 34px; }
  .shelf-instruction { display: block; font-size: 12px; color: var(--petrol); margin: -10px 0 15px; }
  .shelf-guest { margin: 20px 0 0 auto; width: max-content; }
}

/* The motion of paper: quick feedback, slower physical arrivals. */
:root { --motion-fast: 180ms; --motion-paper: 650ms; }
.story-text, .book-cover { transform-origin: left center; }
.hero-display .tablet { transform-origin: center bottom; }
.word-slip { transform-origin: 20% 15%; transition: background-color 380ms var(--ease), box-shadow 380ms var(--ease); }
.button { transition: background-color 240ms var(--ease), color 240ms var(--ease), translate 240ms var(--ease), box-shadow 240ms var(--ease); }
.button:hover { translate: 0 -2px; box-shadow: 0 7px 16px #00000014; }
.button:active { translate: 0 0; }
.word { transition: background-color 180ms var(--ease), color 180ms var(--ease), border-color 180ms var(--ease); }
.site-header nav a, .text-link { position: relative; }
.site-header nav a:after { content: ''; position: absolute; height: 1px; background: var(--brass); left: 0; right: 0; bottom: 3px; transform: scaleX(0); transform-origin: left; transition: transform 300ms var(--ease); }
.site-header nav a:hover:after, .site-header nav a:focus-visible:after { transform: scaleX(1); }
.faq-list summary:after { transition: transform 280ms var(--ease); }
.faq-list details[open] summary:after { transform: rotate(180deg); }
.book-row { scroll-behavior: smooth; }
.book-cover { transition: transform 600ms var(--ease), box-shadow 600ms var(--ease); }
.book-cover:after { content: ''; position: absolute; left: 7px; top: 0; bottom: 0; width: 1px; background: #ffffff35; pointer-events: none; }
@media(hover:hover) and (pointer:fine) {
  .book-item:hover .book-cover { transform: perspective(1000px) translateY(-9px) rotateY(-9deg) rotate(-1deg); box-shadow: inset 7px 0 #0000001a, 12px 18px 25px #00000022; }
  .hero-display .tablet { transition: transform 850ms var(--ease), box-shadow 850ms var(--ease); }
  .hero-display:hover .tablet { transform: rotate(-2deg) translateY(-5px); box-shadow: 0 30px 45px #00000030; }
}
/* Respect spatial-motion preference; feedback remains available through color. */
@media(prefers-reduced-motion:reduce) {
  .button:hover { translate: none; box-shadow: none; }
  .book-item:hover .book-cover, .hero-display:hover .tablet { transform: none; }
  .book-row { scroll-behavior: auto; }
  .word, .button { transition: background-color 100ms linear, color 100ms linear !important; }
  .faq-list summary:after { transition: none; }
}
.motion-toggle { border: 0; padding: 5px 0; background: none; color: var(--paper); font: inherit; text-decoration: underline; text-underline-offset: 5px; min-height: 36px; }
.footer-links { flex-wrap: wrap; }
@supports (interpolate-size: allow-keywords) {
  .faq-list details { interpolate-size: allow-keywords; }
  .faq-list details::details-content { block-size: 0; overflow: clip; transition: block-size 320ms var(--ease), content-visibility 320ms allow-discrete; }
  .faq-list details[open]::details-content { block-size: auto; }
}
html[data-motion=off] { scroll-behavior: auto; }
html[data-motion=off] *, html[data-motion=off] *:before, html[data-motion=off] *:after { animation: none !important; transition: none !important; }
html[data-motion=off] .book-row { scroll-behavior: auto; }
html[data-motion=off] .page-bookmark { display: none; }
html[data-motion=off] .button:hover { translate: none; }
html[data-motion=off] .book-item:hover .book-cover, html[data-motion=off] .hero-display:hover .tablet { transform: none; }
/* Story pagination is a real control, with a paper-turn animation. */
.story-leaf[hidden] { display: none; }
.page-controls { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; border-top: 1px solid var(--rule); padding-top: 16px; margin-top: 30px; }
.page-controls button { min-height: 44px; background: transparent; border: 1px solid var(--petrol); color: var(--petrol); border-radius: 2px; padding: 8px 12px; font-size: 13px; transition: background 220ms var(--ease), color 220ms var(--ease); }
.page-controls button:not(:disabled):hover { background: var(--petrol); color: var(--paper); }
.page-controls button:disabled { opacity: .5; }
#page-status { color: var(--ink); font-size: 12px; white-space: nowrap; }
.price span { font-size: 16px; color: var(--paper); }
.download-counter .price-proposal { font: 12px/1.7 var(--display); color: #dce2e5; margin: 10px 0; }
@media (max-width: 600px) { .page-controls { gap: 6px; } .page-controls button { font-size: 12px; padding-inline: 8px; } }
/* Illustrations bring the sample story and the bookshop shelf to life. */
.hero-word { padding: 0 2px; font: inherit; line-height: inherit; border: 0; border-bottom: 2px solid var(--wine); background: transparent; color: inherit; cursor: pointer; }
.hero-word:hover,.hero-word:focus-visible { background: #e2d1a1; }
.hero-word:focus-visible { outline: 2px solid var(--petrol); outline-offset: 3px; }
.cover-art,.story-illustration { background-size: cover; background-position: center; background-repeat: no-repeat; }
.cover-art { width: calc(100% + 46px); flex: 1; min-height: 100px; margin: 15px -23px -25px; }
.art-voyage,.scene-1 { background-image:url('assets/story-art-1.webp'); }
.art-moon { background-image:url('assets/story-art-2.webp'); }
.art-garden { background-image:url('assets/story-art-3.webp'); }
.scene-2 { background-image:url('assets/story-art-4.webp'); }
.scene-3 { background-image:url('assets/story-art-5.webp'); }
.scene-4 { background-image:url('assets/story-art-6.webp'); }
.story-illustration { height: 180px; margin: 0 0 24px; }
.story-leaf>p:first-of-type:first-letter { font-size: 54px; line-height: 1; float: left; margin: 8px 7px 0 0; color: var(--wine); }
.story-text>p:first-child:first-letter { float: none; font-size: inherit; margin: 0; }
@media(max-width:800px) { .story-illustration { height: 145px; } .cover-art { width:calc(100% + 34px);margin-inline:-17px;margin-bottom:-24px; } }
@media(max-width:600px) { .story-illustration { height: 155px; } .cover-art { width:calc(100% + 46px);margin-inline:-23px;margin-bottom:-25px; } .story-leaf>p:first-of-type:first-letter { font-size: 47px; } }
/* Keep the illustration’s subject visible on both reading widths. */
.story-illustration { height: auto; aspect-ratio: 16 / 9; background-position: center 38%; }
/* Honest preview cues and calm wayfinding. */
.preview-promise { display: inline-block; font: 13px/1.5 var(--display); color: var(--petrol); border-bottom: 1px solid var(--rule); padding-bottom: 10px; margin: 0 0 20px; }
.download-counter .store-button { margin-top: 20px; }
.download-counter .price-proposal { color: #e6eef1; font-size: 13px; }
.story-text { transform-origin: left center; backface-visibility: hidden; }
@media(max-width:600px) { .preview-promise { font-size: 12px; } }

/* Parent voices use the bookshop's paper, editorial type and quiet rules. */
.reviews-section { padding-top: 0; }
.reviews-section .reviews-preview-note { font: 14px/1.7 var(--display); color: var(--muted); margin-top: 18px; max-width: 48ch; }
.review-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.customer-review { margin: 0; padding-top: 28px; border-top: 1px solid var(--rule); display: flex; flex-direction: column; }
.customer-review blockquote { margin: 0 0 30px; }
.customer-review blockquote p { font: 20px/1.85 var(--reading); }
.customer-review figcaption { display: flex; align-items: center; gap: 14px; margin-top: auto; font-size: 15px; line-height: 1.5; }
.review-initial { display: grid; place-items: center; width: 42px; height: 48px; flex: none; background: var(--paper-deep); color: var(--wine); font: 24px/1 var(--reading); border-radius: 2px; }
.review-source { display: block; margin-top: 3px; font-size: 13px; color: var(--muted); }
.reviews-story-link { margin-top: 36px; min-height: 44px; color: var(--petrol); }
@media (max-width: 800px) {
  .review-list { gap: 24px; }
  .customer-review blockquote p { font-size: 17px; }
}
@media (max-width: 600px) {
  .review-list { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .customer-review { padding-top: 24px; }
  .customer-review blockquote { margin-bottom: 22px; }
  .customer-review blockquote p { font-size: 20px; line-height: 1.8; }
  .review-source, .reviews-section .reviews-preview-note { font-size: 14px; }
  .reviews-story-link { font-size: 15px; }
}

/* Mobile reading scale: prose first, legible labels and touch controls. */
@media (max-width: 600px) {
  .site-header nav a { font-size: 14px; }
  .hero-detail { font-size: 15px; line-height: 1.6; }
  .hero .button, .download-counter .button { font-size: 15px; line-height: 1.4; }
  .hero .text-link, .parent-copy .text-link { font-size: 15px; line-height: 1.5; }
  .tablet-content { min-height: 360px; }
  .tablet-content h2 { font-size: 24px; line-height: 1.2; }
  .tablet-content .chapter { font-size: 13px; }
  .tablet-content>p:not(.chapter) { font-size: 14px; line-height: 1.7; max-width: 26ch; }
  .reader-top span, .reader-bottom { font-size: 10px; line-height: 1.4; }
  .sample-definition strong { font-size: 13px; }
  .sample-definition span { font-size: 12px; line-height: 1.5; }
  .hero-otter { width: 85px; right: -4px; bottom: 8px; }
  .bookseller-note { font-size: 14px; line-height: 1.65; }
  .spine { font-size: 14px; line-height: 1.4; min-height: 54px; }
  .section-heading p, .parent-copy p, .trust-content>p, .download-layout>div>p { font-size: 16px; line-height: 1.8; }
  .hand-note, .preview-promise, .shelf-instruction { font-size: 14px; line-height: 1.55; }
  .story-meta, .story-page>.chapter { font-size: 13px; line-height: 1.5; }
  .story-text { font-size: 18px; line-height: 1.9; }
  .word-slip p, .reread-note p:nth-child(2), .steps p, .parent-notes li span, .trust-content dd, .faq-list p { font-size: 16px; line-height: 1.8; }
  .reread-note p:first-child, .parent-notes strong, .trust-content dt { font-size: 16px; line-height: 1.5; }
  .page-controls button, #page-status, .small-button, .text-button, .text-alternative { font-size: 14px; line-height: 1.5; }
  .page-controls button { min-height: 48px; }
  .story-footer { font-size: 13px; }
  .confirmation, .sample-label, .cover-series, .book-item>p, .shelf-guest button, .shelf-guest p { font-size: 14px !important; line-height: 1.5; }
  .download-counter .price-proposal, .download-counter p:nth-child(3), .download-counter .store-note { font-size: 14px; line-height: 1.65; }
  .footer-links, .footer-documents summary, .footer-documents p, .site-footer p { font-size: 14px; line-height: 1.65; }
  .site-footer small { font-size: 13px; }
  .word-example small, .fading-help small { font-size: 11px; }
}
@media (max-width: 600px) {
  /* Reserve space for the guest illustration instead of laying it over copy. */
  .hero-otter { position: static; display: block; width: 76px; margin: 4px 0 0 auto; transform: rotate(7deg); }
  .page-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
  .page-controls #page-status { grid-column: 1 / -1; grid-row: 1; text-align: center; }
  .page-controls button { width: 100%; }
  .word-punctuation { white-space: nowrap; }
}

/* Expressive paper motion: tactile responses without moving the hit area. */
@media (hover:hover) and (pointer:fine) {
  .word:hover, .hero-word:hover { box-shadow: inset 0 -1.15em #e2d1a1; }
  .spine:hover { transform: translateY(-11px); }
  .reviews-story-link span, .text-link span { transition: transform 350ms var(--ease); }
  .text-link:hover span, .text-link:focus-visible span { transform: translate(4px,-4px); }
}
.word, .hero-word { transition: box-shadow 250ms var(--ease), background-color 180ms var(--ease); }
.word:active, .hero-word:active { background-color: #e2d1a1; }
@media (prefers-reduced-motion:reduce) {
  .spine:hover { transform: none; }
  .text-link:hover span, .text-link:focus-visible span { transform: none; }
}
html[data-motion=off] .spine:hover, html[data-motion=off] .text-link:hover span { transform: none; }

.language-control { display: inline-flex; align-items: center; flex: none; }
.language-control span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.language-control select { min-height: 44px; max-width: 100%; border: 1px solid #80909b; border-radius: 2px; padding: 9px 28px 9px 10px; background: var(--shopfront); color: var(--paper); font: 600 13px var(--display); cursor: pointer; }
.language-control select:focus-visible { outline: 3px solid var(--brass); outline-offset: 4px; }
@media (max-width: 800px) { .site-header { gap: 12px; } .language-control select { font-size: 12px; padding-left: 8px; } }
@media (max-width: 600px) { .site-header { flex-wrap: wrap; } .site-header nav { margin-left: auto; } .language-control { margin-left: auto; } }
/* Keep the tablet's reading label legible at small viewport sizes. */
.reader-top span { font-size: 11px; }
@media (max-width: 600px) { .reader-top span { font-size: 11px; } }

/* Calm, tactile feedback on existing navigation and reading objects. */
@media (hover:hover) and (pointer:fine) {
  .spine:hover { transform: translateY(-3px); }
  .book-item:hover .book-cover { transform: translateY(-3px); }
  .hero-display:hover .tablet { transform: rotate(-2deg); }
  .text-link:hover span, .text-link:focus-visible span { transform: translate(2px,-2px); }
}
@media (prefers-reduced-motion:reduce) {
  .spine:hover, .book-item:hover .book-cover, .hero-display:hover .tablet, .text-link:hover span, .text-link:focus-visible span { transform: none; }
}
html[data-motion=off] .spine:hover, html[data-motion=off] .book-item:hover .book-cover, html[data-motion=off] .hero-display:hover .tablet, html[data-motion=off] .text-link:hover span { transform: none; }

/* Mobile header: identity and actions above a complete, easy-to-tap navigation. */
@media (max-width: 600px) {
  .site-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    padding-block: 16px 10px;
  }
  .site-header .wordmark { grid-column: 1; grid-row: 1; min-width: 0; }
  .site-header .language-control { grid-column: 2; grid-row: 1; margin: 0; }
  .site-header .header-download { grid-column: 3; grid-row: 1; width: 44px; min-height: 44px; padding: 10px; }
  .site-header nav {
    grid-column: 1 / -1;
    grid-row: 2;
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin: 0;
    border-top: 1px solid #ffffff26;
  }
  .site-header nav a, .site-header nav a:nth-child(2), .site-header nav a:last-child {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding-block: 8px;
    font-size: 13px;
    white-space: nowrap;
  }
}

/* The moving paper is a temporary, inert copy; the real text remains selectable. */
.story-text { position: relative; isolation: isolate; }
.paper-turn { position: absolute; inset: 0; z-index: 2; overflow: hidden; pointer-events: none; background: #fffef9; }
.paper-turn > .story-leaf { width: 100%; }
.paper-turn-edge { position: absolute; top: -8%; right: 0; width: 28%; height: 116%; transform-origin: center; background: linear-gradient(to right, transparent 0%, rgba(65,48,29,.09) 34%, rgba(84,65,38,.24) 58%, rgba(255,254,248,.95) 76%, #e3dac8 100%); box-shadow: 10px 0 20px rgba(36,29,20,.16); }
@media (prefers-reduced-motion: reduce) { .paper-turn { display: none; } }
