:root{--navy:#232838;--blue:#1e6ebe;--orange:#f06e2d;--green:#55a04b;--purple:#7850aa;--ink:var(--navy);--muted:#5b6172;--cream:#fbf6ef;--blue-tint:#eef5fc;--line:#e7e4de;--radius:18px;--shadow:0 10px 30px #2328381a;--container:1100px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6}img{max-width:100%;height:auto;display:block}h1,h2,h3{color:var(--navy);margin:0 0 .5em;font-weight:700;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(2.1rem,5.5vw,3.4rem);font-weight:800}p{margin:0 0 1em}a{color:var(--blue)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}.container{max-width:var(--container);margin:0 auto;padding:0 20px}.skip-link{background:var(--navy);color:#fff;z-index:100;border-radius:0 0 10px;padding:10px 18px;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.btn{text-align:center;border:2px solid #0000;border-radius:999px;padding:12px 26px;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .12s,box-shadow .12s,background-color .12s;display:inline-block}.btn:hover{transform:translateY(-2px)}.btn-accent{background:var(--orange);color:#fff}.btn-accent:hover{background:#d95f24;box-shadow:0 6px 16px #f06e2d59}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:#185c9f;box-shadow:0 6px 16px #1e6ebe59}.btn-outline{border-color:var(--blue);color:var(--blue);background:0 0}.btn-outline:hover{background:var(--blue-tint)}.btn-disabled{color:var(--muted);cursor:default;background:#eceae6}.btn-disabled:hover{transform:none}.btn-large{padding:14px 32px;font-size:1.05rem}.btn-small{padding:8px 18px;font-size:.92rem}.site-header{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:16px;padding-top:14px;padding-bottom:14px;display:flex}.brand{color:var(--navy);letter-spacing:-.01em;align-items:center;font-size:1.3rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-logo{width:auto;height:44px}.brand-accent{color:var(--orange)}.site-header nav{align-items:center;gap:22px;display:flex}.nav-link{color:var(--navy);font-size:.98rem;font-weight:500;text-decoration:none}.nav-link:hover{color:var(--blue)}.hero{background:var(--cream);overflow:hidden}.hero-inner{grid-template-columns:1.05fr 1fr;align-items:center;gap:48px;padding-top:64px;padding-bottom:64px;display:grid}.eyebrow{background:var(--blue-tint);color:var(--blue);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-bottom:18px;padding:6px 14px;font-size:.85rem;font-weight:600;display:inline-block}.h1-accent{color:var(--orange)}.hero-tagline{color:var(--muted);max-width:34em;margin-bottom:28px;font-size:1.15rem}.hero-ctas{flex-wrap:wrap;gap:14px;display:flex}.hero-art img{border-radius:var(--radius);box-shadow:var(--shadow)}.steps{padding:56px 0 8px}.steps-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin:0;padding:0;list-style:none;display:grid}.step-card{border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:26px 24px 18px}.step-card h2{margin:0 0 .35em;font-size:1.25rem}.step-card p{color:var(--muted);margin:0;font-size:.97rem}.step-num{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:14px;font-size:1.15rem;font-weight:700;display:inline-grid}.peek{padding:64px 0 8px}.peek-inner{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}.peek-copy .section-title{text-align:left}.peek-copy p{color:var(--muted);margin-bottom:26px;font-size:1.05rem}.peek-figure{justify-content:center;display:flex}.peek-spread{gap:18px;text-decoration:none;transition:transform .15s;display:flex}.peek-spread:hover{transform:translateY(-4px)}.peek-page{border:1px solid var(--line);max-width:220px;box-shadow:var(--shadow);transform:rotate(var(--rot,0deg));background:#fff;border-radius:12px;flex:1 1 0;margin:0;padding:12px 12px 8px;transition:transform .15s,box-shadow .15s}.peek-page:hover{transform:rotate(0)translateY(-2px);box-shadow:0 16px 40px #23283829}.peek-page img{border-radius:6px;width:100%}.peek-page-label{text-align:center;color:var(--muted);margin-top:8px;font-size:.9rem;font-weight:600;display:block}.peek-placeholder{aspect-ratio:5/6;border:2px dashed var(--line);text-align:center;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;display:flex}.peek-placeholder-line{color:var(--navy);font-size:1.05rem;font-weight:700}.peek-placeholder-note{color:var(--muted);font-size:.85rem}.books{padding:72px 0}.section-title{text-align:center;font-size:clamp(1.6rem,3.5vw,2.2rem)}.section-sub{text-align:center;color:var(--muted);max-width:40em;margin:0 auto 40px}.books-grid{grid-template-columns:repeat(4,1fr);gap:22px;display:grid}.book-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;flex-direction:column;display:flex;overflow:hidden}.book-cover{aspect-ratio:4/5;background:color-mix(in srgb, var(--accent) 10%, #fff);border-bottom:4px solid var(--accent)}.book-cover img{object-fit:contain;width:100%;height:100%}.cover-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;height:100%;padding:16px;display:flex}.cover-placeholder-title{color:var(--accent);font-size:1.15rem;font-weight:700}.cover-placeholder-note{color:var(--muted);font-size:.8rem}.book-body{flex-direction:column;flex:1;padding:20px;display:flex}.book-body h3{margin-bottom:.3em;font-size:1.15rem}.book-body p{color:var(--muted);flex:1;font-size:.93rem}.book-body .btn{padding:10px 18px;font-size:.92rem}.books-series-cta{text-align:center;margin-top:36px}.about{background:var(--blue-tint);padding:72px 0}.about-inner{grid-template-columns:1fr 1.15fr;align-items:center;gap:48px;display:grid}.about-art img{border-radius:var(--radius);box-shadow:var(--shadow)}.about .section-title{text-align:left}.about-copy p{color:var(--muted);font-size:1.02rem}.cta-band{background:var(--navy);color:#fff;padding:64px 0}.cta-inner{text-align:center}.cta-band h2{color:#fff;font-size:clamp(1.5rem,3vw,2rem)}.cta-band p{color:#c9cddb;margin-bottom:26px}.page-hero{background:var(--cream);text-align:center;padding:72px 0 56px}.page-hero .hero-tagline{margin-left:auto;margin-right:auto}.coming-soon{padding-bottom:96px}.page-hero .hero-ctas{justify-content:center}.play{padding:48px 0 72px}.play-inner{text-align:center}.play-sentence{color:var(--muted);max-width:32em;margin:0 auto 8px;font-size:1.15rem}.play-sentence strong{color:var(--orange)}.play-step{margin-top:36px}.play-step-title{justify-content:center;align-items:center;gap:12px;margin-bottom:18px;font-size:1.3rem;display:flex}.play-step-num{background:var(--purple);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:1.05rem;font-weight:700;display:inline-grid}.trace{max-width:640px;margin:0 auto}.trace-canvas{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:640px;height:auto;box-shadow:var(--shadow);cursor:crosshair;touch-action:none;margin:0 auto;display:block}.trace-foot{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:16px;display:flex}.trace-hint{color:var(--muted);margin:0}.trace-win{color:var(--green);margin:0;font-size:1.15rem;font-weight:600;animation:.4s pop}.trace-win strong{color:var(--orange)}@keyframes pop{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.trace-win{animation:none}}.play-stage{justify-content:center;display:flex}.coloring-canvas{border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:500px;height:auto;box-shadow:var(--shadow);cursor:crosshair;touch-action:none;background:#fff;display:block}.palette{flex-wrap:wrap;justify-content:center;gap:12px;max-width:500px;margin:22px auto 0;display:flex}.swatch{width:46px;height:46px;box-shadow:0 0 0 1px var(--line), 0 2px 6px #2328382e;cursor:pointer;border:3px solid #fff;border-radius:50%;padding:0;transition:transform .1s,box-shadow .1s}.swatch:hover{transform:scale(1.08)}.swatch.is-selected{box-shadow:0 0 0 3px var(--navy), 0 2px 8px #2328384d;transform:scale(1.12)}.play-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px;display:flex}.race-overlay{z-index:200;background:linear-gradient(#bfe3ff 0%,#e9f6ff 70%,#f4fbff 100%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.race-close{z-index:3;width:44px;height:44px;color:var(--navy);cursor:pointer;background:#ffffffd9;border:none;border-radius:50%;font-size:1.1rem;position:absolute;top:16px;right:16px;box-shadow:0 2px 8px #23283833}.race-scene{position:absolute;inset:0;overflow:hidden}.race-road{background:linear-gradient(#cfd6df,#aeb7c4);border-top:4px dashed #fff;height:22%;position:absolute;bottom:0;left:0;right:0}.race-truck-pos{z-index:2;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.race-truck{background:#fff;border-radius:16px;width:min(72vw,340px);padding:8px;animation:2s cubic-bezier(.5,0,.9,.45) forwards race;display:block;box-shadow:0 12px 30px #23283840}.race-truck.no-anim{animation:none}@keyframes race{0%{transform:translate(0)scale(1)rotate(0)}8%{transform:translate(-9px)rotate(-2deg)}16%{transform:translate(7px)rotate(2deg)}24%{transform:translate(-5px)rotate(-1deg)scale(1.04)}32%{transform:translate(0)scale(1.08)rotate(0)}to{transform:translate(135vw)scale(.62)rotate(-7deg)}}.speed-lines{z-index:1;opacity:0;background-image:repeating-linear-gradient(#0000 0 46px,#ffffffd9 46px 52px);position:absolute;inset:0}.speed-lines.is-racing{animation:.35s linear .55s 4 streak}@keyframes streak{0%{opacity:.9;transform:translate(60%)}to{opacity:.9;transform:translate(-60%)}}.race-vroom{z-index:2;color:var(--orange);-webkit-text-stroke:3px #fff;paint-order:stroke fill;opacity:0;font-family:Poppins,sans-serif;font-size:clamp(2rem,8vw,4rem);font-weight:800;position:absolute;top:34%;left:18%;transform:rotate(-8deg)}.race-vroom.is-racing{animation:1s ease-out .5s vroom}@keyframes vroom{0%{opacity:0;transform:rotate(-8deg)scale(.6)}30%{opacity:1;transform:rotate(-8deg)scale(1.1)}70%{opacity:1;transform:rotate(-8deg)scale(1)}to{opacity:0;transform:rotate(-8deg)scale(1)translate(-30px)}}.race-done{z-index:3;text-align:center;border-radius:var(--radius);box-shadow:var(--shadow);background:#fffffff0;padding:28px 32px;animation:.4s pop;position:relative}.race-done-title{color:var(--navy);margin:0 0 .2em;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:800}.race-done-sub{color:var(--muted);margin:0 0 1.2em}.race-done-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}@media (prefers-reduced-motion:reduce){.race-truck,.speed-lines.is-racing,.race-vroom.is-racing,.race-done{animation:none}.race-vroom.is-racing{opacity:1}}.resources{padding:56px 0}.resource-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;display:grid}.resource-card{border:1px solid var(--line);border-top:5px solid var(--accent);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;flex-direction:column;align-items:flex-start;padding:24px;display:flex}.resource-card h2{margin:0 0 .4em;font-size:1.15rem}.resource-card p{color:var(--muted);flex:1;font-size:.95rem}.resource-badge{background:color-mix(in srgb, var(--accent) 12%, #fff);color:var(--accent);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;margin-bottom:14px;padding:4px 12px;font-size:.78rem;font-weight:600;display:inline-block}.resource-card .btn{padding:10px 20px;font-size:.92rem}.newsletter{background:var(--blue-tint);padding:64px 0}.newsletter-inner{text-align:center;max-width:620px}.newsletter h2{font-size:clamp(1.4rem,3vw,1.8rem)}.newsletter p{color:var(--muted)}.newsletter-placeholder{border:1px dashed var(--blue);border-radius:var(--radius);color:var(--navy);background:#fff;padding:22px;font-weight:500}.site-footer{background:var(--navy);color:#fff;padding:40px 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-logo-link{background:#fff;border-radius:12px;padding:10px 16px;line-height:0;display:inline-flex}.footer-logo{width:auto;height:40px}.footer-link{color:#c9cddb;margin-right:18px;font-size:.95rem;text-decoration:none}.footer-link:hover{color:#fff}.footer-copy{color:#8a90a5;margin:0;font-size:.85rem}@media (width<=900px){.hero-inner{grid-template-columns:1fr;gap:32px;padding-top:44px;padding-bottom:44px}.books-grid{grid-template-columns:repeat(2,1fr)}.about-inner,.peek-inner{grid-template-columns:1fr;gap:28px}.peek-figure{order:-1}}@media (width<=560px){.steps-grid,.books-grid{grid-template-columns:1fr}.nav-link{display:none}.hero-ctas .btn{flex:1;min-width:150px}.footer-inner{text-align:center;flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.btn:hover{transition:none;transform:none}}
