@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--blue:#2344d8;--deep:#1633b0;--ink:#172442;--yellow:#ffdb58;--muted:#59647a;--line:#dfe4ef;--radius:18px;--gutter:clamp(22px,5vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:1rem/1.65 'DM Sans',system-ui,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}button:focus-visible,a:focus-visible{outline:3px solid #e75c21;outline-offset:5px}button:disabled{cursor:default}h1,h2,h3{font-family:Outfit,'DM Sans',system-ui,sans-serif;margin:0;line-height:1.12;overflow-wrap:break-word}p{margin-top:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px 20px}.skip-link:focus{top:12px}
header{max-width:1440px;margin:auto;padding:22px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;background:white}.brand{display:flex;gap:12px;align-items:center;font:700 1.45rem/1.05 Outfit,system-ui,sans-serif;white-space:nowrap}.monogram{background:var(--blue);color:#fff;font-size:2.1rem;letter-spacing:-2px;width:51px;height:51px;border-radius:14px;display:grid;place-items:center;padding-bottom:4px;box-shadow:0 3px 0 #122a9b}.brand-sub{display:block;font:600 .75rem/1.4 'DM Sans',sans-serif;letter-spacing:1.1px;margin-top:7px}nav{display:flex;gap:32px;font-size:.9rem;font-weight:700}nav a{padding:10px 0;border-bottom:2px solid transparent}nav a:hover{color:var(--blue);border-bottom-color:var(--blue)}
.hero{max-width:1440px;margin:0 auto;background:var(--blue);background-image:radial-gradient(ellipse at 85% 0%,#4564ec 0%,transparent 55%);color:white;display:grid;grid-template-columns:1.06fr 1fr;gap:40px;padding:62px var(--gutter) 58px;position:relative;overflow:hidden}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:1.8px;line-height:1.5;margin:0 0 18px}.hero .eyebrow{color:#e0e7ff}.blue{color:var(--blue)}h1{font-size:clamp(2.75rem,4.75vw,4.3rem);letter-spacing:-2.2px;font-weight:700}h1 em{font-style:normal;color:var(--yellow)}.hero-copy>p:not(.eyebrow){font-size:1.08rem;line-height:1.75;max-width:430px;color:#edf0ff;margin:23px 0 29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:15px 23px;border-radius:9px;font-size:.95rem;font-weight:700;min-height:52px;transition:transform .18s,box-shadow .18s}.yellow{background:var(--yellow);color:var(--ink);box-shadow:0 3px 0 #eab830}.button:hover{transform:translateY(-2px);box-shadow:0 6px 0 #eab830}.hero-note{font-size:.875rem;line-height:1.6;margin-top:24px;color:#dbe4ff}.hero-books{position:relative;display:flex;align-items:center;justify-content:center;min-height:370px;align-self:center;isolation:isolate;padding-bottom:32px}.hero-books img{display:block;width:100%;height:auto;box-shadow:5px 15px 24px #06165e50;border-radius:2px}.hero-center{width:39%;position:relative;z-index:2;transform:rotate(-5deg);transition:transform .2s}.hero-side{width:32%;position:absolute;top:40px;transition:transform .2s}.hero-side.left{left:0;transform:rotate(-15deg)}.hero-side.right{right:0;transform:rotate(13deg)}.hero-center:hover{transform:rotate(-2deg) translateY(-8px)}.hero-side.left:hover{transform:rotate(-12deg) translateY(-8px)}.hero-side.right:hover{transform:rotate(10deg) translateY(-8px)}.book-sticker{position:absolute;z-index:4;bottom:0;right:5px;background:var(--yellow);color:var(--ink);border:2px solid var(--ink);border-radius:50%;padding:20px 22px;text-align:center;font:700 1rem/1.22 Outfit,system-ui,sans-serif;transform:rotate(8deg);box-shadow:3px 4px 0 #12236655}
.collection{max-width:1440px;padding:64px var(--gutter) 72px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.section-heading h2{font-size:clamp(1.9rem,2.9vw,2.55rem);letter-spacing:-1px}.section-heading .eyebrow{margin-bottom:12px}.section-heading>p{color:var(--muted);font-size:.9rem;line-height:1.6;margin:0;flex-shrink:0}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 18px;padding-bottom:23px;border-bottom:1px solid var(--line)}.filters button{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:24px;padding:10px 15px;min-height:44px;font-size:.875rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.filters button:hover{border-color:var(--blue);color:var(--blue);background:#f3f5ff}.filters button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 3px 8px #2344d821}.result-count{font-size:.875rem;color:var(--muted);margin:0 0 23px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 22px}.book{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;transition:box-shadow .2s,transform .2s}.book:hover{box-shadow:0 12px 30px #17244210;transform:translateY(-3px)}.cover-area{aspect-ratio:1/1.13;position:relative;display:flex;align-items:center;justify-content:center;padding:24px 22px;background:#edf1fc;background-image:linear-gradient(150deg,#ffffff44,transparent);overflow:hidden}.book:nth-child(4n+2) .cover-area{background-color:#fff3d1}.book:nth-child(4n+3) .cover-area{background-color:#e6f3ef}.book:nth-child(4n+4) .cover-area{background-color:#f1eafa}.cover-area img{height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(4px 8px 5px #17244228);transition:transform .22s}.cover-area:hover img{transform:translateY(-4px) rotate(-2deg)}.book-body{padding:19px 18px 17px;display:flex;flex-direction:column;flex:1;min-width:0}.book-meta{font-size:.75rem;line-height:1.5;font-weight:700;letter-spacing:.5px;color:var(--blue);text-transform:uppercase;margin:0 0 10px}.book h3{font-size:1.19rem;line-height:1.24;letter-spacing:-.2px}.description{font-size:.875rem;line-height:1.65;color:var(--muted);margin:12px 0 18px}.book-links{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:4px}.amazon{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;min-height:44px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:7px;font-size:.875rem;line-height:1.4;font-weight:700;transition:background .15s}.amazon:hover{background:var(--deep)}.peek-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;background:white;border:1px solid #cdd6f4;color:var(--blue);border-radius:7px;font-size:.875rem;font-weight:700;order:1}.peek-button:hover{background:#f1f4ff}.extra{color:var(--muted);font-size:.75rem;text-decoration:underline;text-underline-offset:3px;text-align:center;padding:5px 0;min-height:32px}
.inside-section{background:#f1f4fc;padding:64px max(var(--gutter),calc((100% - 1288px)/2))}.preview-shelf{display:grid;grid-template-columns:1fr 2.4fr;align-items:center;gap:48px;padding:40px 0;border-bottom:1px solid #d9e1ef}.preview-shelf:last-child{border:0;padding-bottom:0}.preview-copy h3{font-size:1.75rem;line-height:1.2;letter-spacing:-.5px}.preview-copy>p:not(.book-meta){font-size:1rem;color:var(--muted);margin:15px 0 21px}.preview-copy .amazon{display:inline-flex;gap:20px}.preview-pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.preview-pages button{border:0;padding:0;min-width:0;background:transparent;color:var(--ink);text-align:left}.preview-pages img{display:block;width:100%;height:auto;background:white;border:1px solid #e0e5ef;border-radius:3px;box-shadow:0 4px 15px #16213d10;transition:transform .2s}.preview-pages button:hover img{transform:translateY(-5px)}.preview-pages span{display:block;margin-top:12px;font-size:.8125rem;line-height:1.4}.about{background:var(--yellow);display:grid;grid-template-columns:1fr 1.35fr;gap:50px;padding:48px max(var(--gutter),calc((100% - 1288px)/2))}.about h2{font-size:2.7rem;letter-spacing:-1px}.about p:not(.eyebrow){font-size:1.0625rem;max-width:650px;margin:0 0 15px}.about p:last-child{margin-bottom:0}footer{max-width:1440px;margin:auto;padding:35px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand{font-size:1.125rem}footer .monogram{width:42px;height:42px;font-size:1.8rem;border-radius:11px}footer p{font-size:.8125rem;color:var(--muted);margin:0}footer>a:last-child{font-size:.875rem;font-weight:600;white-space:nowrap}
.dialog-open{overflow:hidden}dialog{width:min(940px,calc(100vw - 32px));max-height:calc(100dvh - 32px);border:0;border-radius:20px;padding:25px;color:var(--ink);box-shadow:0 20px 90px #06102e55}dialog::backdrop{background:#081433bf;backdrop-filter:blur(5px)}.dialog-heading{display:flex;gap:20px;justify-content:space-between;align-items:start}.dialog-heading .eyebrow{margin-bottom:7px}.dialog-heading h2{font-size:1.45rem}.dialog-heading button{flex-shrink:0;width:44px;height:44px;border:0;border-radius:50%;background:#edf1fb;color:var(--ink);font-size:1.875rem;line-height:1}.preview-canvas{margin-top:20px;padding:16px;background:#f1f4fc;border-radius:10px;overflow:auto;text-align:center}.preview-canvas img{display:block;width:auto;max-width:100%;height:auto;max-height:60dvh;margin:auto;box-shadow:0 3px 12px #17244214}.preview-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0}.preview-controls button{width:44px;height:44px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:8px;font-size:1.25rem;flex-shrink:0}.preview-controls button:disabled{opacity:.3}.preview-controls p{font-size:.875rem;text-align:center;margin:0}dialog>.button{display:flex;justify-content:center;min-height:46px;padding:11px 20px}
@media(min-width:1500px){.hero{border-radius:22px}.collection{padding-top:72px}}@media(max-width:1100px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{gap:25px}.hero-books{min-height:330px}h1{font-size:3.1rem}.section-heading>p{max-width:220px}.preview-shelf{gap:28px}footer{flex-wrap:wrap}footer p{flex:1}}@media(max-width:760px){html{scroll-padding-top:25px}header{padding:18px var(--gutter)}.brand{font-size:1.15rem;gap:9px}.brand-sub{font-size:.75rem;letter-spacing:0;max-width:145px}.monogram{width:44px;height:44px;font-size:1.9rem;border-radius:12px}nav{gap:18px;font-size:.875rem}nav a:last-child{display:none}.hero{grid-template-columns:1fr;gap:24px;padding:35px var(--gutter) 29px}.hero-copy{max-width:530px}h1{font-size:clamp(2.5rem,8.5vw,3.5rem);letter-spacing:-1.5px}.hero-copy>p:not(.eyebrow){font-size:1rem;margin:20px 0 23px;max-width:410px}.hero-note{font-size:.8125rem;margin-top:20px}.hero-books{width:100%;max-width:400px;min-height:310px;justify-self:center}.hero-center{width:37%}.hero-side{width:30%;top:27px}.hero-side.left{left:4%}.hero-side.right{right:4%}.book-sticker{font-size:.875rem;padding:17px;bottom:0;right:2%}.collection{padding-top:40px;padding-bottom:45px}.section-heading{align-items:start}.section-heading h2{font-size:2rem}.section-heading>p{display:none}.filters{margin-top:24px;gap:8px;padding-bottom:18px}.filters button{padding:9px 13px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.cover-area{padding:18px 12px;aspect-ratio:1/1.16}.book{border-radius:13px}.book-body{padding:15px 12px 12px}.book h3{font-size:1.08rem;line-height:1.25}.description{font-size:.875rem;margin:10px 0 15px}.book-meta{font-size:.75rem;letter-spacing:0}.amazon{padding:10px;font-size:.8125rem}.peek-button{font-size:.8125rem}.inside-section{padding:40px var(--gutter)}.preview-shelf{grid-template-columns:1fr;gap:23px;padding:30px 0}.preview-copy h3{font-size:1.6rem}.preview-copy>p:not(.book-meta){font-size:.9375rem;margin:12px 0 16px}.preview-pages{gap:10px}.preview-pages span{font-size:.75rem}.about{padding:36px var(--gutter);grid-template-columns:1fr;gap:20px}.about h2{font-size:2.2rem}.about p:not(.eyebrow){font-size:1rem}footer{padding:28px var(--gutter);flex-direction:column;align-items:start;gap:19px}dialog{padding:16px;border-radius:14px}.dialog-heading h2{font-size:1.25rem}.preview-canvas{padding:8px;margin-top:15px}.preview-canvas img{max-height:60dvh}.preview-controls p{font-size:.8125rem}}
@media(max-width:500px){header{gap:12px}.brand-sub{display:none}nav{gap:12px;white-space:nowrap}.brand{font-size:1.05rem}}
@media(max-width:380px){nav{gap:11px}.brand-sub{display:none}.hero-books{min-height:270px}.hero-note{font-size:.75rem}.grid{gap:16px 10px}.book-body{padding:13px 10px}.book h3{font-size:1rem}.amazon{padding:10px 8px;font-size:.8rem}.description{font-size:.8125rem}.section-heading h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Browsing tools share the catalog's visual language. */
select{font:inherit;color:var(--ink);background:white;border:1px solid #bfc9de;border-radius:9px;padding:12px;min-height:48px;max-width:100%}select:focus-visible,summary:focus-visible{outline:3px solid #e75c21;outline-offset:4px}.age-filter{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.age-filter label{font-weight:700}.age-filter select{min-width:170px}.age-filter button,.text-button{background:none;border:0;color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:4px;padding:12px;min-height:44px}.filter-note{font-size:.8125rem;color:var(--muted);margin:12px 0 20px;max-width:650px}.finder-section,.faq-section{padding:60px max(var(--gutter),calc((100% - 1288px)/2))}.finder-section{background:#fff8df;border-top:1px solid #f2e3ad}.section-intro{color:var(--muted);margin:16px 0 26px}.finder-questions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.finder-questions label{display:flex;flex-direction:column;gap:12px;font-size:.9375rem;font-weight:700;min-width:0}.finder-questions select{width:100%;font-weight:400}.finder-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}.finder-actions .button{border:0}.finder-actions .button:disabled{opacity:.55;cursor:wait}#finder-results{margin-top:35px;padding-top:28px;border-top:1px solid #e6d7a9}#finder-heading{font-size:1.65rem}#finder-message{max-width:760px;color:var(--muted);margin:14px 0 24px}#finder-books{grid-template-columns:repeat(3,minmax(0,1fr));max-width:950px}.browse-all{display:inline-block;color:var(--blue);font-weight:700;margin-top:25px;padding:10px 0}.faq-section h2{font-size:clamp(2rem,3vw,2.55rem);letter-spacing:-1px}.faq-list{max-width:900px;margin-top:30px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding:21px 32px 21px 0;cursor:pointer;font-weight:700;font-size:1.0625rem}.faq-list details p{color:var(--muted);max-width:760px;padding:0 24px 20px 0;margin:0}.faq-list details[open] summary{color:var(--blue)}[hidden]{display:none!important}
@media(max-width:760px){header{flex-wrap:wrap;gap:18px}header nav{width:100%;justify-content:space-between;gap:10px}header nav a:last-child{display:block}.finder-section,.faq-section{padding:40px var(--gutter)}.finder-questions{grid-template-columns:1fr;gap:22px}#finder-books{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-list summary{font-size:1rem}.age-filter{gap:8px}.age-filter button{padding-left:0}.finder-questions select{font-size:16px}}
@media(max-width:500px){#finder-books{grid-template-columns:1fr;max-width:330px}#finder-books .cover-area{aspect-ratio:1/1}.age-filter label{width:100%}}
