:root{--parchment:#FBF4E4;--parchment-warm:#FCE3C4;--parchment-deep:#F5D08A;--terracotta:#D97757;--terracotta-dark:#B85A3D;--olive:#8A9A5B;--olive-dark:#6B7A42;--olive-light:#A4B97C;--mustard:#E4B44C;--indigo:#2E3A59;--indigo-deep:#1A2540;--sky:#A8D5E2;--dusk:#6B5B8A;--rose:#E8A8A0;--skin-warm:#C49A6C;--robe-shadow:#B85A3D;--robe-deep:#5E3A24;--shadow-clay:0 20px 40px -12px rgba(46,58,89,0.18),0 8px 16px -6px rgba(46,58,89,0.1);--ease-squish:cubic-bezier(0.34,1.56,0.64,1);--ease-soft:cubic-bezier(0.25,0.46,0.45,0.94)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito,system-ui,sans-serif;color:var(--indigo);line-height:1.6;overflow-x:hidden;background-attachment:fixed}.display,body{font-weight:600}.display{font-family:Fraunces,Georgia,serif;letter-spacing:-.01em;line-height:1.1}.italic{font-family:Fraunces,serif;font-style:italic;font-weight:500}.topbar{position:fixed;top:0;left:0;right:0;z-index:50;padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;pointer-events:none}.topbar>*{pointer-events:auto}.top-btn{width:44px;height:44px;min-width:44px;min-height:44px;flex-shrink:0;border-radius:50%;background:rgba(251,244,228,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(46,58,89,.15);transition:transform .3s var(--ease-squish),background .3s ease;color:var(--indigo)}.top-btn:hover{transform:scale(1.08);background:var(--parchment)}.top-btn:active{transform:scale(.94)}.top-btn svg{width:18px;height:18px}.top-btn.muted{opacity:.55;position:relative}.top-btn.muted:after{content:"";position:absolute;width:22px;height:2px;background:var(--indigo);transform:rotate(-45deg);border-radius:2px}.top-btn.audio-on{background:rgba(217,119,87,.18);color:var(--terracotta,#D97757);position:relative}.top-btn.audio-on:after{content:"";position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--terracotta,#D97757);box-shadow:0 0 0 2px rgba(251,244,228,.85)}.top-btn.audio-speaking{background:var(--terracotta,#D97757);color:#fff;position:relative;box-shadow:0 4px 14px rgba(217,119,87,.35)}.top-btn.audio-speaking:after,.top-btn.audio-speaking:before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--terracotta,#d97757);pointer-events:none}.top-btn.audio-speaking:before{animation:tb-wave 1.6s ease-out infinite}.top-btn.audio-speaking:after{animation:tb-wave 1.6s ease-out -.8s infinite}@keyframes tb-wave{0%{transform:scale(1);opacity:.55}80%{transform:scale(1.55);opacity:0}to{transform:scale(1.55);opacity:0}}@media (prefers-reduced-motion:reduce){.top-btn.audio-speaking:after,.top-btn.audio-speaking:before{animation:none}}.top-right{display:flex;gap:.625rem}.progress-dots{flex:1 1;max-width:280px;display:flex;align-items:center;justify-content:center;gap:6px;padding:.5rem .875rem;background:rgba(251,244,228,.7);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:999px;box-shadow:0 2px 8px rgba(46,58,89,.1)}.dot{width:6px;height:6px;border-radius:50%;background:rgba(46,58,89,.25);transition:all .4s var(--ease-squish)}.dot.active{background:var(--terracotta);width:24px;border-radius:999px}.dot.done{background:rgba(217,119,87,.5)}.scene-counter{font-family:var(--font-body);font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--ink-soft);margin-right:6px;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.scene{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 1.25rem 2rem;overflow:hidden}.scene-art{width:100%;max-width:720px;aspect-ratio:4/3;margin-bottom:1.5rem;opacity:0;transform:translateY(40px) scale(.96);transition:opacity 1.2s var(--ease-soft),transform 1.2s var(--ease-soft)}.scene.active .scene-art{opacity:1;transform:translateY(0) scale(1)}.scene-art svg{width:100%;height:100%;display:block;filter:drop-shadow(0 30px 50px rgba(46,58,89,.18))}.caption-card{max-width:580px;padding:1.5rem 1.875rem;background:rgba(251,244,228,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:24px;text-align:center;box-shadow:var(--shadow-clay);opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-soft) .4s,transform .9s var(--ease-soft) .4s}.scene.active .caption-card{opacity:1;transform:translateY(0)}.caption{font-family:Fraunces,serif;font-weight:500;font-style:italic;font-size:clamp(1.25rem,2.6vw,1.75rem);line-height:1.4;color:var(--indigo)}.caption .pop{font-style:normal;font-weight:700;color:var(--terracotta-dark)}.scene.dark .caption-card{background:rgba(46,58,89,.85)}.scene.dark .caption{color:#FFFDF6}.scene.dark .caption .pop{color:var(--mustard)}.scene-label{position:absolute;top:5.25rem;left:50%;transform:translateX(-50%);font-size:.7rem;font-weight:800;letter-spacing:.25em;text-transform:uppercase;opacity:.45;color:var(--indigo)}.scene.dark .scene-label{color:#FBF4E4}.title-scene{padding-top:6rem}.title-art{width:100%;max-width:800px;aspect-ratio:4/3;margin-bottom:2rem;animation:titleArtIn 1.4s var(--ease-soft) both .2s}.title-art svg{width:100%;height:100%}.title-block{text-align:center;animation:titleTextIn 1s var(--ease-soft) both .6s}.title-eyebrow{display:inline-block;padding:.4rem 1rem;background:rgba(217,119,87,.15);color:var(--terracotta-dark);border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;margin-bottom:1rem}.title-main{font-size:clamp(3rem,8vw,5.5rem);color:var(--indigo);margin-bottom:.5rem}.title-ref{font-family:Fraunces,serif;font-style:italic;color:var(--olive-dark);font-size:1.0625rem;margin-bottom:2rem}.begin-cue{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;background:var(--indigo);color:var(--parchment);border-radius:999px;font-size:.85rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 8px 20px -4px rgba(46,58,89,.4);animation:bob 2.2s ease-in-out infinite}.begin-cue svg{width:14px;height:14px;animation:nudge 1.4s ease-in-out infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes nudge{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@keyframes titleArtIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes titleTextIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.float{animation:float 7s ease-in-out infinite;transform-origin:center}.float-2{animation:float 9s ease-in-out -2s infinite}.float-3{animation:float 8s ease-in-out -4s infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.breathe{animation:breathe 4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.sway{animation:sway 5s ease-in-out infinite;transform-origin:bottom center;transform-box:fill-box}@keyframes sway{0%,to{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg)}}.shake-cold{animation:shake-cold 2.4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes shake-cold{0%,to{transform:translateX(0)}25%{transform:translateX(-1px)}75%{transform:translateX(1px)}}.lantern-flicker{animation:flicker 1.8s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes flicker{0%,to{opacity:.95;transform:scale(1)}20%{opacity:1;transform:scale(1.05)}40%{opacity:.85;transform:scale(.98)}60%{opacity:1;transform:scale(1.03)}}.interaction-prompt{margin-top:1rem;padding:.875rem 1.625rem;background:var(--mustard);color:var(--indigo);border:none;border-radius:999px;font-family:Nunito,sans-serif;font-weight:800;font-size:1rem;cursor:pointer;box-shadow:0 12px 24px -6px rgba(228,180,76,.5),inset 0 -3px 0 rgba(0,0,0,.12),inset 0 2px 0 rgba(255,255,255,.3);transition:all .3s var(--ease-squish);display:inline-flex;align-items:center;gap:.625rem;animation:pulse-mustard 2.4s ease-in-out infinite}.interaction-prompt:hover{transform:translateY(-2px) scale(1.04)}.interaction-prompt:active{transform:translateY(0) scale(.97)}.interaction-prompt:disabled{opacity:.6;cursor:default;animation:none}@keyframes pulse-mustard{0%,to{box-shadow:0 12px 24px -6px rgba(228,180,76,.5),inset 0 -3px 0 rgba(0,0,0,.12),inset 0 2px 0 rgba(255,255,255,.3),0 0 0 0 rgba(228,180,76,.5)}50%{box-shadow:0 12px 24px -6px rgba(228,180,76,.5),inset 0 -3px 0 rgba(0,0,0,.12),inset 0 2px 0 rgba(255,255,255,.3),0 0 0 18px rgba(228,180,76,0)}}.interaction-prompt svg{width:18px;height:18px}.reflection-scene{background:rgba(251,244,228,.4);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.reflection-question{font-family:Fraunces,serif;font-weight:600;font-size:clamp(1.75rem,4vw,2.5rem);text-align:center;color:var(--indigo);max-width:640px;margin-bottom:2.5rem;line-height:1.3;opacity:0;transform:translateY(20px);transition:opacity .9s var(--ease-soft) .3s,transform .9s var(--ease-soft) .3s}.scene.active .reflection-question{opacity:1;transform:translateY(0)}.answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;width:100%;max-width:760px}.answer-card{padding:1.75rem 1.25rem;background:linear-gradient(155deg,#FFFDF6,var(--parchment));border:3px solid transparent;border-radius:24px;cursor:pointer;box-shadow:var(--shadow-clay);text-align:center;transition:all .4s var(--ease-squish);opacity:0;transform:translateY(20px);position:relative;overflow:hidden}.scene.active .answer-card{opacity:1;transform:translateY(0)}.scene.active .answer-card:first-child{transition-delay:.5s}.scene.active .answer-card:nth-child(2){transition-delay:.6s}.scene.active .answer-card:nth-child(3){transition-delay:.7s}.answer-card:hover{transform:translateY(-4px) scale(1.02);border-color:var(--mustard)}.answer-card:active{transform:translateY(0) scale(.98)}.answer-card.chosen{background:linear-gradient(155deg,#FFF6D9,var(--mustard));border-color:var(--terracotta);transform:translateY(-2px)}.answer-icon{width:60px;height:60px;margin:0 auto .875rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--olive-light),var(--olive));border-radius:18px;box-shadow:inset 0 -2px 0 rgba(0,0,0,.08)}.answer-card:first-child .answer-icon{background:linear-gradient(145deg,#F5C99B,var(--terracotta))}.answer-card:nth-child(2) .answer-icon{background:linear-gradient(145deg,var(--olive-light),var(--olive))}.answer-card:nth-child(3) .answer-icon{background:linear-gradient(145deg,#C2E1EB,var(--sky))}.answer-icon svg{width:30px;height:30px;color:#FFFDF6}.answer-text{font-family:Fraunces,serif;font-weight:600;font-size:1.0625rem;color:var(--indigo);margin-bottom:.375rem}.answer-affirm{display:none;font-size:.9rem;margin-top:.75rem;color:var(--olive-dark);font-weight:700}.answer-card.chosen .answer-affirm{display:block;animation:fadeIn .6s ease both}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.verse-scene{padding:7rem 1.25rem}.verse-card{max-width:640px;width:100%;padding:3.5rem 2.5rem;background:linear-gradient(155deg,#FFFDF6,#F9EEDA);border-radius:36px;text-align:center;box-shadow:var(--shadow-clay);position:relative;opacity:0;transform:translateY(28px) scale(.97);transition:opacity 1s var(--ease-soft),transform 1s var(--ease-soft)}.scene.active .verse-card{opacity:1;transform:translateY(0) scale(1)}.verse-art{width:90px;height:90px;margin:0 auto 1.5rem;filter:drop-shadow(0 6px 12px rgba(138,154,91,.3))}.verse-text{font-family:Fraunces,serif;font-style:italic;font-weight:500;font-size:clamp(1.25rem,2.6vw,1.625rem);line-height:1.5;color:var(--indigo);margin-bottom:1.75rem}.verse-text .mark{color:var(--terracotta);font-size:1.4em;line-height:0;vertical-align:-.18em;margin:0 .05em}.verse-ref{font-size:.78rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--olive-dark)}.finale-scene{background:radial-gradient(ellipse at center,rgba(228,180,76,.18) 0,transparent 60%);text-align:center}.finale-flower{width:200px;height:200px;margin-bottom:2rem;opacity:0;transform:scale(.4);transition:opacity 1.4s var(--ease-squish) .2s,transform 1.4s var(--ease-squish) .2s}.scene.active .finale-flower{opacity:1;transform:scale(1)}.scene.active .finale-flower .petals{animation:bloomSpin 1.6s var(--ease-squish) .5s both}.scene.active .finale-flower .core{animation:corePop .8s var(--ease-squish) 1.5s both}@keyframes bloomSpin{0%{transform:rotate(-90deg) scale(0);opacity:0}to{transform:rotate(0) scale(1);opacity:1}}@keyframes corePop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.finale-flower .core,.finale-flower .petals{transform-origin:center;transform-box:fill-box}.finale-burst{position:absolute;width:6px;height:6px;border-radius:50%;pointer-events:none;opacity:0}.scene.active .finale-burst{animation:burst 2s ease-out 1.4s forwards}@keyframes burst{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--bx),var(--by)) scale(0)}}.finale-headline{font-family:Fraunces,serif;font-weight:600;font-size:clamp(2rem,5vw,3rem);color:var(--indigo);margin-bottom:.75rem;opacity:0;transform:translateY(20px);transition:opacity .9s ease .8s,transform .9s ease .8s;text-shadow:0 0 18px rgba(251,244,228,.85),0 1px 0 rgba(251,244,228,.5)}.scene.active .finale-headline{opacity:1;transform:translateY(0)}.finale-sub{font-size:1.125rem;color:var(--indigo);opacity:0;margin-bottom:2.5rem;max-width:480px;transition:opacity .9s ease 1s}.scene.active .finale-sub{opacity:.78}.finale-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;opacity:0;transform:translateY(20px);transition:opacity .9s ease 1.2s,transform .9s ease 1.2s}.scene.active .finale-actions{opacity:1;transform:translateY(0)}.btn{display:inline-flex;align-items:center;gap:.625rem;padding:1rem 1.875rem;border-radius:999px;font-family:Nunito,sans-serif;font-weight:800;font-size:1rem;text-decoration:none;border:none;cursor:pointer;transition:all .3s var(--ease-squish)}.btn-primary{background:var(--terracotta);color:var(--parchment);box-shadow:0 12px 24px -6px rgba(184,90,61,.45),inset 0 -3px 0 rgba(0,0,0,.12),inset 0 2px 0 rgba(255,255,255,.2)}.btn-primary:hover{transform:translateY(-2px) scale(1.03)}.btn-secondary{background:var(--parchment);border:2px solid var(--indigo);color:var(--indigo);box-shadow:0 6px 14px -4px rgba(0,0,0,.28)}.btn-secondary:hover{background:var(--indigo);color:var(--parchment);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.2s!important}.caption-card,.scene-art{opacity:1;transform:none}}@media (max-width:600px){.scene{padding:4.5rem 1rem 1.5rem}.caption-card{padding:1.125rem 1.25rem;border-radius:20px}.verse-card{padding:2.5rem 1.75rem}.progress-dots{max-width:200px}.reflection-scene .scene-art{aspect-ratio:16/10;max-height:20vh;margin-bottom:.5rem}.reflection-scene .reflection-question{font-size:1.2rem;margin-bottom:.75rem}.reflection-scene .answer-card{padding:.875rem 1rem}.reflection-scene .answer-card-icon{width:40px;height:40px}}.twinkle{animation:twinkle 3s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.twinkle-2{animation:twinkle 4s ease-in-out -1s infinite}.twinkle-3{animation:twinkle 3.5s ease-in-out -2s infinite}@keyframes twinkle{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}.nudge-soft{animation:nudgeSoft 3s ease-in-out infinite;transform-origin:bottom center;transform-box:fill-box}@keyframes nudgeSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.drift-cloud{animation:driftCloud 25s linear infinite}@keyframes driftCloud{0%{transform:translateX(-30px)}to{transform:translateX(30px)}}.spin-slow{animation:spinSlow 20s linear infinite;transform-origin:center;transform-box:fill-box}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.grow-up{animation:growUp 3s ease-in-out infinite;transform-origin:bottom center;transform-box:fill-box}@keyframes growUp{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.04)}}.wing-flap{animation:wingFlap .45s ease-in-out infinite}.wing-flap,.wing-flap-2{transform-origin:center;transform-box:fill-box}.wing-flap-2{animation:wingFlap .55s ease-in-out -.15s infinite}.wing-flap-3{animation:wingFlap .5s ease-in-out -.25s infinite;transform-origin:center;transform-box:fill-box}@keyframes wingFlap{0%,to{transform:scaleY(1)}50%{transform:scaleY(.45)}}.shimmer{animation:shimmer 3.6s ease-in-out infinite}.shimmer,.shimmer-2{transform-origin:center;transform-box:fill-box}.shimmer-2{animation:shimmer 4.2s ease-in-out -1.4s infinite}@keyframes shimmer{0%,to{opacity:.55;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.04)}}.ripple{animation:ripple 4s ease-out infinite}.ripple,.ripple-2{transform-origin:center;transform-box:fill-box}.ripple-2{animation:ripple 4.5s ease-out -1.5s infinite}.ripple-3{animation:ripple 5s ease-out -3s infinite;transform-origin:center;transform-box:fill-box}@keyframes ripple{0%{transform:scale(.3);opacity:.9}to{transform:scale(2);opacity:0}}.ray-spin{animation:raySpin 60s linear infinite}.ray-spin,.ray-spin-rev{transform-origin:center;transform-box:fill-box}.ray-spin-rev{animation:raySpin 80s linear infinite reverse}@keyframes raySpin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.breeze{animation:breeze 4.2s ease-in-out infinite}.breeze,.breeze-2{transform-origin:bottom center;transform-box:fill-box}.breeze-2{animation:breeze 5.4s ease-in-out -1.6s infinite}.breeze-3{animation:breeze 4.8s ease-in-out -2.4s infinite;transform-origin:bottom center;transform-box:fill-box}@keyframes breeze{0%,to{transform:skewX(0deg)}50%{transform:skewX(3deg)}}.dust{animation:dust 9s linear infinite}.dust-2{animation:dust 11s linear -3s infinite}.dust-3{animation:dust 13s linear -6s infinite}@keyframes dust{0%{transform:translate(0);opacity:0}15%{opacity:.85}85%{opacity:.85}to{transform:translate(28px,-52px);opacity:0}}.glow-pulse{animation:glowPulse 3.6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes glowPulse{0%,to{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.drift-slow{animation:driftSlow 38s ease-in-out infinite}.drift-slow-rev{animation:driftSlow 45s ease-in-out infinite reverse}@keyframes driftSlow{0%,to{transform:translateX(0)}50%{transform:translateX(50px)}}.bob-soft{animation:bobSoft 5s ease-in-out infinite}.bob-soft,.bob-soft-2{transform-origin:center;transform-box:fill-box}.bob-soft-2{animation:bobSoft 6.4s ease-in-out -1.8s infinite}@keyframes bobSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.fall-slow{animation:fallSlow 3s linear infinite}.fall-slow-2{animation:fallSlow 3.5s linear -1s infinite}.fall-slow-3{animation:fallSlow 4s linear -2s infinite}@keyframes fallSlow{0%{transform:translateY(-30px);opacity:0}15%{opacity:.85}85%{opacity:.85}to{transform:translateY(120px);opacity:0}}.flame-dance{animation:flameDance 1.2s ease-in-out infinite;transform-origin:bottom center;transform-box:fill-box}@keyframes flameDance{0%,to{transform:scale(1) rotate(-2deg)}50%{transform:scale(1.06,.95) rotate(2deg)}}.heartbeat{animation:heartbeat 1.6s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes heartbeat{0%,to{transform:scale(1)}20%{transform:scale(1.18)}40%{transform:scale(1)}60%{transform:scale(1.12)}}body:has(.story-body)>.skip-link,body:has(.story-body)>a.skip-link,body:has(.story-body)>footer.site-footer,body:has(.story-body)>header.site-header{display:none!important}body:has(.story-body)>#main,body:has(.story-body)>main#main{padding:0!important;margin:0!important;max-width:none!important}