.activities-section{background:linear-gradient(130deg,#dce7d8ad,#f4f6f377);overflow:hidden;padding-bottom:48px}.polaroid-stage{position:relative;margin-inline:-8%;padding-top:8px}.activity-rope{position:absolute;left:0;top:1px;width:100%;height:64px;pointer-events:none;z-index:2}.activity-carousel{display:flex;align-items:start;gap:30px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;padding:56px max(30px,calc(50% - 140px)) 42px;min-height:430px;overscroll-behavior-x:contain}.activity-carousel::-webkit-scrollbar{display:none}.hanging-activity{width:280px;flex:0 0 280px;position:relative;scroll-snap-align:center;transform-origin:50% -12px;animation:polaroid-sway 6s ease-in-out infinite;animation-delay:var(--delay);filter:drop-shadow(0 9px 7px #223c2525)}.hanging-activity>a{display:block;padding:11px 11px 19px;background:#fcfdfb;color:var(--ink);transition:box-shadow .2s}.hanging-activity>a:hover{box-shadow:0 0 0 2px #2d66394d}.activity-peg{position:absolute;z-index:3;left:calc(50% - 5px);top:-19px;width:10px;height:32px;border-radius:2px;background:linear-gradient(90deg,#a5b49d,#d6dfcf 45%,#85957d 49%,#c2cfba);box-shadow:1px 2px 2px #223c2529;transform:rotate(-2deg)}.activity-thumbnail{display:block;width:100%;height:auto;background:#dce7d8}.activity-caption{display:flex;align-items:center;flex-direction:column;text-align:center;padding:15px 8px 0;gap:7px}.activity-caption>small{font-size:9px;letter-spacing:1px;color:#63715f}.activity-caption>strong{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:19px;line-height:1.2;color:var(--forest)}.activity-caption>span{font-size:10px;color:var(--charcoal);margin-top:3px}.activity-controls{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap;margin-top:2px}.activity-controls>div{display:flex;align-items:center;gap:18px}.activity-controls button{font:inherit;font-size:11px;border:1px solid #2d66394d;border-radius:25px;padding:9px 15px;background:#f4f6f3bb;color:var(--forest)}.activity-controls button:hover{background:#e0eadd}.activity-controls>button{font-size:10px;padding:8px 12px}#activity-position{font-size:10px;letter-spacing:1px;color:#5c5c5c}.activities-source{text-align:center;font-size:10px;color:#5c5c5c;margin:20px 0 0}.activity-carousel:focus-within .hanging-activity,.activity-carousel:hover .hanging-activity,.activity-sway-paused .hanging-activity{animation-play-state:paused}@keyframes polaroid-sway{0%,100%{transform:rotate(calc(var(--hang) - 1.2deg))}50%{transform:rotate(calc(var(--hang) + 1.2deg))}}@media(max-width:750px){header nav{flex-wrap:wrap;justify-content:center;column-gap:19px;row-gap:12px}.activity-carousel{gap:23px;padding-inline:max(25px,calc(50% - 117px));min-height:385px}.hanging-activity{width:234px;flex-basis:234px}.activity-caption>strong{font-size:17px}.activity-rope{height:64px}.activity-controls{gap:15px}.activity-controls>div{gap:12px}.activity-controls button{font-size:10px;padding:8px 12px}.activities-section{padding-bottom:40px}}@media(prefers-reduced-motion:reduce){.hanging-activity{animation:none;transform:none}#activity-motion{display:none}}@media print{.activities-section{display:none}}

@media(min-width:751px) and (max-width:1000px){header nav{gap:16px;font-size:12px}header .pill{padding:12px 15px;font-size:11px}}
/* Hang each print from its peg and let the surrounding prints keep swaying. */
.hanging-activity{animation:polaroid-pendulum 4.8s cubic-bezier(.45,0,.55,1) infinite;animation-delay:var(--delay);transform-origin:50% -12px;will-change:transform}.hanging-activity:nth-child(2n){animation-duration:5.6s}.hanging-activity:nth-child(3n){animation-duration:4.3s}.activity-carousel:hover .hanging-activity,.activity-carousel:focus-within .hanging-activity{animation-play-state:running}.activity-carousel .hanging-activity:hover,.activity-carousel .hanging-activity:focus-within,.activity-sway-paused .hanging-activity{animation-play-state:paused}@keyframes polaroid-pendulum{0%,100%{transform:rotate(calc(var(--hang) - 4deg)) translateY(1px)}50%{transform:rotate(calc(var(--hang) + 4deg)) translateY(-2px)}}.activity-carousel{padding-top:62px;padding-bottom:52px;min-height:455px}.activity-side{position:absolute;top:50%;transform:translateY(-40%);z-index:5;width:43px;height:43px;border:1px solid #2d663955;border-radius:50%;background:#f4f6f3ed;backdrop-filter:blur(12px);color:var(--forest);box-shadow:0 4px 14px #21392522;font:400 31px/1 Georgia,serif;display:grid;place-items:center;padding:0;cursor:pointer}.activity-side:hover{background:#2d6639;color:white}.activity-side-prev{left:max(18px,3%)}.activity-side-next{right:max(18px,3%)}.activity-controls{margin-top:5px}.activity-controls>div:empty{display:none}@media(max-width:750px){.activity-carousel{min-height:410px;padding-top:60px;padding-bottom:46px}.activity-side{width:36px;height:36px;font-size:27px}.activity-side-prev{left:12px}.activity-side-next{right:12px}}@media(prefers-reduced-motion:reduce){.hanging-activity{animation:none;transform:none;will-change:auto}}

.pdf-activity .activity-thumbnail{width:100%;height:212px;object-fit:contain;background:#e7ece5}.activity-download{display:block;background:#fcfdfb;color:var(--forest);font-size:10px;text-decoration:underline;text-align:center;padding:0 12px 15px;margin-top:-1px}.pdf-activity>a:first-of-type{padding-bottom:13px}@media(max-width:750px){.pdf-activity .activity-thumbnail{height:174px}}
.activity-sway-paused .activity-carousel .hanging-activity{animation-play-state:paused}
.hanging-activity{animation-duration:var(--sway-duration,4.8s)!important}
.activity-carousel .hanging-activity,.activity-carousel .hanging-activity:hover,.activity-carousel .hanging-activity:focus-within{animation-play-state:running}
.activities-section .activities-intro{max-width:390px;white-space:nowrap}@media(max-width:750px){.activities-section .activities-intro{font-size:clamp(10px,2.6vw,13px);max-width:none}}#activity-popup{padding:0;width:96vw;max-width:1500px;height:94dvh;max-height:94dvh;border:1px solid #b9cdbb;border-radius:18px;overflow:hidden;background:#f5f8f3}#activity-popup::backdrop{background:#142d21b8;backdrop-filter:blur(8px)}.activity-popup-bar{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#2d6639;background:#f7faf5}.activity-popup-bar button{border:1px solid #c5d5c5;border-radius:50%;background:white;width:34px;height:34px;font-size:24px;cursor:pointer}#activity-popup iframe{display:block;border:0;width:100%;height:calc(100% - 52px);background:#eef4ea}#activity-popup.puzzle-popup{height:min(94dvh,calc(96vw * .5625 + 52px))}.review-folders{flex-wrap:wrap}.review-folders button{min-height:48px}@media(max-width:600px){#activity-popup{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.activity-popup-bar{font-size:12px}}
.activity-loading{position:absolute;inset:52px 0 0;z-index:5;background:radial-gradient(ellipse at 50% 25%,#fff9e8,#edf4e9 72%);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;text-align:center;color:#2d6639}.activity-loading[hidden]{display:none}.activity-loading h2{font-size:clamp(21px,3vw,32px);margin:24px 0 6px}.activity-loading p{font-size:14px;color:#5c665b}.activity-loading small{margin-top:22px;letter-spacing:3px;font-size:10px;text-transform:uppercase}.loading-scene{position:relative;width:min(680px,90%);height:170px;overflow:hidden}.loading-sun{position:absolute;right:15%;top:0;color:#d8b364;font-size:45px;animation:loading-glow 2s ease-in-out infinite alternate}.running-company{position:absolute;width:clamp(190px,42%,300px);bottom:10px;left:calc(var(--journey) * .55);transition:left .15s linear}.running-company svg{width:100%;overflow:visible}.loading-path{position:absolute;bottom:12px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#99b795,transparent)}.runner-body{animation:runner-bounce .42s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:center}.runner-leg{fill:none;stroke:#7a634d;stroke-width:7;stroke-linecap:round;transform-box:fill-box;transform-origin:top;animation:runner-step .42s ease-in-out infinite alternate}.leg-two{animation-delay:-.42s}.runner-arm{fill:none;stroke-width:7;stroke-linecap:round;transform-origin:center;animation:runner-hand .42s ease-in-out infinite alternate}.activity-progress{height:7px;border-radius:20px;background:#d5e2cf;width:min(340px,75%);overflow:hidden;margin-top:12px}.activity-progress span{display:block;height:100%;background:#2d6639;border-radius:20px;transition:width .12s linear}.loading-count{display:inline-block;min-width:42px}@keyframes runner-bounce{to{transform:translateY(-5px) rotate(2deg)}}@keyframes runner-step{from{transform:rotate(-22deg)}to{transform:rotate(24deg)}}@keyframes runner-hand{to{transform:translateY(-3px)}}@keyframes loading-glow{to{opacity:.55;transform:scale(.95)}}@media(prefers-reduced-motion:reduce){.runner-body,.runner-leg,.runner-arm,.loading-sun{animation:none}}
.running-company{width:clamp(220px,48%,360px)}.running-company img{display:block;width:100%;height:auto;animation:cartoon-running .45s ease-in-out infinite alternate;transform-origin:bottom center}@keyframes cartoon-running{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-7px) rotate(1deg)}}@media(prefers-reduced-motion:reduce){.running-company img{animation:none}}
