.ws-header{position:fixed}.ws-track{position:relative}.ws-stage{height:100svh;position:sticky;top:0;overflow:hidden}.ws-sky{background:linear-gradient(#e6eee8 0%,#f4f1e8 55%,#fbf6ea 100%);position:absolute;inset:0}.ws-sky-eve{opacity:0;background:linear-gradient(#54607a 0%,#a9899a 40%,#eab99a 72%,#f6d7b4 100%);transition:opacity 2s}.r8 .ws-sky-eve{opacity:1}.ws-scene{width:100%;height:100%;position:absolute;bottom:0;left:0}.ws-scene .a{opacity:0;transform-box:fill-box;transform-origin:50% 100%;transition:opacity .9s,transform 1.2s cubic-bezier(.2,.8,.2,1);transform:translateY(18px)}.ws-scene .a.pop{transform:scale(.3)}.ws-scene .a.grow{transform:scaleY(0)}.ws-scene .a.drop{transform:translateY(-36px)}.r1 .a1,.r2 .a2,.r3 .a3,.r4 .a4,.r5 .a5,.r6 .a6,.r7 .a7,.r8 .a8{opacity:1!important;transform:none!important}.tree{transform:scale(var(--tree));transform-box:fill-box;transform-origin:50% 100%;transition:transform 1.8s cubic-bezier(.2,.8,.2,1)}.rt{stroke:#e9d4b6;stroke-dasharray:1;stroke-dashoffset:1px;stroke-width:3px;transition:stroke-dashoffset 2.4s}.rt3{stroke-width:5px}.r3 .rt3,.r4 .rt4,.r5 .rt5,.r6 .rt6,.r7 .rt7{stroke-dashoffset:0}.r8 .rt{stroke:#ffe3a0}.win{fill:#5e4a3b;transition:fill 1.4s}.r8 .win{fill:#ffd98a;filter:url(#ws-glow)}.sign{fill:#6f5a4a;font-family:var(--font-serif);letter-spacing:.2em;font-size:11px}.sign-light{fill:#f3e6d4}.hill{transition:fill 2s}.hill-far{fill:#d9e4d6}.hill-mid{fill:#c3d5bd}.hill-near{fill:#adc6a3}.r8 .hill-far{fill:#a6a0ad}.r8 .hill-mid{fill:#93a08f}.r8 .hill-near{fill:#869b7d}.sun{transition:transform 2.4s}.sun-core{fill:#fbe7b5;transition:fill 2s}.r8 .sun{transform:translateY(330px)}.r8 .sun-core{fill:#f4a37a}.stars{opacity:0;transition:opacity 2s 1s}.r8 .stars{opacity:.8}.birds{fill:none;stroke:#5b6b62;stroke-linecap:round;stroke-width:2px}@media (prefers-reduced-motion:no-preference){.cloud{animation:70s linear infinite drift}.c1{animation-delay:-10s}.c2{animation-duration:90s;animation-delay:-38s}.c3{animation-duration:80s;animation-delay:-60s}.flock{animation:26s linear infinite fly}.bob{animation:3.4s ease-in-out infinite bob}.canopy{transform-box:fill-box;transform-origin:50% 100%;animation:7s ease-in-out infinite sway}.cloth{transform-box:fill-box;transform-origin:50% 0;animation:4s ease-in-out infinite flap}.smoke{animation:4s ease-out infinite smoke}.steam{animation:3s ease-in-out infinite steam}.flame{transform-box:fill-box;transform-origin:50% 100%;animation:.6s ease-in-out infinite alternate flicker}.graze{transform-box:fill-box;transform-origin:20% 100%;animation:5s ease-in-out infinite graze}.peck{transform-box:fill-box;transform-origin:30% 100%;animation:1.8s ease-in-out infinite peck}.wag{transform-box:fill-box;transform-origin:100% 100%;animation:.5s ease-in-out infinite alternate wag}.flutter{animation:9s ease-in-out infinite flutter}.wings{transform-box:fill-box;transform-origin:50%;animation:.25s ease-in-out infinite alternate wings}.lantern{transform-box:fill-box;transform-origin:50% 0;animation:3s ease-in-out infinite sway}.fairy circle,.pulse{animation:2.4s ease-in-out infinite twinkle}.fairy circle:nth-child(odd){animation-delay:-1.2s}.firefly{animation:6s ease-in-out infinite firefly}}@keyframes drift{0%{transform:translate(-300px)}to{transform:translate(1900px)}}.cloud.c1 path{transform:translateY(130px)}.cloud.c2 path{transform:translateY(250px)}.cloud.c3 path{transform:translateY(90px)}@keyframes fly{0%{transform:translate(-200px,260px)}to{transform:translate(1800px,120px)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@keyframes sway{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@keyframes flap{0%,to{transform:skew(-4deg)}50%{transform:skew(5deg)}}@keyframes smoke{0%{opacity:.9;transform:translateY(0)}to{opacity:0;transform:translateY(-26px)}}@keyframes steam{0%,to{opacity:0;transform:translateY(2px)}50%{opacity:.8;transform:translateY(-5px)}}@keyframes flicker{0%{transform:scale(.9,.85)}to{transform:scale(1.05,1.1)}}@keyframes graze{0%,60%,to{transform:rotate(0)}75%{transform:rotate(6deg)}}@keyframes peck{0%,55%,to{transform:rotate(0)}70%{transform:rotate(28deg)}}@keyframes wag{0%{transform:rotate(-14deg)}to{transform:rotate(14deg)}}@keyframes flutter{0%,to{transform:translate(0)}25%{transform:translate(30px,-22px)}50%{transform:translate(60px,4px)}75%{transform:translate(24px,16px)}}@keyframes wings{0%{transform:scaleX(1)}to{transform:scaleX(.25)}}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.45}}@keyframes firefly{0%,to{opacity:0;transform:translate(0)}30%{opacity:1}50%{transform:translate(14px,-18px)}70%{opacity:.8}}.ws-captions{pointer-events:none;width:min(460px,80vw);position:absolute;top:16vh;left:8vw}.ws-captions>div{opacity:0;transition:opacity .8s,transform 1s cubic-bezier(.2,.8,.2,1);position:absolute;top:0;left:0;transform:translateY(20px)}.ws-captions>div.is-on{opacity:1;transition-delay:.25s;transform:none}.ws-intro .eyebrow{margin-bottom:24px}.ws-intro h1{color:var(--pine);font-family:var(--font-serif);letter-spacing:.06em;margin:0;font-size:clamp(42px,5.4vw,76px);font-weight:500;line-height:1.3}.ws-intro h1 em{color:var(--clay);font-style:normal}.ws-intro p:last-child{color:#5d6b62;font-family:var(--font-serif);letter-spacing:.14em;margin-top:26px;font-size:14px}.ws-caption h2{color:var(--pine);font-family:var(--font-serif);letter-spacing:.08em;margin:0 0 18px;font-size:clamp(56px,7vw,104px);font-weight:500;line-height:1.1}.ws-caption p{color:#4f5d55;font-family:var(--font-serif);letter-spacing:.14em;margin:0;font-size:15px}.r8 .ws-caption h2,.r8 .ws-caption p{color:#fff9ef}.ws-finale{opacity:0;pointer-events:none;flex-direction:column;align-items:flex-start;gap:14px;transition:opacity .8s .9s,transform 1s .9s;display:flex;position:absolute;top:calc(16vh + 290px);left:8vw;transform:translateY(16px)}.ws-finale.is-on{opacity:1;pointer-events:auto;transform:none}.ws-finale a:first-child{color:var(--pine);letter-spacing:.12em;background:#fffcf5eb;border-radius:999px;align-items:center;gap:12px;padding:15px 24px;font-size:12px;transition:transform .25s;display:inline-flex;box-shadow:0 12px 30px #281e1e2e}.ws-finale a:first-child:hover{transform:translateY(-2px)}.ws-finale-sub{color:#fff9ef;letter-spacing:.14em;border-bottom:1px solid #fff9ef99;padding-bottom:4px;font-size:11px}@media (prefers-reduced-motion:reduce){.ws-scene .a,.tree,.rt,.ws-captions>div{transition-duration:10ms!important}}@media (max-width:720px),(max-aspect-ratio:1){.ws-scene{height:86%;top:auto}.cam{transform:translateX(var(--camx));transition:transform 1.6s cubic-bezier(.4,0,.2,1)}}@media (max-width:720px){.ws-captions{width:calc(100vw - 44px);top:92px;left:22px}.ws-intro h1{font-size:42px}.ws-intro p:last-child{margin-top:16px;font-size:12px}.ws-caption h2{margin:8px 0 10px;font-size:52px}.ws-caption p{font-size:13px}.ws-finale{top:330px;left:22px}}.cloud path{transition:fill 2s,opacity 2s}.r8 .cloud path{fill:#d9a9a4;opacity:.35}.r8 .ws-caption h2,.r8 .ws-caption p{text-shadow:0 2px 16px #3c324659}.daytime{transition:opacity 1s}.r8 .daytime{opacity:0}.note{fill:#fff4d8;filter:url(#ws-glow);font-size:26px}@media (prefers-reduced-motion:no-preference){.dance{transform-box:fill-box;transform-origin:50% 100%;animation:1.6s ease-in-out infinite dance}.note{transform-box:fill-box;animation:5.4s ease-out infinite note}.spark{animation:2s ease-out infinite spark}}@keyframes dance{0%,to{transform:translate(-4px)rotate(-4deg)}25%{transform:translateY(-5px)rotate(0)}50%{transform:translate(4px)rotate(4deg)}75%{transform:translateY(-5px)rotate(0)}}@keyframes note{0%{opacity:0;transform:translateY(20px)rotate(-8deg)}20%{opacity:1}to{opacity:0;transform:translate(18px,-70px)rotate(10deg)}}@keyframes spark{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(6px,-60px)}}@media (prefers-reduced-motion:no-preference){.strum{transform-box:fill-box;transform-origin:0 0;animation:.35s ease-in-out infinite alternate strum}.beat{animation:.4s ease-in-out infinite alternate beat}.beat-alt{animation-delay:-.2s}.hop{animation:.8s ease-in-out infinite hop}.nod{transform-box:fill-box;transform-origin:30% 100%;animation:1.6s ease-in-out infinite nod}}@keyframes strum{0%{transform:rotate(-12deg)}to{transform:rotate(10deg)}}@keyframes beat{0%{transform:translateY(-4px)}to{transform:translateY(1px)}}@keyframes hop{0%,to{transform:translateY(0)}40%{transform:translateY(-12px)}60%{transform:translateY(-12px)}}@keyframes nod{0%,to{transform:rotate(0)}50%{transform:rotate(-10deg)}}.ws-captions{width:min(620px,84vw)}.ws-caption h2.is-long{font-size:clamp(40px,4.6vw,68px)}.ws-caption p{white-space:pre-line;line-height:2}@media (max-width:720px){.ws-caption h2.is-long{font-size:38px}}.ws-intro p:last-child{font-size:17px}.ws-caption p{font-size:18px}.ws-finale a:first-child{font-size:15px}.ws-finale-sub{font-size:14px}@media (max-width:720px){.ws-intro p:last-child{font-size:15px}.ws-caption p{font-size:16px}.ws-finale{top:350px}}.ws-hint{color:var(--pine);opacity:0;pointer-events:none;z-index:3;flex-direction:column;align-items:center;gap:14px;transition:opacity .8s,transform .8s;display:flex;position:absolute;bottom:118px;left:50%;transform:translate(-50%,10px)}.ws-hint.is-on{opacity:1;transition-delay:.8s;transform:translate(-50%)}.ws-hint p{font-family:var(--font-serif);letter-spacing:.08em;white-space:nowrap;background:#fffcf5e6;border-radius:999px;margin:0;padding:12px 26px;font-size:17px;box-shadow:0 10px 30px #2832281a}.ws-hint-sp{display:none}.ws-hint b{color:var(--clay);font-weight:500}.ws-hint-icon{border:2px solid var(--pine);border-radius:14px;width:26px;height:42px;display:block;position:relative}.ws-hint-icon i{background:var(--clay);border-radius:2px;width:4px;height:8px;margin-left:-2px;position:absolute;top:7px;left:50%}@media (prefers-reduced-motion:no-preference){.ws-hint-icon i{animation:2s ease-in-out infinite wheel}.ws-hint.is-on p{animation:3s ease-in-out infinite hintGlow}}@keyframes wheel{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(14px)}}@keyframes hintGlow{0%,to{box-shadow:0 10px 30px #2832281a}50%{box-shadow:0 10px 34px #a57d6859}}@media (max-width:720px){.ws-hint{bottom:96px}.ws-hint p{padding:11px 20px;font-size:15px}.ws-hint-pc{display:none}.ws-hint-sp{display:inline}.ws-hint-icon{border-radius:50%;width:26px;height:26px}.ws-hint-icon i{border-radius:50%;width:10px;height:10px;margin-left:-5px;top:6px}}@media (max-width:720px) and (prefers-reduced-motion:no-preference){.ws-hint-icon{animation:2.2s ease-in-out infinite swipeUp}.ws-hint-icon i{animation:none}}@keyframes swipeUp{0%{opacity:0;transform:translateY(18px)}30%{opacity:1}to{opacity:0;transform:translateY(-22px)}}.ws-hint{top:50%;bottom:auto}@media (max-width:720px){.ws-hint{top:44%;bottom:auto}}.ws-more{color:var(--clay);letter-spacing:.1em;align-items:center;gap:8px;margin-top:22px;font-size:14px;display:inline-flex}.r8 .ws-more{color:#ffe3c0}@media (prefers-reduced-motion:no-preference){.ws-more svg{animation:1.8s ease-in-out infinite bob}}.ws-hint-icon{border-radius:50%;width:26px;height:26px}.ws-hint-icon i{border-radius:50%;width:10px;height:10px;margin-left:-5px;top:6px}@media (prefers-reduced-motion:no-preference){.ws-hint-icon{animation:2.2s ease-in-out infinite swipeUp}.ws-hint-icon i{animation:none}}
