*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#332033;background:#fff1f8;margin:0;font-family:"Baloo 2",Arial,sans-serif}button,a{font-family:inherit}button{cursor:pointer}.app{background:#fff1f8;min-height:100vh}.site-main{padding:0}.page-transition{animation:.35s both pagePopFade}@keyframes pagePopFade{0%{opacity:0;filter:blur(4px);transform:translateY(16px)scale(.98)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.site-header{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border-bottom:2px solid #ffd8ea;justify-content:space-between;align-items:center;gap:14px;padding:8px 18px;display:flex;position:sticky;top:0}.brand-button,.nav-button,.menu-toggle{background:0 0;border:none}.brand-button{padding:0}.site-logo{width:auto;height:54px;display:block}.site-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nav-button{color:#6c437d;border-radius:999px;padding:9px 14px;font-size:14px;font-weight:900;transition:background .2s,color .2s,transform .2s}.nav-button:hover{background:#ffe3f1;transform:translateY(-1px)}.nav-button.active{color:#fff;background:#f23b91;box-shadow:0 8px 18px #f23b9133}.menu-toggle{border-radius:999px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;display:none}.menu-toggle span{background:#6c437d;border-radius:999px;width:24px;height:3px;margin:0 auto;transition:all .25s}.menu-toggle.open span:first-child{transform:translateY(8px)rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.site-footer{text-align:center;color:#6c437d;background:linear-gradient(#fffffff5,#fff1f8f5);border-top:2px solid #ffd8ea;padding:28px 18px}.site-footer p{margin:0;font-weight:900}.site-footer small{opacity:.75;margin-top:8px;font-weight:700;display:block}.hero-actions button,.hero-book-card button,.game-card button,.view-all-btn,.shop-button,.book-card button,.character-card button{cursor:pointer;border:none;border-radius:999px;font-weight:1000;transition:transform .2s,filter .2s}.hero-actions button:hover,.hero-book-card button:hover,.game-card button:hover,.view-all-btn:hover,.shop-button:hover,.book-card button:hover,.character-card button:hover{transform:translateY(-2px)scale(1.03)}@media (width<=900px){.site-header{padding:8px 14px}.site-logo{height:48px}.menu-toggle{display:flex}.site-nav{background:#fffffffa;border-bottom:2px solid #ffd8ea;flex-direction:column;gap:10px;padding:14px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 14px 28px #00000014}.site-nav.open{display:flex}.nav-button{text-align:center;width:100%;padding:12px}}@media (width<=640px){.site-header{padding:8px 12px}.site-logo{height:46px}.site-footer{padding:20px 12px;font-size:14px;line-height:1.5}}.home-page{background:linear-gradient(#fff1fb 0%,#fff8fc 100%);min-height:100vh;padding:18px}.home-hero-card{isolation:isolate;background-position:50%;background-size:cover;border-radius:34px;grid-template-columns:1fr 1.15fr 280px;align-items:center;gap:24px;min-height:520px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 40px #d154912e}.home-hero-card:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 18% 24%,#ffffff80,#0000 22%),radial-gradient(circle at 78% 18%,#ffffff52,#0000 20%);position:absolute;inset:0}.hero-characters{z-index:2;min-height:360px;position:relative}.hero-ave-img,.hero-cake-img{object-fit:contain;filter:drop-shadow(0 18px 18px #3b2a4a38);transition:transform .3s;position:absolute}.hero-ave-img{width:58%;max-height:340px;bottom:0;left:4%}.hero-cake-img{width:38%;max-height:220px;bottom:28px;right:6%}.home-hero-card:hover .hero-ave-img{transform:translateY(-6px)scale(1.03)}.home-hero-card:hover .hero-cake-img{transform:translateY(-10px)scale(1.06)}.hero-copy{z-index:2;text-align:center;position:relative}.hero-kicker{color:#f23b91;background:#fff;border-radius:999px;margin-bottom:12px;padding:8px 14px;font-weight:1000;display:inline-block;box-shadow:0 10px 20px #d154911f}.hero-copy h1{color:#f23b91;margin:0;font-size:clamp(2.8rem,5.2vw,5rem);font-weight:1000;line-height:.95}.hero-copy h1 span{color:#7d3da3}.hero-copy p{color:#5b316b;max-width:520px;margin:14px auto 0;font-size:1.02rem;font-weight:900;line-height:1.45}.hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:22px;display:flex}.hero-actions button{color:#fff;background:#f23b91;padding:13px 22px;font-size:.95rem;box-shadow:0 10px 20px #f23b912e}.hero-actions .secondary{color:#f23b91;box-shadow:none;background:#fff;border:2px solid #f23b91}.hero-dots{justify-content:center;gap:8px;margin-top:18px;display:flex}.hero-dots button{background:#f23b9159;border:none;border-radius:999px;width:11px;height:11px;padding:0}.hero-dots button.active{background:#f23b91;width:28px}.hero-book-card{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center;background:#ffffffe0;border-radius:28px;padding:18px;position:relative;box-shadow:0 20px 40px #d154912e}.hero-book-card img{border-radius:16px;width:100%;max-width:220px;margin:0 auto;transition:transform .3s;display:block}.hero-book-card img:hover{transform:rotate(1deg)scale(1.03)}.hero-book-card h3{color:#5b316b;margin:14px 0 6px;font-size:1.05rem}.hero-book-card p{color:#5b316b;margin:0 0 14px;font-weight:800}.hero-book-card button{color:#fff;background:#f23b91;width:100%;padding:12px 18px}.book-badge{color:#fff;background:#f23b91;border-radius:999px;place-items:center;width:76px;height:76px;font-size:.78rem;font-weight:1000;line-height:1.1;display:grid;position:absolute;top:-16px;left:-14px}.trust-strip{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;display:grid}.trust-strip div{text-align:center;color:#6c437d;background:#fff;border-radius:18px;padding:14px;font-weight:900;box-shadow:0 10px 20px #d1549114}.home-section-heading{text-align:center;margin-top:30px}.home-section-heading h2{color:#7d3da3;margin:0;font-size:clamp(28px,4vw,44px)}.home-section-heading p{color:#5b316b;margin:8px 0 0;font-weight:800}.home-link-strip{background:#fff0dd;border-radius:30px;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:18px;padding:24px;display:grid}.home-link-strip article{border-radius:20px;grid-template-columns:auto 1fr;align-items:center;column-gap:14px;padding:12px;transition:transform .2s,background .2s;display:grid}.home-link-strip article:hover{background:#ffffff8c;transform:translateY(-4px)}.home-link-strip span{grid-row:span 3;font-size:42px}.home-link-strip h3{color:#f23b91;margin:0}.home-link-strip p{color:#5b316b;margin:4px 0;font-weight:700}.home-link-strip button{color:#f23b91;background:0 0;border:none;width:fit-content;font-weight:900}@media (width<=1100px){.home-hero-card{grid-template-columns:1fr 1fr;grid-template-areas:"copy book""characters characters";min-height:auto}.hero-copy{grid-area:copy}.hero-book-card{grid-area:book;justify-self:center;max-width:300px}.hero-characters{grid-area:characters;min-height:280px}.hero-ave-img{width:32%;left:18%}.hero-cake-img{width:24%;right:22%}.trust-strip,.home-link-strip{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.home-page{padding:14px}.home-hero-card{text-align:center;border-radius:24px;grid-template-columns:1fr;gap:18px;padding:22px}.hero-copy,.hero-book-card,.hero-characters{grid-area:unset}.hero-copy h1{font-size:clamp(2.4rem,13vw,3.6rem)}.hero-actions{flex-direction:column}.hero-actions button{width:100%}.hero-dots{justify-content:center}.hero-characters{min-height:220px}.hero-ave-img{width:42%;max-height:210px;left:10%}.hero-cake-img{width:32%;max-height:150px;right:10%}.hero-book-card{max-width:320px;margin:0 auto}.trust-strip,.home-link-strip{grid-template-columns:1fr}.home-link-strip{border-radius:24px;padding:20px}}.adventures-page{background:linear-gradient(#fff1fb 0%,#fff8fc 100%);padding:18px}.adventure-hero{background-color:#0000;background-image:linear-gradient(#3c145a47,#3c145a47),url(/assets/backgrounds/arcade-room-bg.png);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:34px;justify-content:center;align-items:center;min-height:280px;display:flex;overflow:hidden;box-shadow:0 18px 40px #d154912e}.adventure-hero-overlay{text-align:center;padding:24px}.adventure-hero h1{color:#fff;text-shadow:0 8px 24px #00000040;margin:0;font-size:clamp(2.5rem,6vw,4.6rem);font-weight:1000}.adventure-hero p{color:#fff;margin-top:10px;font-size:1.05rem;font-weight:900}.adventure-panel{text-align:center;background:linear-gradient(#ffe4f1,#fff8fc);border-radius:32px;margin-top:24px;padding:24px;box-shadow:0 12px 28px #d154911f}.adventure-panel h2{color:#7d3da3;margin:0;font-size:clamp(30px,4vw,48px)}.adventure-panel>p{color:#5b316b;margin:8px 0 24px;font-size:18px;font-weight:800}.game-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.game-card{background:#fff;border-radius:26px;transition:transform .22s,box-shadow .22s;position:relative;overflow:hidden;box-shadow:0 14px 30px #d1549124}.game-card:hover{transform:translateY(-8px)scale(1.02);box-shadow:0 22px 44px #d1549138}.game-badge{z-index:3;color:#fff;background:#f23b91;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:1000;position:absolute;top:12px;left:12px}.game-image-wrap{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:26px 26px 0 0;height:220px;position:relative;overflow:hidden}.game-image-wrap img{z-index:2;object-fit:contain;filter:drop-shadow(0 12px 18px #0000002e);width:74%;max-height:88%;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.game-card-content{text-align:center;padding:18px 16px 20px}.game-card h3{color:#f23b91;margin:0 0 8px;font-size:1.45rem;font-weight:1000}.game-card p{color:#5b316b;min-height:48px;margin:0 0 16px;font-weight:800;line-height:1.35}.game-card button{color:#fff;background:linear-gradient(135deg,#f23b91,#7d3da3);width:100%;padding:12px;font-size:.95rem}.view-all-btn{color:#f23b91;box-shadow:none;background:#fff;border:2px solid #f23b91;margin-top:24px;padding:13px 24px}.game-window-backdrop{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2d14378c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.game-window{background:#fff8fc;border-radius:30px;width:min(1100px,96vw);max-height:92vh;animation:.25s gameWindowPop;position:relative;overflow:auto;box-shadow:0 30px 80px #00000047}.game-window-close{z-index:3;color:#fff;background:#f23b91;border:none;border-radius:999px;width:42px;height:42px;font-size:20px;font-weight:1000;position:absolute;top:14px;right:14px}.game-window-close:hover{transform:scale(1.08)}.cake-matcher{background-color:#0000;background-image:linear-gradient(#fff8fcdb,#fff8fceb),url(/assets/games/cake-matcher-bg.png);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:640px;padding:32px}.cake-game-header,.boba-game-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.cake-game-header h1,.boba-game-header h1{margin:0;font-size:44px}.cake-game-header h1{color:#f23b91}.boba-game-header h1{color:#b765d8}.cake-game-header p,.boba-game-header p{color:#5b316b;margin:0;font-weight:700}.cake-game-actions,.boba-game-actions{color:#5b316b;flex-wrap:wrap;align-items:center;gap:10px;font-weight:900;display:flex}.cake-game-actions button,.boba-game-actions button,.boba-game-over button{color:#fff;border:none;border-radius:999px;padding:10px 18px;font-weight:900}.cake-game-actions button{background:#f23b91}.boba-game-actions button,.boba-game-over button{background:#b765d8}.cake-win{text-align:center;color:#f23b91;background:#fff;border-radius:18px;margin-bottom:18px;padding:14px;font-size:24px;font-weight:900}.cake-grid{grid-template-columns:repeat(4,minmax(90px,1fr));gap:14px;max-width:680px;margin:0 auto;display:grid}.cake-card{aspect-ratio:1;color:#fff;background:#f23b91;border:none;border-radius:22px;font-size:42px;font-weight:900;transition:transform .18s;box-shadow:0 10px 22px #5b316b2e}.cake-card:hover{transform:scale(1.04)}.cake-card.flipped{background:#fff}.cake-card img{object-fit:contain;width:82%;height:82%}.boba-catch{background-color:#0000;background-image:linear-gradient(#fff8fcd1,#fff8fce0),url(/assets/games/boba-catch-bg.png);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:640px;padding:32px}.boba-stage{background-color:#0000;background-image:linear-gradient(#ffffff2e,#ffffff47),url(/assets/games/boba-catch-bg.png);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:5px solid #fff;border-radius:28px;width:min(720px,100%);height:520px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 16px 35px #5b316b33}.falling-boba{background:radial-gradient(circle at 30% 30%,#fff0d5 0 10%,#7b3f25 35%,#3a1d12 100%);border-radius:50%;width:38px;height:38px;position:absolute}.boba-player{z-index:5;background-image:url(/assets/characters/boba/boba-sprite-sheet.png);background-repeat:no-repeat;background-size:500% 200%;width:120px;height:120px;position:absolute;bottom:14px}.boba-game-over{text-align:center;color:#5b316b;background:#fff8fce0;place-content:center;display:grid;position:absolute;inset:0}.boba-game-over h2{color:#f23b91;margin:0;font-size:48px}.rainbow-run-game{text-align:center;background:linear-gradient(#b9f3ff 0%,#ffe3f6 100%);width:100%;min-height:100%;padding:24px}.rainbow-run-title{color:#7c3aed;margin:0 0 8px;font-size:2.4rem;font-weight:900}.rainbow-run-help,.rainbow-run-credit{color:#6d28d9;font-weight:800}.rainbow-run-hud{background:#ffffffd1;border-radius:22px;justify-content:space-between;align-items:center;max-width:900px;margin:0 auto 16px;padding:12px 18px;display:flex;box-shadow:0 12px 30px #7c3aed2e}.rainbow-run-button{color:#fff;background:#a855f7;border:none;border-radius:16px;padding:10px 18px;font-weight:900}.rainbow-run-canvas{border:5px solid #fff;border-radius:28px;width:100%;max-width:900px;margin:0 auto;display:block;box-shadow:0 18px 45px #7c3aed40}.rainbow-run-message{margin-top:16px;font-size:1.5rem;font-weight:900}.rainbow-run-message.win{color:#16a34a}.rainbow-run-message.lost{color:#ef4444}@keyframes gameWindowPop{0%{opacity:0;transform:scale(.94)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=1000px){.game-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.adventures-page{padding:14px}.adventure-hero,.adventure-panel{border-radius:24px}.adventure-panel{padding:18px}.adventure-hero{min-height:220px}.game-grid{grid-template-columns:1fr}.game-image-wrap{height:210px}.cake-game-header,.boba-game-header{text-align:center;flex-direction:column}.cake-grid{grid-template-columns:repeat(3,1fr)}.boba-stage{height:440px}.game-window{width:96vw}}.books-page{background:radial-gradient(circle at 15% 15%,#ffdc8c73,#0000 28%),radial-gradient(circle at 85% 20%,#93c5fd73,#0000 28%),linear-gradient(#fff8e8 0%,#eef9ff 100%);min-height:100vh;padding:48px 24px;position:relative;overflow:hidden}.books-panel{z-index:1;text-align:center;max-width:1180px;margin:0 auto;position:relative}.books-panel h1{color:#7c3aed;margin:0;font-size:clamp(2.4rem,6vw,4.5rem);font-weight:1000}.books-panel>p{color:#6d28d9;margin:10px 0 30px;font-weight:800}.books-floaters span{opacity:.45;font-size:2rem;animation:12s ease-in-out infinite floatBooks;position:absolute}.books-floaters span:first-child{top:16%;left:8%}.books-floaters span:nth-child(2){top:18%;left:82%}.books-floaters span:nth-child(3){top:78%;left:18%}.books-floaters span:nth-child(4){top:74%;left:74%}.books-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.book-card{background:#ffffffd1;border:4px solid #fff;border-radius:28px;padding:16px;box-shadow:0 18px 45px #7c3aed26}.book-cover-wrap{background:linear-gradient(180deg, white, var(--book-colour));border-radius:22px;place-items:center;height:320px;display:grid;overflow:hidden}.book-cover-wrap img{object-fit:contain;border-radius:18px;max-width:92%;max-height:96%}.book-card h3{color:#3b2a4a;margin:14px 0 8px;font-size:1.4rem}.book-card p{color:#4b3b5f;min-height:72px}.book-card button{background:linear-gradient(135deg, var(--book-colour), #7c3aed);color:#fff;padding:10px 18px}.book-modal-backdrop{z-index:999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#3b2a4a80;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.book-modal{background:#fff;border:6px solid #fff;border-radius:32px;width:min(980px,96vw);max-height:92vh;padding:24px;position:relative;overflow-y:auto;box-shadow:0 30px 90px #00000040}.book-close{color:#fff;cursor:pointer;background:#3b2a4a;border:0;border-radius:999px;width:40px;height:40px;transition:transform .2s;position:absolute;top:14px;right:14px}.book-close:hover{transform:scale(1.08)}.book-modal-topline{text-align:left;grid-template-columns:120px 1fr;align-items:center;gap:18px;margin-bottom:18px;display:grid}.book-cover-mini{width:120px}.book-cover-mini img{border-radius:14px;width:100%;box-shadow:0 10px 22px #3b2a4a2e}.book-label{color:#fff;background:#7c3aed;border-radius:999px;padding:8px 12px;font-weight:900;display:inline-block}.book-modal-info h2{color:#3b2a4a;margin:12px 0;font-size:2.4rem;line-height:1}.book-modal-info p{color:#4b3b5f;line-height:1.6}.book-preview-pages,.book-preview-pages.featured{grid-template-columns:repeat(2,1fr);gap:14px;margin:18px 0;display:grid}.book-preview-pages img{cursor:pointer;border-radius:18px;width:100%;transition:transform .28s,box-shadow .28s;box-shadow:0 12px 24px #3b2a4a2e}.book-preview-pages img:hover{transform:translateY(-6px)scale(1.02);box-shadow:0 18px 38px #3b2a4a38}.book-page-turn-modal{width:min(900px,96vw)}.book-page-stage{perspective:1200px;place-items:center;margin:22px auto 16px;display:grid;position:relative}.book-page-frame{background:linear-gradient(135deg, #fffffff2, #fff1fbe6), var(--book-colour);border:5px solid #fff;border-radius:26px;place-items:center;width:min(520px,82vw);min-height:420px;padding:14px;display:grid;box-shadow:0 22px 55px #3b2a4a38,inset 0 0 0 2px #ffffffb3}.book-preview-page-active{object-fit:contain;transform-origin:0;border-radius:18px;width:100%;max-height:620px;animation:.42s both bookPageTurn;box-shadow:0 16px 34px #3b2a4a2e}.book-page-arrow{z-index:5;color:#fff;cursor:pointer;background:#3b2a4ae6;border:0;border-radius:999px;width:48px;height:48px;font-size:2.4rem;line-height:1;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 10px 22px #3b2a4a38}.book-page-arrow.left{left:max(8px,50% - 330px)}.book-page-arrow.right{right:max(8px,50% - 330px)}.book-page-controls{color:#5b476f;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:10px 0 18px;font-weight:900;display:flex}.book-page-controls button{color:#7c3aed;cursor:pointer;background:#fff;border:0;border-radius:999px;padding:9px 15px;font-weight:1000;box-shadow:0 8px 18px #7c3aed24}.characters-page{background:radial-gradient(circle at 10% 10%,#ff8fd88c,#0000 28%),radial-gradient(circle at 90% 20%,#81dcff8c,#0000 30%),radial-gradient(circle at 50% 90%,#ffe66d73,#0000 35%),linear-gradient(#fff1fb 0%,#e2f8ff 100%);min-height:100vh;padding:34px 18px 100px;position:relative;overflow:visible}.floating-bg{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.floating-bg span{opacity:.4;font-size:2rem;animation:14s ease-in-out infinite floatAround;position:absolute}.floating-bg span:first-child{top:20%;left:6%}.floating-bg span:nth-child(2){animation-delay:2s;top:72%;left:20%}.floating-bg span:nth-child(3){animation-delay:4s;top:16%;left:44%}.floating-bg span:nth-child(4){animation-delay:1s;top:68%;left:70%}.floating-bg span:nth-child(5){animation-delay:3s;top:24%;left:84%}.floating-bg span:nth-child(6){animation-delay:5s;top:78%;left:92%}.characters-panel{z-index:1;text-align:center;max-width:1180px;margin:0 auto;position:relative}.characters-panel h1{color:#7c3aed;letter-spacing:-.04em;text-shadow:0 5px #ffffffe6;margin:0;font-size:clamp(2rem,5vw,3.6rem);font-weight:1000}.characters-panel>p{color:#6d28d9;margin:8px 0 24px;font-weight:900}.characters-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:stretch;gap:22px;display:grid}.character-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;background:#ffffffc2;border:5px solid #fffffff2;border-radius:24px;flex-direction:column;height:100%;padding:14px;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 50px #7c3aed2e}.character-card:hover{transform:translateY(-10px)scale(1.03)rotate(-1deg);box-shadow:0 30px 70px #7c3aed47}.character-card:before{content:"✦";color:var(--character-colour);font-size:1.5rem;position:absolute;top:12px;right:18px}.character-image-wrap{background:radial-gradient(circle at center, white 0%, var(--character-colour) 50%, #7dd3fc 100%);border-radius:20px;place-items:center;height:180px;display:grid;position:relative;overflow:hidden}.character-image-wrap:after{content:"";filter:blur(16px);background:#ffffff47;border-radius:999px;width:120px;height:120px;animation:2.6s ease-in-out infinite characterGlowPulse;position:absolute}.character-image-wrap img{z-index:2;object-fit:contain;filter:drop-shadow(0 14px 12px #3b2a4a42);max-width:88%;max-height:96%;transition:transform .25s;position:relative}.character-card:hover .character-image-wrap img{transform:translateY(-6px)scale(1.08)}.character-card-content{flex-direction:column;flex:1;padding:14px 6px 4px;display:flex}.character-card h3{color:#3b2a4a;margin:0;font-size:1.45rem;font-weight:1000}.character-card span{color:#7c3aed;background:#7c3aed1a;border-radius:999px;margin:8px 0 10px;padding:6px 12px;font-weight:1000;display:inline-block}.character-card p{color:#4b3b5f;min-height:72px;margin:0 0 14px;font-size:.95rem;font-weight:750;line-height:1.45}.character-card button{background:linear-gradient(135deg, var(--character-colour), #7c3aed);color:#fff;margin-top:auto;padding:9px 16px;font-size:.92rem}.character-showcase-backdrop{z-index:999;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#3b2a4a85;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0;overflow-y:auto}.character-showcase{background:radial-gradient(circle at 20% 20%, var(--character-colour), transparent 30%), linear-gradient(135deg, #fffffff5, #fff1fbf0);width:min(900px,96vw);max-height:88vh;box-shadow:0 40px 120px #00000052, 0 0 60px var(--character-colour);border:7px solid #fff;border-radius:32px;grid-template-columns:1fr 1fr;grid-template-areas:"info image";gap:22px;padding:26px;animation:.28s characterModalPop;display:grid;position:relative;overflow-y:auto}.showcase-close{z-index:5;color:#fff;cursor:pointer;background:#3b2a4a;border:0;border-radius:999px;width:38px;height:38px;font-weight:1000;position:absolute;top:14px;right:14px}.showcase-info{z-index:2;text-align:left;grid-area:info;position:relative}.showcase-image{background:radial-gradient(circle at center, white 0%, var(--character-colour) 58%, #7dd3fc 100%);border-radius:28px;grid-area:image;place-items:center;height:320px;display:grid}.showcase-image img{object-fit:contain;filter:drop-shadow(0 22px 20px #3b2a4a57);max-width:90%;max-height:300px}.showcase-label,.showcase-age{border-radius:999px;font-weight:1000;display:inline-block}.showcase-label{color:#fff;background:#7c3aed;margin:0 0 10px;padding:8px 14px}.showcase-age{color:#3b2a4a;background:#fff;margin-bottom:14px;padding:10px 14px}.showcase-info h2{color:#3b2a4a;margin:0 0 8px;font-size:clamp(2.4rem,5vw,4rem);font-weight:1000;line-height:.9}.showcase-info h3{color:#7c3aed;margin:0 0 12px;font-size:1.1rem;font-weight:1000}.showcase-info p{color:#4b3b5f;margin-top:0;margin-bottom:14px;font-size:.95rem;font-weight:750;line-height:1.55}.character-likes{flex-wrap:wrap;gap:9px;margin-top:14px;padding-bottom:8px;display:flex}.character-likes span{color:#7c3aed;background:#fff;border-radius:999px;padding:8px 12px;font-size:.9rem;font-weight:1000}.author-page{background:#fff1fb;min-height:100vh;overflow:hidden}.author-hero{align-items:center;min-height:calc(100vh - 92px);padding:64px 7vw;display:flex;position:relative;overflow:hidden}.author-hero-bg{z-index:0;position:absolute;inset:0}.author-hero-bg img{object-fit:cover;object-position:center;filter:saturate(1.18)brightness(.88);width:100%;height:100%;transform:scale(1.04)}.author-hero-bg:after{content:"";background:radial-gradient(circle at 24%,#ffffffeb,#ffebf9b8 34%,#ff8fd861 62%,#3b2a4a6b 100%),linear-gradient(90deg,#fff1fbf0,#fff1fba6,#ff8fd833);position:absolute;inset:0}.author-content{z-index:3;width:min(1120px,100%);position:relative}.author-kicker{color:#fff;background:#7c3aedeb;border-radius:999px;margin:0 0 12px;padding:9px 16px;font-weight:1000;display:inline-block}.author-content h1{color:#3b2a4a;letter-spacing:-.07em;text-shadow:0 7px #ffffffd9;margin:0 0 20px;font-size:clamp(3rem,8vw,6.4rem);font-weight:1000;line-height:.9}.author-feature-row{grid-template-columns:320px 1fr;align-items:stretch;gap:26px;display:grid}.author-portrait-card,.author-card,.author-detail-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffc;border:4px solid #fffffff2;border-radius:30px;box-shadow:0 24px 60px #7c3aed2e}.author-portrait-card{padding:14px}.author-portrait-frame{background:linear-gradient(#fff,#ffd9f2);border-radius:24px;overflow:hidden}.author-portrait-frame img{object-fit:cover;width:100%;height:320px;display:block}.author-portrait-badge{text-align:center;color:#fff;background:linear-gradient(135deg,#ff8fd8,#7c3aed);border-radius:999px;margin-top:12px;padding:10px 14px;font-weight:1000}.author-card{padding:28px}.author-card h2{color:#7c3aed;margin:0 0 12px;font-size:2rem;font-weight:1000}.author-card p{color:#443055;margin:0 0 14px;font-size:1.04rem;font-weight:750;line-height:1.62}.author-dreams{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.author-dreams span{color:#fff;background:linear-gradient(135deg,#ff8fd8,#7c3aed);border-radius:999px;padding:9px 13px;font-weight:1000}.author-details{background:radial-gradient(circle at 20% 20%,#ff8fd840,#0000 30%),linear-gradient(#fff1fb,#e2f8ff);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;padding:34px 7vw 56px;display:grid}.author-detail-card{padding:24px}.author-detail-card h3{color:#7c3aed;margin:0 0 10px;font-size:1.5rem;font-weight:1000}.author-detail-card p{color:#4b3b5f;margin:0;font-weight:750;line-height:1.55}.shop-page{background:radial-gradient(circle at 12% 18%,#ff8fd847,#0000 28%),radial-gradient(circle at 84% 20%,#38bdf83d,#0000 28%),radial-gradient(circle at 50% 90%,#fbbf242e,#0000 32%),linear-gradient(#fff5fc 0%,#eef9ff 100%);min-height:100vh;padding:48px 24px}.shop-panel{text-align:center;max-width:1180px;margin:0 auto}.shop-kicker{color:#fff;background:linear-gradient(135deg,#ff8fd8,#7c3aed);border-radius:999px;margin:0 0 12px;padding:8px 14px;font-weight:1000;display:inline-block}.shop-panel h1{color:#3b2a4a;margin:0;font-size:clamp(2.6rem,7vw,4.8rem);font-weight:1000;line-height:.95}.shop-subtitle{color:#5b476f;max-width:640px;margin:12px auto 30px;font-size:1.05rem;font-weight:700}.shop-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;display:grid}.shop-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border:4px solid #fffffff2;border-radius:30px;padding:16px;transition:transform .22s,box-shadow .22s;position:relative;overflow:hidden;box-shadow:0 18px 45px #7c3aed1f}.shop-card:hover{transform:translateY(-8px);box-shadow:0 26px 55px #7c3aed2e}.shop-card:before{content:"Available on Amazon";z-index:3;color:#fff;background:#111827;border-radius:999px;padding:7px 12px;font-size:.72rem;font-weight:900;position:absolute;top:14px;left:14px}.shop-cover{background:linear-gradient(180deg, #fff, var(--shop-colour));border-radius:24px;place-items:center;height:320px;padding:12px;display:grid;overflow:hidden}.shop-cover img{object-fit:contain;border-radius:18px;max-width:100%;max-height:100%;transition:transform .25s}.shop-card:hover .shop-cover img{transform:scale(1.04)rotate(-1deg)}.shop-card h3{color:#3b2a4a;margin:16px 0 8px;font-size:1.35rem}.shop-card p{color:#5b476f;min-height:52px;margin:0 0 18px;font-weight:650;line-height:1.5}.shop-button{background:linear-gradient(135deg, var(--shop-colour), #7c3aed);color:#fff;border-radius:999px;padding:12px 18px;font-weight:1000;text-decoration:none;display:inline-block}.shop-button:after{content:" →"}@keyframes floatBooks{0%,to{transform:translateY(0)}50%{transform:translateY(-18px)}}@keyframes floatAround{0%,to{transform:translateY(0)translate(0)rotate(0)}50%{transform:translateY(-28px)translate(18px)rotate(8deg)}}@keyframes characterGlowPulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:.9;transform:scale(1.15)}}@keyframes characterModalPop{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bookPageTurn{0%{opacity:0;filter:blur(2px);transform:rotateY(-18deg)translate(18px)scale(.98)}to{opacity:1;filter:blur();transform:rotateY(0)translate(0)scale(1)}}@media (width<=780px){.books-page,.shop-page{padding:36px 16px}.book-cover-wrap,.shop-cover{height:260px}.book-modal-topline,.author-feature-row{text-align:center;grid-template-columns:1fr}.book-cover-mini{margin:0 auto}.book-preview-pages,.book-preview-pages.featured{grid-template-columns:1fr}.book-page-frame{width:100%;min-height:320px}.book-page-arrow{width:40px;height:40px;font-size:2rem}.book-page-arrow.left{left:4px}.book-page-arrow.right{right:4px}.character-showcase-backdrop{align-items:flex-start;padding:14px}.character-image-wrap{justify-content:center;align-items:center;height:210px;display:flex}.character-image-wrap img{object-position:center center;width:auto;max-width:82%;height:auto;max-height:88%}.character-showcase{border-radius:26px;grid-template-columns:1fr;grid-template-areas:"image""info";gap:16px;width:96vw;max-height:none;padding:18px;overflow:visible}.showcase-image{height:240px}.showcase-image img{max-height:220px}.showcase-info{text-align:center}.character-likes{justify-content:center}.author-hero{align-items:flex-end;min-height:auto;padding:42px 18px}.author-hero-bg img{object-position:center top}.author-hero-bg:after{background:linear-gradient(#fff1fb47,#fff1fbf5 42%,#fff1fb 100%)}.author-content h1{font-size:clamp(2.6rem,15vw,4rem)}.author-card{border-radius:26px;padding:20px}.author-portrait-frame img{height:300px}.shop-card{border-radius:24px}}
