/* Festival decorations around the logo (festival.js). The logo image itself
   is never changed; everything here sits around it and ignores clicks. */

.fest-logo{position:relative;display:inline-block;width:fit-content!important;max-width:max-content;justify-self:start;isolation:isolate}
.fest-logo>img{display:block}
.fest-deco{position:absolute;inset:0;pointer-events:none}

/* ---------- Diwali: fireworks and a warm glow ---------- */
.fest-diwali .fest-glow{position:absolute;left:50%;top:50%;width:118%;height:150%;z-index:-1;transform:translate(-50%,-50%);
  background:radial-gradient(closest-side,rgba(255,194,51,.42),rgba(255,150,40,.14) 62%,transparent);animation:fest-glow 3.4s ease-in-out infinite}
@keyframes fest-glow{50%{opacity:.55;transform:translate(-50%,-50%) scale(.93)}}

/* fireworks: each burst is one dot whose box-shadows are the sparks; it
   rises, opens out and fades, and the four bursts take turns */
.fest-diwali .fw{position:absolute;width:4px;height:4px;border-radius:50%;opacity:0;filter:drop-shadow(0 0 3px rgba(255,190,60,.9));animation:fest-burst 3.6s ease-out infinite}
.fest-diwali .fw::before{content:"";position:absolute;left:0;top:0;width:2px;height:14px;border-radius:2px;background:linear-gradient(transparent,#ffe9a8);opacity:0;animation:fest-rise 3.6s ease-out infinite;animation-delay:inherit}
.fest-diwali .fw.b1{top:4%;left:8%;box-shadow:25.5px 5.2px 0 0 #ffd23f,19.5px 17.2px 0 0 #ffd23f,8.3px 24.7px 0 0 #ffd23f,-5.2px 25.5px 0 0 #ffd23f,-17.2px 19.5px 0 0 #ffd23f,-24.7px 8.3px 0 0 #ffd23f,-25.5px -5.2px 0 0 #ffd23f,-19.5px -17.2px 0 0 #ffd23f,-8.3px -24.7px 0 0 #ffd23f,5.2px -25.5px 0 0 #ffd23f,17.2px -19.5px 0 0 #ffd23f,24.7px -8.3px 0 0 #ffd23f,13.7px 2.8px 0 0 #fff3b0,7.7px 11.7px 0 0 #fff3b0,-2.8px 13.7px 0 0 #fff3b0,-11.7px 7.7px 0 0 #fff3b0,-13.7px -2.8px 0 0 #fff3b0,-7.7px -11.7px 0 0 #fff3b0,2.8px -13.7px 0 0 #fff3b0,11.7px -7.7px 0 0 #fff3b0}
.fest-diwali .fw.b2{top:2%;left:46%;box-shadow:25.5px 5.2px 0 0 #ff4d3d,19.5px 17.2px 0 0 #ff4d3d,8.3px 24.7px 0 0 #ff4d3d,-5.2px 25.5px 0 0 #ff4d3d,-17.2px 19.5px 0 0 #ff4d3d,-24.7px 8.3px 0 0 #ff4d3d,-25.5px -5.2px 0 0 #ff4d3d,-19.5px -17.2px 0 0 #ff4d3d,-8.3px -24.7px 0 0 #ff4d3d,5.2px -25.5px 0 0 #ff4d3d,17.2px -19.5px 0 0 #ff4d3d,24.7px -8.3px 0 0 #ff4d3d,13.7px 2.8px 0 0 #ffb199,7.7px 11.7px 0 0 #ffb199,-2.8px 13.7px 0 0 #ffb199,-11.7px 7.7px 0 0 #ffb199,-13.7px -2.8px 0 0 #ffb199,-7.7px -11.7px 0 0 #ffb199,2.8px -13.7px 0 0 #ffb199,11.7px -7.7px 0 0 #ffb199;animation-delay:.9s}
.fest-diwali .fw.b3{top:18%;right:-16%;box-shadow:25.5px 5.2px 0 0 #3ddc84,19.5px 17.2px 0 0 #3ddc84,8.3px 24.7px 0 0 #3ddc84,-5.2px 25.5px 0 0 #3ddc84,-17.2px 19.5px 0 0 #3ddc84,-24.7px 8.3px 0 0 #3ddc84,-25.5px -5.2px 0 0 #3ddc84,-19.5px -17.2px 0 0 #3ddc84,-8.3px -24.7px 0 0 #3ddc84,5.2px -25.5px 0 0 #3ddc84,17.2px -19.5px 0 0 #3ddc84,24.7px -8.3px 0 0 #3ddc84,13.7px 2.8px 0 0 #c8ffd9,7.7px 11.7px 0 0 #c8ffd9,-2.8px 13.7px 0 0 #c8ffd9,-11.7px 7.7px 0 0 #c8ffd9,-13.7px -2.8px 0 0 #c8ffd9,-7.7px -11.7px 0 0 #c8ffd9,2.8px -13.7px 0 0 #c8ffd9,11.7px -7.7px 0 0 #c8ffd9;animation-delay:1.8s}
.fest-diwali .fw.b4{top:58%;right:-30%;box-shadow:25.5px 5.2px 0 0 #ff5ec4,19.5px 17.2px 0 0 #ff5ec4,8.3px 24.7px 0 0 #ff5ec4,-5.2px 25.5px 0 0 #ff5ec4,-17.2px 19.5px 0 0 #ff5ec4,-24.7px 8.3px 0 0 #ff5ec4,-25.5px -5.2px 0 0 #ff5ec4,-19.5px -17.2px 0 0 #ff5ec4,-8.3px -24.7px 0 0 #ff5ec4,5.2px -25.5px 0 0 #ff5ec4,17.2px -19.5px 0 0 #ff5ec4,24.7px -8.3px 0 0 #ff5ec4,13.7px 2.8px 0 0 #ffc2ea,7.7px 11.7px 0 0 #ffc2ea,-2.8px 13.7px 0 0 #ffc2ea,-11.7px 7.7px 0 0 #ffc2ea,-13.7px -2.8px 0 0 #ffc2ea,-7.7px -11.7px 0 0 #ffc2ea,2.8px -13.7px 0 0 #ffc2ea,11.7px -7.7px 0 0 #ffc2ea;animation-delay:2.7s}
@keyframes fest-burst{
  0%,12%{opacity:0;transform:scale(.05)}
  14%{opacity:1;transform:scale(.15)}
  45%{opacity:1;transform:scale(1)}
  70%{opacity:0;transform:scale(1.12) translateY(6px)}
  100%{opacity:0;transform:scale(1.12) translateY(6px)}}
@keyframes fest-rise{
  0%{opacity:0;transform:translateY(60px)}
  3%{opacity:1}
  12%{opacity:1;transform:translateY(0)}
  14%,100%{opacity:0;transform:translateY(0)}}

@media(prefers-reduced-motion:reduce){
  .fest-deco *{animation:none!important}
  .fest-diwali .fw{opacity:.9;transform:none}
  .fest-diwali .fw::before{display:none}
}
