/* A continuous workshop facade: four characters share the snow, timber and lights. */
.village-workshop{padding-top:59px;background:radial-gradient(ellipse at 50% 28%,#fbf5df,#dfe8dc 77%,#f1efdf);padding-left:3%;padding-right:3%}.village-workshop .workshop-heading{margin-bottom:3px}.village-workshop .workshop-heading>.eyebrow{margin-bottom:17px}.village-workshop .workshop-heading h2{font-size:clamp(49px,5.5vw,79px)}.village-workshop .workshop-heading>p:last-child{font-size:13px;margin-top:18px;color:#4f604b}
.village-workshop .workshop-stage{position:relative;padding:167px 4.3% 52px;max-width:1200px;margin:auto;isolation:isolate}.village-facade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;filter:drop-shadow(0 14px 14px #28442d24)}.village-facade-2{display:none}.village-trim{position:absolute;top:75px;left:1.5%;width:97%;height:145px;z-index:2;pointer-events:none}.village-trim .drawn-garland{height:100%}.village-workshop .elf-cast{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;align-items:end;max-width:none}.village-workshop .elf-character{position:relative;padding:0;min-width:0}.village-workshop .elf-character .painted-elf{max-width:238px;margin:auto}.village-workshop .elf-name{font-size:32px;margin-top:10px;color:#fff3cd;text-shadow:0 2px 3px #142c20}.village-workshop .elf-action{font-size:11px;min-height:48px;line-height:1.3;color:#fff1cd}.village-workshop .elf-character[aria-pressed=true] .elf-name{color:#ffd68e}.village-workshop .elf-character:focus-visible,.village-workshop .bobby-catch:focus-visible{outline:3px solid #f2cc7e;outline-offset:6px}.village-workshop .elf-character:before{display:none}
.village-workshop .elf-name{position:relative;z-index:3;display:table;margin:10px auto 0;padding:2px 9px;background:#244839;border-radius:2px}
.elf-reaction{position:absolute;left:50%;top:9%;transform:translate(-50%,9px) scale(.9);padding:8px 12px;border-radius:12px 12px 12px 0;background:#fff8dd;color:#69422e;font:italic 19px/1.1 var(--serif);white-space:nowrap;box-shadow:0 5px 10px #152d2430;z-index:5;opacity:0;pointer-events:none;transition:opacity .2s,transform .3s}.elf-active .elf-reaction{opacity:1;transform:translate(-50%,-14px) scale(1)}.village-workshop .elf-active[data-elf=wave] .painted-elf{animation:pip-peek 1.45s ease-in-out 1;transform-origin:50% 95%}.village-workshop .elf-active[data-elf=gift] .painted-elf{animation:holly-curtsey 1.6s ease-in-out 1;transform-origin:50% 95%}.village-workshop .elf-active[data-elf=lights] .painted-elf{animation:willy-welcome 1.6s ease-in-out 1;transform-origin:50% 95%}
.holly-wish{position:absolute;left:16%;top:46%;width:68%;padding:12px 3px;background:#fff4cc;border:1px solid #b9a46e;box-shadow:0 7px 13px #273b2626;color:#684a35;font:italic 21px/1 var(--serif);opacity:0;transform:translateY(30px) rotate(-6deg) scale(.7);pointer-events:none;transition:opacity .4s,transform .7s}.elf-active .holly-wish{opacity:1;transform:translateY(-38px) rotate(-8deg) scale(1)}
.workshop-bobby .bobby-catch{width:100%;max-width:238px;display:block;margin:auto}.workshop-bobby .bobby-picture{aspect-ratio:2/3;width:100%;overflow:visible}.workshop-bobby .bobby-picture img{object-fit:contain;object-position:bottom}.workshop-bobby .bobby-pop-window{inset:auto 0 0;height:75.2%}.workshop-bobby .bobby-box{inset:auto 0 0;height:75.2%}.bobby-candy-pose{position:absolute;inset:0;opacity:0;transform-origin:50% 68%}.workshop-bobby .bobby-catch-label{display:flex;margin:0;min-height:48px;padding:5px 0;border:0;border-radius:0;background:transparent;box-shadow:none;gap:6px;font-family:var(--sans);font-weight:400}.workshop-bobby .bobby-catch:hover .bobby-catch-label{background:transparent;box-shadow:none;color:#fff}.workshop-bobby .bobby-candy-target{position:absolute;left:-14%;top:47%;width:32%;height:48%;z-index:2;overflow:visible;pointer-events:none;transform:rotate(-14deg)}
.bobby-caught-word{position:absolute;left:50%;top:11%;transform:translateX(-50%);padding:7px 13px;background:#fff4c7;color:#7a3440;border:1px solid #b09156;border-radius:10px 10px 0 10px;font:italic 23px/1 var(--serif);opacity:0;z-index:5;pointer-events:none}.workshop-caught-light{position:absolute;right:3%;top:21%;width:30%;height:66%;background:radial-gradient(ellipse,#ffe3a966,transparent 69%);opacity:0;z-index:-1;pointer-events:none;transition:opacity .6s}.village-workshop .workshop-glowing .workshop-caught-light{opacity:1}.village-workshop .workshop-glowing .village-facade{filter:drop-shadow(0 12px 19px #ae904c35)}
.bobby-candy-running .bobby-figure{animation:bobby-candy-sneak 4.4s ease-in-out both,bobby-candy-rest 4.4s step-end both}.bobby-candy-running .bobby-candy-pose{animation:bobby-candy-steal 4.4s ease-in-out both}.bobby-candy-running .bobby-candy-target{animation:bobby-cane-gone 4.4s step-end both}.bobby-candy-running .bobby-caught-word{animation:bobby-candy-caught 4.4s ease-out both}.bobby-candy-running .bobby-pop-window,.workshop-bobby.bobby-hiding .bobby-pop-window,.workshop-bobby.bobby-prank-still .bobby-pop-window{clip-path:inset(0 0 34.5%)}.workshop-bobby.bobby-hiding .bobby-candy-target{opacity:0}.workshop-bobby.bobby-prank-still .bobby-candy-pose,.workshop-bobby.bobby-prank-still .bobby-caught-word{opacity:1}.workshop-bobby.bobby-prank-still .bobby-candy-target{opacity:0}
.village-workshop .elf-finale{max-width:1080px;margin:25px auto 0;border-top-color:#a4b497}.village-workshop .workshop-bottom{max-width:1080px}.village-workshop .elf-sparks{gap:9px}.village-workshop .workshop-bottom p{font-size:21px;min-height:54px}.village-workshop .elf-finale-hint{font-size:22px}
.wonderland-page .storybook-plans{background:radial-gradient(ellipse at 0 0,#69433e33,transparent 60%),#f0e9d5;border-top:1px solid #c8b887;border-bottom:1px solid #c8b887}.wonderland-page .occasion-chapters{border:1px solid #b4a887;box-shadow:0 12px 22px #685a3720;background:#fffae9;padding:5px 24px;position:relative}.wonderland-page .occasion-chapters:before{content:'';position:absolute;inset:7px;pointer-events:none;border:1px solid #bdaf8955}.wonderland-page .occasion-chapters details{position:relative}.wonderland-page .occasion-chapters summary{min-height:100px}.wonderland-page .occasion-chapters summary>span{color:#91434a}.wonderland-page .occasion-chapters details[open]{background:transparent}.wonderland-page .christmas-album{background:linear-gradient(#f5f0df,#fff9e9)}
@keyframes pip-peek{0%,100%{transform:rotate(0)}20%{transform:translateY(12px) rotate(-6deg)}45%{transform:translateY(-10px) rotate(4deg)}68%{transform:translateY(-4px) rotate(-3deg)}84%{transform:rotate(2deg)}}
@keyframes holly-curtsey{0%,100%{transform:translateY(0)}30%{transform:translateY(12px) rotate(3deg) scale(.98)}65%{transform:translateY(-4px) rotate(-2deg)}}
@keyframes willy-welcome{0%,100%{transform:rotate(0)}24%{transform:rotate(-4deg) translateY(-8px)}47%{transform:rotate(4deg) translateY(-5px)}70%{transform:rotate(-2deg)}}
@keyframes bobby-candy-sneak{0%{transform:translateY(var(--bobby-start,0))}15%{transform:translate(-6%,15%) rotate(-6deg)}30%{transform:translateY(-2%)}65%{transform:translateY(0)}83%{transform:translate(35%,65%) rotate(8deg)}100%{transform:translateY(28%)}}
@keyframes bobby-candy-rest{0%,29%{opacity:1}30%{opacity:0}76%,100%{opacity:1}}
@keyframes bobby-candy-steal{0%,29%{opacity:0;transform:translateX(0)}31%,58%{opacity:1;transform:translateX(-5%) rotate(-3deg)}65%{opacity:1;transform:translateY(-3%) rotate(4deg)}80%,100%{opacity:0;transform:translate(45%,65%) rotate(10deg)}}
@keyframes bobby-cane-gone{0%,34%{opacity:1}35%,100%{opacity:0}}
@keyframes bobby-candy-caught{0%,51%{opacity:0}60%,76%{opacity:1}93%,100%{opacity:0}}
.magic-paused .village-workshop *{animation:none!important;transition:none!important}
@media(max-width:1000px){.village-workshop .workshop-stage{padding-top:140px;padding-left:4.5%;padding-right:4.5%}.village-workshop .elf-cast{gap:16px}.village-workshop .elf-name{font-size:29px}.village-workshop .elf-action{font-size:10px}.village-trim{top:57px;height:120px}.elf-reaction{font-size:16px}.holly-wish{font-size:17px}.village-workshop .elf-sparks{gap:5px}}
@media(max-width:700px){.village-workshop{padding-top:43px;padding-left:3%;padding-right:3%}.village-workshop .workshop-heading{padding:0 5%;margin-bottom:9px}.village-workshop .workshop-heading h2{font-size:49px}.village-workshop .workshop-stage{padding:132px 8% 37px;max-width:620px}.village-facade-1{display:none}.village-facade-2{display:block}.village-workshop .elf-cast{grid-template-columns:repeat(2,minmax(0,1fr));gap:39px 24px;align-items:end}.village-workshop .elf-character:nth-child(3){grid-column:auto;width:100%;margin:0}.village-workshop .elf-character .painted-elf{max-width:230px}.village-workshop .elf-name{font-size:31px}.village-workshop .elf-action{font-size:10px;min-height:45px;flex-wrap:wrap}.village-trim{top:52px;left:0;width:100%;height:105px}.village-workshop .elf-finale{margin:22px 6% 0}.village-workshop .workshop-bottom{margin:0 6%;padding-top:20px}.village-workshop .workshop-bottom p{min-height:65px}.village-workshop .elf-finale-hint{font-size:21px}.village-workshop .elf-sparks{display:flex;flex-direction:row;gap:4px;font-size:17px}.village-workshop .elf-finale>div{gap:12px}.workshop-caught-light{right:4%;top:57%;width:44%;height:38%}.bobby-caught-word{font-size:20px;top:16%}.wonderland-page .occasion-chapters{padding:3px 17px}.wonderland-page .occasion-chapters summary{min-height:96px}.elf-reaction{font-size:17px;top:7%}.holly-wish{font-size:18px}}
@media(max-width:390px){.village-workshop .workshop-stage{padding-top:111px;padding-left:7%;padding-right:7%}.village-workshop .elf-cast{gap:32px 17px}.village-workshop .elf-name{font-size:28px}.village-workshop .elf-action{font-size:9px}.village-trim{top:44px;height:91px}.elf-reaction{font-size:15px;padding:6px 9px}.holly-wish{font-size:15px;padding:10px 2px}.village-workshop .workshop-heading h2{font-size:43px}.village-workshop .elf-finale-hint{font-size:19px}.village-workshop .elf-sparks{font-size:15px;gap:2px}}
@media(prefers-reduced-motion:reduce){.village-workshop *{animation:none!important;transition:none!important}}
.village-workshop .elf-action{font-size:11px}
