html,body{margin:0;padding:0}*,:before,:after{box-sizing:border-box}:root{--cream-50:#fffdf6;--cream-100:#fff8e7;--cream-200:#fcf1d6;--blush-100:#fce3da;--blush-200:#fbd4cc;--blush-300:#f8c0b6;--coral-400:#f2967a;--coral-500:#e77a5c;--teal-300:#a9d3c8;--teal-500:#5fa697;--teal-600:#468679;--teal-700:#356b60;--mauve-300:#c79aa0;--mauve-500:#8a5860;--mauve-600:#6f434b;--mauve-700:#552f36;--gold-300:#e8c581;--gold-500:#d9a54a;--gold-600:#b8843a;--yellow-400:#f5c94e;--charcoal-700:#3a2e2e;--charcoal-500:#5c4d4d;--white:#fff;--surface-page:var(--cream-100);--surface-card:var(--white);--surface-card-alt:var(--cream-50);--surface-accent:var(--blush-100);--surface-sprinkle:var(--blush-200);--text-heading:var(--mauve-600);--text-heading-alt:var(--teal-600);--text-body:var(--charcoal-700);--text-muted:var(--charcoal-500);--text-on-accent:var(--cream-50);--brand-primary:var(--mauve-600);--brand-secondary:var(--teal-500);--brand-accent:var(--coral-500);--brand-highlight:var(--yellow-400);--border-subtle:var(--blush-200);--border-strong:var(--mauve-300);--focus-ring:var(--teal-500);--font-display:Georgia, "Times New Roman", serif;--font-body:"Trebuchet MS", Arial, sans-serif;--text-display-xl:4.5rem;--text-display-lg:3rem;--text-display-md:2rem;--text-display-sm:1.5rem;--text-eyebrow:.8rem;--text-body-lg:1.15rem;--text-body-md:1rem;--text-body-sm:.875rem;--leading-display:1.05;--leading-body:1.55;--tracking-eyebrow:.14em;--tracking-caps:.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--container-max:1120px;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;--radius-pill:999px;--shadow-card:0 6px 20px #552f3614;--shadow-card-hover:0 10px 28px #552f3624;--shadow-pop:0 2px 0 #552f3659;--scallop-size:22px;--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--duration-fast:.15s;--duration-med:.25s}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);overflow-x:hidden}a{color:inherit}::selection{background:var(--coral-400);color:var(--mauve-700)}@keyframes float-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-9px)rotate(2deg)}}@keyframes marquee{to{transform:translate(-50%)}}.reveal{animation:float-in .7s var(--ease-standard) both}.reveal-delay-1{animation-delay:.12s}.reveal-delay-2{animation-delay:.22s}.reveal-delay-3{animation-delay:.32s}.floaty{animation:5s ease-in-out infinite drift}.story-step{transition:transform .25s var(--ease-bounce), box-shadow .25s var(--ease-standard)}.button-lift{transition:transform var(--duration-fast) var(--ease-standard)!important}.button-lift:hover{transform:translateY(-2px)}.story-step:hover{transform:translateY(-8px)rotate(-1deg);box-shadow:0 18px 35px #552f3624}.class-card{transition:transform .25s var(--ease-bounce), box-shadow .25s var(--ease-standard)}.class-card:hover{transform:translateY(-7px);box-shadow:0 18px 34px #552f3629}.marquee-track{width:max-content;animation:28s linear infinite marquee}.hero-copy{isolation:isolate}.hero-art,.hero-art img{z-index:0}.storybook-scroll{background:var(--cream-100);height:410vh}.storybook-sticky{flex-direction:column;justify-content:center;height:100vh;padding:28px 24px 34px;display:flex;position:sticky;top:0;overflow:hidden}.storybook-topline{width:min(1120px,100%);color:var(--mauve-600);text-transform:uppercase;letter-spacing:.15em;justify-content:space-between;margin:0 auto 18px;font-size:11px;font-weight:700;display:flex}.book-stage{perspective:1800px;width:min(1120px,100%);height:min(68vh,620px);margin:0 auto;position:relative}.book-stage-turning{isolation:isolate;transform-style:preserve-3d}.story-page{backface-visibility:hidden;transform-origin:0;border:1px solid #c79aa059;border-radius:24px;position:absolute;inset:0;overflow:hidden;box-shadow:0 18px 40px #552f361f,inset 0 0 0 12px #fcf1d661}.story-page-under{z-index:1}.story-page-turning{z-index:2;transition:transform 80ms linear}.story-pages-mobile{display:none}.story-page:after{content:"";opacity:.22;pointer-events:none;mix-blend-mode:multiply;background-image:radial-gradient(#6f434b1c .7px,#0000 .7px);background-size:8px 8px;position:absolute;inset:0}.story-page-peach{background:#fce3da}.story-page-cream{background:#fff7df}.story-page-yellow{background:#f8e9b8}.story-page-teal{background:#dff0e9}.story-page-content{height:100%;padding:clamp(34px,6vw,72px);position:relative}.story-copy{z-index:2;max-width:52%;position:relative}.story-copy em{color:var(--coral-500);font-style:normal}.story-copy p{max-width:410px}.story-scene{z-index:1;opacity:.94;mix-blend-mode:multiply;background-image:url(/images/storybook-baker.png);background-position:112% 100%;background-repeat:no-repeat;background-size:190%;position:absolute;inset:0}.scene-read{background-position:8% 100%}.scene-bake{background-position:50% 100%}.scene-create{background-position:92% 100%}.page-number{z-index:3;color:var(--text-muted);letter-spacing:.12em;font-size:12px;font-weight:700;position:absolute;top:27px;right:34px}.page-kicker{color:var(--brand-accent);letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px;font-size:11px;font-weight:700}.story-copy h2{font-family:var(--font-display);letter-spacing:-.04em;z-index:1;max-width:680px;margin:0 0 24px;font-size:clamp(2.7rem,5vw,5.6rem);line-height:.9;position:relative}.story-copy p{color:var(--text-muted);z-index:1;font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.6;position:relative}.page-rule{opacity:.28;border-top:2px solid;width:90px;margin:22px 0}.page-note{color:var(--text-muted);z-index:1;font-size:13px;position:relative}.storybook-progress{background:#6f434b26;width:min(1120px,100%);height:3px;margin:20px auto 0;overflow:hidden}.storybook-progress span{background:var(--coral-500);transform-origin:0;width:100%;height:100%;display:block}.storybook-scroll-cue{text-align:center;color:var(--teal-700);letter-spacing:.06em;text-transform:uppercase;margin-top:14px;font-size:12px;font-weight:700}.storybook-scroll-cue span{padding-left:7px;font-size:18px}.storybook-classes{background:#dff0e9;padding:100px 24px 110px}.storybook-classes-inner{max-width:var(--container-max);margin:0 auto}.storybook-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:40px;display:flex}.storybook-section-heading h2{font-family:var(--font-display);color:var(--teal-700);margin:0;font-size:clamp(2.5rem,4vw,4rem);line-height:.98}.storybook-section-heading>a{color:var(--teal-700);font-weight:700}.class-shelf{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.class-card{background:var(--cream-50);border:1px solid #552f360f;border-radius:26px;flex-direction:column;justify-content:space-between;min-height:255px;padding:28px;display:flex;box-shadow:0 7px #552f3614}.class-card-meta,.class-card-bottom{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex}.class-card-meta{margin-bottom:30px}.class-card-title{font-family:var(--font-display);color:var(--mauve-700);margin-bottom:12px;font-size:25px;line-height:1.05}.class-card p{color:var(--text-muted);margin:0;line-height:1.5}.class-card-date{color:var(--teal-700);margin-top:15px;font-size:14px;font-weight:700}.class-card-bottom{gap:10px;margin-top:20px}.class-card-bottom>a{color:var(--teal-700);white-space:nowrap;text-decoration:none}.class-badges{gap:8px;display:flex}.storybook-end{background:var(--mauve-700);color:var(--cream-50);text-align:center;padding:100px 24px;position:relative;overflow:hidden}.storybook-end:before{content:"";opacity:.11;background-image:radial-gradient(var(--gold-300) 1px, transparent 1px);background-size:18px 18px;position:absolute;inset:0}.storybook-end-inner{position:relative}.end-star{color:var(--gold-300);margin-bottom:20px;font-size:38px}.storybook-end h2{font-family:var(--font-display);margin:0;font-size:clamp(2.8rem,5vw,5rem);line-height:.95}.storybook-end p{color:var(--cream-100);max-width:480px;margin:24px auto 30px;line-height:1.6}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:760px){.hero-grid{grid-template-columns:1fr!important}.hero-copy{text-align:center;padding:64px 24px 30px!important}.hero-copy p{margin-left:auto;margin-right:auto}.hero-art{margin:0 18px 18px;border-radius:28px!important;min-height:330px!important}.hero-art img{object-position:58% center!important}.nav-links{display:none!important}.process-grid{grid-template-columns:1fr!important}.process-grid:before{display:none}.storybook-scroll{height:auto}.storybook-sticky{height:auto;padding:70px 18px;position:relative}.storybook-topline{padding:0 6px}.book-stage-turning{perspective:none;height:auto;min-height:860px}.story-page{border-radius:22px;height:410px;min-height:410px;margin-bottom:16px;position:relative;inset:auto;transform:none!important}.story-page-turning{display:none}.story-page-under,.story-pages-mobile,.story-pages-mobile .story-page{display:block}.book-stage-turning>.story-page-under,.book-stage-turning>.story-page-turning{display:none}.story-page-content{padding:34px 28px}.story-copy{max-width:100%}.story-scene{opacity:.45;background-position:50% 100%;background-size:165%}.storybook-scroll-cue,.storybook-progress{display:none}}.scalloped-edge{--_s:var(--scallop-size);mask-image:radial-gradient(circle at 50% 0, transparent calc(var(--_s) - 1px), #000 var(--_s));mask-size:calc(var(--_s) * 2) var(--_s);mask-position:0 0;mask-repeat:repeat-x;-webkit-mask-image:radial-gradient(circle at 50% 0, transparent calc(var(--_s) - 1px), #000 var(--_s));-webkit-mask-size:calc(var(--_s) * 2) var(--_s);-webkit-mask-position:0 0;-webkit-mask-repeat:repeat-x}.sprinkle-strip{background-image:linear-gradient(115deg, transparent 45%, var(--coral-500) 45%, var(--coral-500) 55%, transparent 55%), linear-gradient(115deg, transparent 45%, var(--teal-500) 45%, var(--teal-500) 55%, transparent 55%), linear-gradient(115deg, transparent 45%, var(--yellow-400) 45%, var(--yellow-400) 55%, transparent 55%), linear-gradient(115deg, transparent 45%, var(--cream-50) 45%, var(--cream-50) 55%, transparent 55%);background-position:0 0,17px 9px,8px 20px,25px 4px;background-repeat:repeat;background-size:34px 34px}.container{max-width:var(--container-max);margin:0 auto;padding:0 24px}
