/* Weather is confined to the artwork and stays below interactive copy. */
.mjqn-rain-target{position:relative;overflow:hidden}
.mjqn-rain{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none!important;user-select:none;opacity:0;transition:opacity .45s ease;contain:strict;--rain-gust:.5}
.mjqn-rain.is-running{opacity:1}
.inner-hero>.mjqn-rain{z-index:0}
.mjqn-rain-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:1}
.mjqn-rain-fog{position:absolute;left:-16%;bottom:-8%;width:135%;height:33%;pointer-events:none;opacity:0;filter:blur(16px);background:radial-gradient(ellipse at 49% 74%,rgba(140,177,183,.24),rgba(109,153,163,.10) 36%,transparent 69%);transform-origin:50% 80%;animation:mjqn-rain-fog-left 15s linear infinite;animation-play-state:paused;will-change:transform,opacity}
.mjqn-rain-fog-front{bottom:-14%;left:-21%;height:36%;background:radial-gradient(ellipse at 64% 66%,rgba(145,182,184,.16),rgba(109,153,163,.06) 42%,transparent 70%);animation-duration:21s;animation-delay:-9s}
.mjqn-rain.is-running .mjqn-rain-fog{animation-play-state:running}
.inner-hero .mjqn-rain-fog{height:43%;filter:blur(12px);background:radial-gradient(ellipse at 50% 85%,rgba(136,173,182,.12),transparent 70%)}
html[data-effects="off"] .mjqn-rain{display:none!important}
/* Each bank fades out before restarting at the upwind edge; it never plays backwards. */
@keyframes mjqn-rain-fog-left{
  0%{transform:translate3d(14%,1%,0) scale(1);opacity:0}
  18%{opacity:.18}
  55%{opacity:.31}
  82%{opacity:.17}
  100%{transform:translate3d(calc(-13% - var(--rain-gust,.5)*4%),-4%,0) scale(1.09);opacity:0}
}
@media(max-width:767px){
  .mjqn-rain-fog{filter:blur(11px);height:29%;animation-duration:14s}
  .mjqn-rain-fog-front{height:25%;animation-duration:20s;opacity:.16}
}
@media(prefers-reduced-motion:reduce){
  .mjqn-rain{display:none!important}
  .mjqn-rain-fog{animation:none!important;will-change:auto}
}
