/* ==========================================================================
   THE WEDDING WORLD — animations.css
   Nothing but @keyframes. Held off the critical path deliberately: an
   animation whose keyframes have not loaded yet renders the element in its
   normal state, so the opening paints immediately and begins to move a
   moment later rather than waiting on this file.
   Split out of the original single wedding.css; rules are unchanged and in
   their original order. Load order is critical → main → animations.
   ========================================================================== */
@keyframes drift{to{transform:translate3d(-76px,-76px,0)}}
@keyframes sunBreathe{0%,100%{opacity:.86;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}}
@keyframes cloudDrift{to{transform:translate3d(-50%,0,0)}}
@keyframes mistDrift{to{transform:translate3d(14%,0,0)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes sheen{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes halo{0%{transform:scale(.95);opacity:.85}100%{transform:scale(1.2);opacity:0}}
@keyframes ray{0%,100%{opacity:.35}50%{opacity:.9}}
@keyframes sway{0%,100%{transform:rotate(-1.6deg)}50%{transform:rotate(1.6deg)}}
@keyframes flicker{0%,100%{opacity:.55;transform:scale(1)}38%{opacity:.9;transform:scale(1.12)}62%{opacity:.62;transform:scale(.96)}}
@keyframes float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-7px,0)}}
@keyframes ping{0%{transform:scale(.82);opacity:0}22%{opacity:.7}100%{transform:scale(1.28);opacity:0}}
@keyframes breathe{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.07)}}
@keyframes blencong{
  0%,100%{opacity:.8;transform:translate(-50%,-50%) scale(1)}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.045)}
}
@keyframes gnnIn{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@keyframes wygSway{
  0%,100%{transform:translate3d(0,0,0) rotate(-.28deg)}
  50%{transform:translate3d(0,-4px,0) rotate(.28deg)}
}
@keyframes eq{0%,100%{height:4px}50%{height:14px}}
@keyframes dots{0%,100%{opacity:.22;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}
@keyframes skel{0%{background-position:120% 0}100%{background-position:-40% 0}}
@keyframes wIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
