/* A final dance poster, with real lettering and separate photographic silhouettes. */
.site-footer.footer-festival{--footer-forest:#081a14;--footer-lime:#c3f75b;--footer-cream:#f4f6ee;background:var(--footer-forest);color:var(--footer-cream);padding:38px 5.2% 27px;overflow:hidden}
.footer-festival .footer-invitation{max-width:1500px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:5}
.footer-festival .footer-invitation>p{font-family:var(--display);font-size:clamp(20px,2.5vw,34px);font-weight:600;letter-spacing:-.035em;line-height:1.15;margin:0}
.footer-festival .footer-actions{display:flex;align-items:center;gap:22px;flex-shrink:0}
.footer-festival .footer-rhythm{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:8px 0;background:none;color:#d4decf;font:600 12px Manrope,Arial,sans-serif;cursor:pointer;white-space:nowrap}
.footer-festival .footer-rhythm>span[aria-hidden="true"]{font-size:24px;color:var(--footer-lime);transition:transform .4s ease}
.footer-festival .footer-rhythm[aria-pressed="true"]>span[aria-hidden="true"]{transform:rotate(90deg)}
.footer-festival .footer-rhythm:disabled{opacity:.45;cursor:default}
.footer-festival .footer-rhythm:focus-visible,.footer-festival .footer-stage-wordmark:focus-visible{outline:2px solid var(--footer-lime);outline-offset:7px;border-radius:3px}
.footer-festival .footer-actions>.button{min-height:50px;padding:16px 22px;font-size:13px;gap:24px}
.footer-festival .footer-stage{--footer-pointer-x:0px;--footer-pointer-y:0px;--footer-light-x:50%;--footer-light-y:50%;height:clamp(600px,55vw,760px);max-width:1500px;margin:14px auto 0;position:relative;isolation:isolate}
.footer-festival .footer-stage::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.2;background:radial-gradient(ellipse at var(--footer-light-x) var(--footer-light-y),#89ba4f56,transparent 55%);transition:opacity .5s ease}
.footer-festival .footer-stage[data-footer-motion="active"]::before{opacity:.75}
.footer-festival .footer-stage-title{position:absolute;inset:12% 0 10%;margin:0;z-index:2;pointer-events:none}
.footer-festival .footer-wordmark.footer-stage-wordmark{display:block;width:100%;height:100%;margin:0;color:var(--footer-lime);font-family:Unbounded,Arial,sans-serif;font-size:clamp(100px,15.4vw,234px);font-weight:800;line-height:.96;letter-spacing:-.065em;text-align:center;white-space:normal;text-decoration:none;pointer-events:auto;transform:translate3d(calc(var(--footer-pointer-x) * -.22),calc(var(--footer-pointer-y) * -.22),0);transition:color .5s ease,text-shadow .5s ease,transform .45s ease-out;text-shadow:0 2px 0 #638136,0 6px 0 #344d28,0 16px 24px #0005}
.footer-festival .footer-wordmark .footer-name{display:flex;flex-direction:column;align-items:center;justify-content:space-between;height:100%;font:inherit;color:inherit;margin:0}
.footer-festival .footer-line{display:block;font:inherit;margin:0;color:inherit}
.footer-festival .footer-line:last-child{color:var(--footer-cream);-webkit-text-stroke:1px #e6efd9;text-shadow:0 3px 0 #a0b393,0 7px 0 #4d6550,0 17px 28px #0005}
.footer-festival .footer-stage[data-footer-motion="active"] .footer-stage-wordmark{text-shadow:0 2px 0 #688b34,0 7px 0 #344d28,0 0 45px #b6ed5040}
.footer-festival .footer-dancer{position:absolute;left:var(--left);top:var(--top);height:var(--size);aspect-ratio:3/4;z-index:3;pointer-events:none;transform:translate3d(calc(var(--footer-pointer-x) * var(--depth)),calc(var(--footer-pointer-y) * var(--depth)),0);transition:transform .5s ease-out;filter:drop-shadow(0 16px 10px #0003)}
.footer-festival .footer-dancer--behind{z-index:1;filter:brightness(.88) drop-shadow(0 12px 10px #0003)}
.footer-festival .footer-dancer>img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 75%;animation:footer-dance-sway 2.5s ease-in-out var(--delay) infinite alternate;animation-play-state:paused;transform:rotate(var(--lean));will-change:auto}
.footer-festival .footer-stage[data-footer-motion="active"] .footer-dancer>img{animation-play-state:running;will-change:transform}
.footer-festival .footer-dancer:nth-of-type(even)>img{animation-duration:3.1s}
@keyframes footer-dance-sway{from{transform:translate3d(0,5px,0) rotate(calc(var(--lean) - 2deg))}to{transform:translate3d(0,-12px,0) rotate(calc(var(--lean) + 3deg))}}
.footer-festival .footer-bottom{max-width:1500px;margin:0 auto;position:relative;z-index:5;gap:20px;border-top-color:#c3f75b28;color:#bacbbd;padding-top:22px;line-height:1.7}
.footer-festival .footer-bottom a{min-height:36px;display:inline-flex;align-items:center;transition:color .2s}
.footer-festival .footer-bottom a:hover{color:var(--footer-lime)}
@media(min-width:1800px){.footer-festival .footer-wordmark.footer-stage-wordmark{font-size:245px}.footer-festival .footer-stage{height:760px}}
@media(max-width:800px){.site-footer.footer-festival{padding:32px 6% 25px}.footer-festival .footer-invitation{gap:20px;align-items:flex-start}.footer-festival .footer-invitation>p{font-size:25px;max-width:190px}.footer-festival .footer-actions{gap:8px;align-items:flex-end;flex-direction:column}.footer-festival .footer-rhythm{min-height:44px;font-size:12px}.footer-festival .footer-actions>.button{font-size:12px;padding:14px 20px;min-height:46px}.footer-festival .footer-stage{height:610px;margin-top:0}.footer-festival .footer-stage-title{inset:16% 0 13%}.footer-festival .footer-wordmark.footer-stage-wordmark{font-size:15.7vw;line-height:1}.footer-festival .footer-dancer{height:calc(var(--size) * .88)}}
@media(max-width:560px){.site-footer.footer-festival{padding:30px 6% calc(25px + env(safe-area-inset-bottom,0px))}.footer-festival .footer-invitation{align-items:flex-start;gap:12px}.footer-festival .footer-invitation>p{font-size:23px;max-width:135px;padding-top:8px}.footer-festival .footer-actions{gap:7px}.footer-festival .footer-actions>.button{gap:14px;padding:13px 15px;font-size:11px}.footer-festival .footer-rhythm{font-size:12px;gap:7px;padding:4px 0;min-height:44px}.footer-festival .footer-rhythm>span[aria-hidden="true"]{font-size:21px}.footer-festival .footer-stage{height:610px;margin:0 -3%;max-width:none}.footer-festival .footer-stage-title{inset:22% 0 25%}.footer-festival .footer-wordmark.footer-stage-wordmark{font-size:16.2vw;line-height:1;letter-spacing:-.065em;text-shadow:0 2px 0 #638136,0 5px 0 #344d28,0 10px 20px #0005}.footer-festival .footer-dancer{left:var(--mobile-left);top:var(--mobile-top);height:var(--mobile-size)}.footer-festival .footer-bottom{gap:8px 20px;display:grid;grid-template-columns:1fr auto;font-size:9px}.footer-festival .footer-bottom>span:nth-child(2){display:none}.footer-festival .footer-bottom>a:last-child{margin-left:0;grid-column:2;grid-row:1}.footer-festival .footer-bottom>a:nth-last-child(2){grid-column:1/-1;min-height:30px}}
@media(max-width:350px){.footer-festival .footer-invitation>p{font-size:20px;max-width:115px}.footer-festival .footer-actions>.button{padding:12px;font-size:10px;gap:12px}.footer-festival .footer-stage{height:580px}.footer-festival .footer-rhythm{font-size:12px}.footer-festival .footer-wordmark.footer-stage-wordmark{font-size:16vw}}
@media(prefers-reduced-motion:reduce){.footer-festival .footer-dancer,.footer-festival .footer-dancer>img,.footer-festival .footer-stage-wordmark,.footer-festival .footer-rhythm>span[aria-hidden="true"]{animation:none!important;transform:none!important;transition:none!important;will-change:auto!important}.footer-festival .footer-stage::before{transition:none!important}}
