@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/067795c9f78c6bf4-s.1h9wsche7khri.woff2)format("woff2");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/f9aedf9ed40823e0-s.0z4tg3-ks5s-a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(../media/4aba713303114048-s.p.3gvsp20qzs9j2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fredoka Fallback;src:local(Arial);ascent-override:95.64%;descent-override:23.17%;line-gap-override:0.0%;size-adjust:101.84%}.fredoka_94ca5490-module__gv6QyG__className{font-family:Fredoka,Fredoka Fallback;font-style:normal;font-weight:600}.fredoka_94ca5490-module__gv6QyG__variable{--font-display:"Fredoka", "Fredoka Fallback"}
@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/224e262ef877bfa4-s.2yhdohbnxjaph.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/7f11d98043fdedc9-s.0vsuy7nj1h55w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1tzxx-40rxw3x.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.3aj86x1l4-kru.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.1d8-5gtibtj96.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_494ff288-module__5nKHcG__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_494ff288-module__5nKHcG__variable{--font-body:"Nunito", "Nunito Fallback"}
:root{--ink:#1c2a4a;--muted:#5b6478;--page:#fff;--shelf:#eef3fa;--leaf:#2f7d5b;--leaf-soft:#e3f1ea}*{box-sizing:border-box}html,body{margin:0}body{font-family:var(--font-body), system-ui, sans-serif;color:var(--ink);background:var(--page)}.site-header{z-index:10;border-bottom:1px solid var(--shelf);background:#fffffff2;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.brand img{border-radius:10px}.wordmark{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:-.01em;font-size:1.5rem;font-weight:600}.library{max-width:1440px;margin:0 auto;padding:24px}.book-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:32px 20px;margin:0;padding:0;list-style:none;display:grid}.cover{aspect-ratio:3/4;background:var(--shelf);border-radius:12px;position:relative;overflow:hidden}.cover img{object-fit:contain}.book-title{margin:12px 0 2px;font-size:1rem;font-weight:700;line-height:1.3}.book-author{color:var(--muted);margin:0;font-size:.9rem}.book-age{color:var(--leaf);background:var(--leaf-soft);border-radius:999px;margin:6px 0 0;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-block}@media (max-width:600px){.site-header{padding:0 16px}.wordmark{font-size:1.25rem}.library{padding:16px}.book-grid{grid-template-columns:repeat(2,1fr);gap:24px 14px}}.book{color:inherit;border-radius:12px;text-decoration:none;display:block}.book:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.book .cover{transition:transform .15s}.book:hover .cover{transform:translateY(-3px)}.book:hover .book-title{text-decoration:underline}@media (prefers-reduced-motion:reduce){.book .cover{transition:none}.book:hover .cover{transform:none}}.story{max-width:680px;margin:0 auto;padding:16px 24px 64px}.back-link{color:var(--muted);padding:8px 0;font-weight:700;text-decoration:none;display:inline-block}.back-link:hover{color:var(--ink);text-decoration:underline}.story-heading{align-items:center;gap:20px;margin:16px 0 32px;display:flex}.story-cover{aspect-ratio:3/4;background:var(--shelf);border-radius:10px;flex:0 0 120px;position:relative;overflow:hidden}.story-cover img{object-fit:contain}.story-title{font-family:var(--font-display), system-ui, sans-serif;margin:0 0 6px;font-size:clamp(1.5rem,4vw,2.25rem);font-weight:600;line-height:1.15}.story-text{border-top:1px solid var(--shelf);margin-bottom:32px;padding-top:32px}.story-text p{white-space:pre-line;margin:0 0 1.25em;font-size:1.25rem;line-height:1.75}@media (max-width:600px){.story{padding:8px 16px 48px}.story-cover{flex-basis:90px}.story-text p{font-size:1.125rem}}.site-header{justify-content:space-between}.site-nav{gap:20px;display:flex}.site-nav a{color:var(--muted);padding:8px 0;font-weight:700;text-decoration:none}.site-nav a:hover{color:var(--ink);text-decoration:underline}.about{max-width:680px;margin:0 auto;padding:40px 24px 64px}.page-title{font-family:var(--font-display), system-ui, sans-serif;margin:0 0 24px;font-size:clamp(1.75rem,5vw,2.5rem);font-weight:600;line-height:1.15}.about-text p{margin:0 0 1.25em;font-size:1.125rem;line-height:1.75}.about-text p:first-child{font-size:1.25rem}@media (max-width:600px){.about{padding:24px 16px 48px}.site-nav{gap:14px}}
