/* ═══════════════════════════════════════════════════════════
   KIT: canadadsgn-infoproduto — ANIMAÇÕES
   ═══════════════════════════════════════════════════════════ */

/* ── Shinery (brilho deslizante no botão) ── */
@keyframes kit-shinery {
  0%   { left: -100%; }
  50%  { left: 110%; }
  100% { left: 110%; }
}

/* ── Brilho sutil (flash de brightness) ── */
@keyframes kit-brilho-sutil {
  0%, 100% { filter: brightness(1); }
  50%      { filter: brightness(1.3); }
}

.kit-anim-brilho-sutil {
  animation: kit-brilho-sutil 2.5s ease-in-out infinite;
}

/* ── Fade In Up ── */
@keyframes kit-fade-in-up {
  0% {
    opacity: 0;
    filter: blur(5px);
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}

.kit-anim-fade-in-up {
  animation: kit-fade-in-up 0.6s ease both;
}

/* ── Fade In ── */
@keyframes kit-fade-in {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

.kit-anim-fade-in {
  animation: kit-fade-in 0.5s ease both;
}

/* ── Slide In Left ── */
@keyframes kit-slide-in-left {
  0% {
    opacity: 0;
    transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.kit-anim-slide-in-left {
  animation: kit-slide-in-left 0.6s ease both;
}

/* ── Slide In Right ── */
@keyframes kit-slide-in-right {
  0% {
    opacity: 0;
    transform: translateX(40px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

.kit-anim-slide-in-right {
  animation: kit-slide-in-right 0.6s ease both;
}

/* ── Scale Up ── */
@keyframes kit-scale-up {
  0% {
    opacity: 0;
    transform: scale(0.85);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.kit-anim-scale-up {
  animation: kit-scale-up 0.5s ease both;
}

/* ═══════════════════════════════════════════════════════════
   SISTEMA DE PARTÍCULAS FAIRY — ORIGINAL
   20 partículas com position:fixed, keyframes individuais,
   drift (rotação) e flash (glow roxo/rosa)
   ═══════════════════════════════════════════════════════════ */

.kit-fairy-container {
  position: fixed;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}

.fairy {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 0.4vw;
  height: 0.4vw;
  margin: -0.2vw 0 0 9.8vw;
  animation: ease 200s alternate infinite;
  pointer-events: none;
}

.fairy::before,
.fairy::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  transform-origin: -10vw;
}

.fairy::before {
  background: black;
  opacity: 0.4;
  animation: drift ease alternate infinite;
}

.fairy::after {
  background: white;
  opacity: 0;
  box-shadow: 0 0 0vw 0vw var(--kit-primary);
  animation: drift ease alternate infinite, flash ease infinite;
}

/* ── Drift + Flash keyframes ── */
@keyframes drift {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@keyframes flash {
  0%, 30%, 100% {
    opacity: 0;
    box-shadow: 0 0 0vw 0vw var(--kit-primary);
  }
  5% {
    opacity: 1;
    box-shadow: 0 0 2vw 0.4vw var(--kit-primary);
  }
}

/* ── Partícula 1 ── */
.fairy:nth-child(1) { animation-name: move1; }
.fairy:nth-child(1)::before { animation-duration: 18s; }
.fairy:nth-child(1)::after { animation-duration: 18s, 10220ms; animation-delay: 0ms, 2222ms; }

@keyframes move1 {
  0% { transform: translateX(-21vw) translateY(-46vh) scale(0.93); }
  5.26% { transform: translateX(-13vw) translateY(-19vh) scale(0.36); }
  10.53% { transform: translateX(-29vw) translateY(9vh) scale(0.78); }
  15.79% { transform: translateX(21vw) translateY(-20vh) scale(0.27); }
  21.05% { transform: translateX(-26vw) translateY(13vh) scale(0.43); }
  26.32% { transform: translateX(0vw) translateY(-28vh) scale(0.61); }
  31.58% { transform: translateX(-33vw) translateY(20vh) scale(0.91); }
  36.84% { transform: translateX(-28vw) translateY(-33vh) scale(0.41); }
  42.11% { transform: translateX(4vw) translateY(-28vh) scale(0.26); }
  47.37% { transform: translateX(-16vw) translateY(6vh) scale(0.77); }
  52.63% { transform: translateX(-15vw) translateY(29vh) scale(0.65); }
  57.89% { transform: translateX(-33vw) translateY(-20vh) scale(0.39); }
  63.16% { transform: translateX(-12vw) translateY(31vh) scale(0.41); }
  68.42% { transform: translateX(36vw) translateY(28vh) scale(0.51); }
  73.68% { transform: translateX(-20vw) translateY(-16vh) scale(0.99); }
  78.95% { transform: translateX(-8vw) translateY(3vh) scale(0.41); }
  84.21% { transform: translateX(18vw) translateY(-14vh) scale(0.54); }
  89.47% { transform: translateX(16vw) translateY(18vh) scale(0.83); }
  94.74% { transform: translateX(5vw) translateY(42vh) scale(0.9); }
  100% { transform: translateX(-21vw) translateY(12vh) scale(0.5); }
}

/* ── Partícula 2 ── */
.fairy:nth-child(2) { animation-name: move2; }
.fairy:nth-child(2)::before { animation-duration: 15s; }
.fairy:nth-child(2)::after { animation-duration: 15s, 8765ms; animation-delay: 0ms, 726ms; }

@keyframes move2 {
  0% { transform: translateX(46vw) translateY(-12vh) scale(0.51); }
  4.76% { transform: translateX(2vw) translateY(28vh) scale(0.91); }
  9.52% { transform: translateX(-11vw) translateY(-45vh) scale(0.47); }
  14.29% { transform: translateX(19vw) translateY(-6vh) scale(0.35); }
  19.05% { transform: translateX(-37vw) translateY(-15vh) scale(0.51); }
  23.81% { transform: translateX(7vw) translateY(39vh) scale(0.29); }
  28.57% { transform: translateX(31vw) translateY(47vh) scale(0.68); }
  33.33% { transform: translateX(-6vw) translateY(16vh) scale(0.99); }
  38.10% { transform: translateX(-7vw) translateY(3vh) scale(0.43); }
  42.86% { transform: translateX(-18vw) translateY(-31vh) scale(0.42); }
  47.62% { transform: translateX(-38vw) translateY(3vh) scale(0.88); }
  52.38% { transform: translateX(-18vw) translateY(37vh) scale(0.93); }
  57.14% { transform: translateX(-18vw) translateY(-16vh) scale(0.73); }
  61.90% { transform: translateX(-42vw) translateY(-6vh) scale(1); }
  66.67% { transform: translateX(-39vw) translateY(-28vh) scale(0.73); }
  71.43% { transform: translateX(31vw) translateY(44vh) scale(0.68); }
  76.19% { transform: translateX(-46vw) translateY(9vh) scale(0.87); }
  80.95% { transform: translateX(-8vw) translateY(30vh) scale(0.26); }
  85.71% { transform: translateX(27vw) translateY(12vh) scale(0.66); }
  90.48% { transform: translateX(-36vw) translateY(-15vh) scale(0.52); }
  95.24% { transform: translateX(21vw) translateY(13vh) scale(0.8); }
  100% { transform: translateX(-37vw) translateY(23vh) scale(0.49); }
}

/* ── Partícula 3 ── */
.fairy:nth-child(3) { animation-name: move3; }
.fairy:nth-child(3)::before { animation-duration: 10s; }
.fairy:nth-child(3)::after { animation-duration: 10s, 5715ms; animation-delay: 0ms, 8207ms; }

@keyframes move3 {
  0% { transform: translateX(31vw) translateY(-15vh) scale(0.9); }
  4.76% { transform: translateX(2vw) translateY(37vh) scale(0.94); }
  9.52% { transform: translateX(16vw) translateY(-12vh) scale(0.99); }
  14.29% { transform: translateX(-9vw) translateY(-9vh) scale(0.28); }
  19.05% { transform: translateX(18vw) translateY(39vh) scale(0.63); }
  23.81% { transform: translateX(7vw) translateY(41vh) scale(0.92); }
  28.57% { transform: translateX(43vw) translateY(-44vh) scale(0.75); }
  33.33% { transform: translateX(16vw) translateY(20vh) scale(0.85); }
  38.10% { transform: translateX(-28vw) translateY(-19vh) scale(0.51); }
  42.86% { transform: translateX(-28vw) translateY(-13vh) scale(0.73); }
  47.62% { transform: translateX(-48vw) translateY(-13vh) scale(0.29); }
  52.38% { transform: translateX(-18vw) translateY(-43vh) scale(0.84); }
  57.14% { transform: translateX(48vw) translateY(-30vh) scale(0.78); }
  61.90% { transform: translateX(26vw) translateY(49vh) scale(0.94); }
  66.67% { transform: translateX(-7vw) translateY(-15vh) scale(0.56); }
  71.43% { transform: translateX(-15vw) translateY(44vh) scale(0.36); }
  76.19% { transform: translateX(1vw) translateY(-46vh) scale(0.28); }
  80.95% { transform: translateX(11vw) translateY(0vh) scale(0.78); }
  85.71% { transform: translateX(-7vw) translateY(27vh) scale(0.77); }
  90.48% { transform: translateX(-29vw) translateY(24vh) scale(0.52); }
  95.24% { transform: translateX(14vw) translateY(-29vh) scale(0.8); }
  100% { transform: translateX(0vw) translateY(30vh) scale(0.91); }
}

/* ── Partícula 4 ── */
.fairy:nth-child(4) { animation-name: move4; }
.fairy:nth-child(4)::before { animation-duration: 14s; }
.fairy:nth-child(4)::after { animation-duration: 14s, 7264ms; animation-delay: 0ms, 5454ms; }

@keyframes move4 {
  0% { transform: translateX(-25vw) translateY(23vh) scale(0.32); }
  7.14% { transform: translateX(-23vw) translateY(20vh) scale(0.98); }
  14.29% { transform: translateX(-11vw) translateY(-45vh) scale(0.98); }
  21.43% { transform: translateX(6vw) translateY(22vh) scale(0.28); }
  28.57% { transform: translateX(-30vw) translateY(35vh) scale(0.57); }
  35.71% { transform: translateX(-34vw) translateY(24vh) scale(0.94); }
  42.86% { transform: translateX(3vw) translateY(25vh) scale(0.3); }
  50% { transform: translateX(30vw) translateY(10vh) scale(0.6); }
  57.14% { transform: translateX(-11vw) translateY(37vh) scale(0.3); }
  64.29% { transform: translateX(-30vw) translateY(5vh) scale(0.8); }
  71.43% { transform: translateX(13vw) translateY(49vh) scale(0.72); }
  78.57% { transform: translateX(1vw) translateY(-3vh) scale(0.71); }
  85.71% { transform: translateX(-12vw) translateY(45vh) scale(0.68); }
  92.86% { transform: translateX(3vw) translateY(-21vh) scale(0.97); }
  100% { transform: translateX(-26vw) translateY(34vh) scale(0.45); }
}

/* ── Partícula 5 ── */
.fairy:nth-child(5) { animation-name: move5; }
.fairy:nth-child(5)::before { animation-duration: 18s; }
.fairy:nth-child(5)::after { animation-duration: 18s, 5280ms; animation-delay: 0ms, 1805ms; }

@keyframes move5 {
  0% { transform: translateX(-17vw) translateY(-30vh) scale(0.94); }
  8% { transform: translateX(-3vw) translateY(-26vh) scale(0.84); }
  16% { transform: translateX(-12vw) translateY(5vh) scale(0.91); }
  24% { transform: translateX(39vw) translateY(7vh) scale(0.56); }
  32% { transform: translateX(-12vw) translateY(11vh) scale(0.88); }
  40% { transform: translateX(7vw) translateY(14vh) scale(0.7); }
  48% { transform: translateX(-27vw) translateY(-12vh) scale(0.91); }
  56% { transform: translateX(-31vw) translateY(27vh) scale(0.34); }
  64% { transform: translateX(-37vw) translateY(42vh) scale(0.78); }
  72% { transform: translateX(39vw) translateY(42vh) scale(0.76); }
  80% { transform: translateX(-20vw) translateY(35vh) scale(0.74); }
  88% { transform: translateX(3vw) translateY(44vh) scale(0.52); }
  96% { transform: translateX(10vw) translateY(-39vh) scale(0.43); }
  100% { transform: translateX(26vw) translateY(-5vh) scale(0.5); }
}

/* ── Partícula 6 ── */
.fairy:nth-child(6) { animation-name: move6; }
.fairy:nth-child(6)::before { animation-duration: 16s; }
.fairy:nth-child(6)::after { animation-duration: 16s, 10675ms; animation-delay: 0ms, 2773ms; }

@keyframes move6 {
  0% { transform: translateX(-37vw) translateY(-35vh) scale(1); }
  9.52% { transform: translateX(-19vw) translateY(-26vh) scale(0.8); }
  19.05% { transform: translateX(-2vw) translateY(-17vh) scale(0.72); }
  28.57% { transform: translateX(-19vw) translateY(14vh) scale(0.56); }
  38.10% { transform: translateX(34vw) translateY(-32vh) scale(0.94); }
  47.62% { transform: translateX(-26vw) translateY(-9vh) scale(0.39); }
  57.14% { transform: translateX(-20vw) translateY(-43vh) scale(0.93); }
  66.67% { transform: translateX(-41vw) translateY(-47vh) scale(0.34); }
  76.19% { transform: translateX(-37vw) translateY(9vh) scale(0.77); }
  85.71% { transform: translateX(-41vw) translateY(-42vh) scale(0.82); }
  95.24% { transform: translateX(-47vw) translateY(6vh) scale(1); }
  100% { transform: translateX(7vw) translateY(48vh) scale(0.97); }
}

/* ── Partícula 7 ── */
.fairy:nth-child(7) { animation-name: move7; }
.fairy:nth-child(7)::before { animation-duration: 17s; }
.fairy:nth-child(7)::after { animation-duration: 17s, 10095ms; animation-delay: 0ms, 3235ms; }

@keyframes move7 {
  0% { transform: translateX(10vw) translateY(34vh) scale(0.54); }
  7.69% { transform: translateX(3vw) translateY(-42vh) scale(0.77); }
  15.38% { transform: translateX(24vw) translateY(35vh) scale(0.33); }
  23.08% { transform: translateX(7vw) translateY(3vh) scale(0.44); }
  30.77% { transform: translateX(6vw) translateY(31vh) scale(0.33); }
  38.46% { transform: translateX(-34vw) translateY(23vh) scale(0.75); }
  46.15% { transform: translateX(7vw) translateY(-3vh) scale(0.31); }
  53.85% { transform: translateX(22vw) translateY(-30vh) scale(0.92); }
  61.54% { transform: translateX(45vw) translateY(-37vh) scale(0.52); }
  69.23% { transform: translateX(14vw) translateY(-10vh) scale(0.38); }
  76.92% { transform: translateX(15vw) translateY(-24vh) scale(0.37); }
  84.62% { transform: translateX(46vw) translateY(-49vh) scale(0.4); }
  92.31% { transform: translateX(-29vw) translateY(-30vh) scale(0.92); }
  100% { transform: translateX(-27vw) translateY(-9vh) scale(0.88); }
}

/* ── Partícula 8 ── */
.fairy:nth-child(8) { animation-name: move8; }
.fairy:nth-child(8)::before { animation-duration: 11s; }
.fairy:nth-child(8)::after { animation-duration: 11s, 10818ms; animation-delay: 0ms, 8395ms; }

@keyframes move8 {
  0% { transform: translateX(11vw) translateY(-1vh) scale(0.52); }
  8.33% { transform: translateX(27vw) translateY(-40vh) scale(0.92); }
  16.67% { transform: translateX(-1vw) translateY(-31vh) scale(0.42); }
  25% { transform: translateX(30vw) translateY(42vh) scale(0.85); }
  33.33% { transform: translateX(-13vw) translateY(-19vh) scale(0.87); }
  41.67% { transform: translateX(-44vw) translateY(-39vh) scale(0.69); }
  50% { transform: translateX(18vw) translateY(31vh) scale(0.75); }
  58.33% { transform: translateX(-11vw) translateY(-14vh) scale(0.57); }
  66.67% { transform: translateX(36vw) translateY(-18vh) scale(0.56); }
  75% { transform: translateX(-3vw) translateY(46vh) scale(0.58); }
  83.33% { transform: translateX(15vw) translateY(15vh) scale(0.79); }
  91.67% { transform: translateX(5vw) translateY(29vh) scale(0.55); }
  100% { transform: translateX(-22vw) translateY(34vh) scale(0.35); }
}

/* ── Partícula 9 ── */
.fairy:nth-child(9) { animation-name: move9; }
.fairy:nth-child(9)::before { animation-duration: 11s; }
.fairy:nth-child(9)::after { animation-duration: 11s, 10984ms; animation-delay: 0ms, 4938ms; }

@keyframes move9 {
  0% { transform: translateX(-33vw) translateY(33vh) scale(0.27); }
  11.11% { transform: translateX(-44vw) translateY(-2vh) scale(0.86); }
  22.22% { transform: translateX(3vw) translateY(-48vh) scale(0.36); }
  33.33% { transform: translateX(-33vw) translateY(-48vh) scale(0.35); }
  44.44% { transform: translateX(-2vw) translateY(-32vh) scale(0.46); }
  55.56% { transform: translateX(39vw) translateY(-13vh) scale(0.43); }
  66.67% { transform: translateX(1vw) translateY(1vh) scale(0.37); }
  77.78% { transform: translateX(16vw) translateY(3vh) scale(0.59); }
  88.89% { transform: translateX(27vw) translateY(13vh) scale(0.56); }
  100% { transform: translateX(-5vw) translateY(34vh) scale(0.71); }
}

/* ── Partícula 10 ── */
.fairy:nth-child(10) { animation-name: move10; }
.fairy:nth-child(10)::before { animation-duration: 13s; }
.fairy:nth-child(10)::after { animation-duration: 13s, 9253ms; animation-delay: 0ms, 6033ms; }

@keyframes move10 {
  0% { transform: translateX(50vw) translateY(22vh) scale(0.28); }
  8.70% { transform: translateX(-41vw) translateY(45vh) scale(0.48); }
  17.39% { transform: translateX(-12vw) translateY(5vh) scale(0.84); }
  26.09% { transform: translateX(4vw) translateY(49vh) scale(0.67); }
  34.78% { transform: translateX(47vw) translateY(4vh) scale(0.69); }
  43.48% { transform: translateX(34vw) translateY(-46vh) scale(0.64); }
  52.17% { transform: translateX(-6vw) translateY(-14vh) scale(0.7); }
  60.87% { transform: translateX(47vw) translateY(35vh) scale(0.35); }
  69.57% { transform: translateX(1vw) translateY(-21vh) scale(0.64); }
  78.26% { transform: translateX(12vw) translateY(6vh) scale(0.76); }
  86.96% { transform: translateX(37vw) translateY(9vh) scale(0.5); }
  95.65% { transform: translateX(43vw) translateY(-14vh) scale(0.94); }
  100% { transform: translateX(37vw) translateY(-28vh) scale(0.57); }
}

/* ── Partícula 11 ── */
.fairy:nth-child(11) { animation-name: move11; }
.fairy:nth-child(11)::before { animation-duration: 11s; }
.fairy:nth-child(11)::after { animation-duration: 11s, 9575ms; animation-delay: 0ms, 3130ms; }

@keyframes move11 {
  0% { transform: translateX(-48vw) translateY(18vh) scale(0.95); }
  8.70% { transform: translateX(31vw) translateY(44vh) scale(0.83); }
  17.39% { transform: translateX(48vw) translateY(18vh) scale(0.66); }
  26.09% { transform: translateX(-44vw) translateY(13vh) scale(0.92); }
  34.78% { transform: translateX(43vw) translateY(14vh) scale(0.49); }
  43.48% { transform: translateX(33vw) translateY(-32vh) scale(0.76); }
  52.17% { transform: translateX(43vw) translateY(-24vh) scale(0.3); }
  60.87% { transform: translateX(-29vw) translateY(-36vh) scale(0.5); }
  69.57% { transform: translateX(-47vw) translateY(48vh) scale(0.67); }
  78.26% { transform: translateX(-46vw) translateY(-18vh) scale(0.7); }
  86.96% { transform: translateX(-44vw) translateY(-23vh) scale(0.51); }
  95.65% { transform: translateX(-33vw) translateY(-5vh) scale(0.47); }
  100% { transform: translateX(2vw) translateY(16vh) scale(0.33); }
}

/* ── Partícula 12 ── */
.fairy:nth-child(12) { animation-name: move12; }
.fairy:nth-child(12)::before { animation-duration: 13s; }
.fairy:nth-child(12)::after { animation-duration: 13s, 6767ms; animation-delay: 0ms, 7722ms; }

@keyframes move12 {
  0% { transform: translateX(2vw) translateY(-22vh) scale(0.81); }
  11.76% { transform: translateX(-28vw) translateY(39vh) scale(0.74); }
  23.53% { transform: translateX(-47vw) translateY(-42vh) scale(0.52); }
  35.29% { transform: translateX(12vw) translateY(-33vh) scale(0.77); }
  47.06% { transform: translateX(35vw) translateY(5vh) scale(0.8); }
  58.82% { transform: translateX(-19vw) translateY(-37vh) scale(0.37); }
  70.59% { transform: translateX(37vw) translateY(9vh) scale(0.62); }
  82.35% { transform: translateX(-47vw) translateY(30vh) scale(0.27); }
  94.12% { transform: translateX(-6vw) translateY(-36vh) scale(0.28); }
  100% { transform: translateX(-1vw) translateY(30vh) scale(0.75); }
}

/* ── Partícula 13 ── */
.fairy:nth-child(13) { animation-name: move13; }
.fairy:nth-child(13)::before { animation-duration: 12s; }
.fairy:nth-child(13)::after { animation-duration: 12s, 10306ms; animation-delay: 0ms, 7202ms; }

@keyframes move13 {
  0% { transform: translateX(22vw) translateY(-42vh) scale(0.69); }
  9.52% { transform: translateX(-14vw) translateY(-8vh) scale(0.78); }
  19.05% { transform: translateX(34vw) translateY(20vh) scale(0.94); }
  28.57% { transform: translateX(-5vw) translateY(21vh) scale(0.64); }
  38.10% { transform: translateX(18vw) translateY(-7vh) scale(0.89); }
  47.62% { transform: translateX(40vw) translateY(46vh) scale(0.72); }
  57.14% { transform: translateX(36vw) translateY(-34vh) scale(0.8); }
  66.67% { transform: translateX(-30vw) translateY(-10vh) scale(0.75); }
  76.19% { transform: translateX(42vw) translateY(0vh) scale(0.91); }
  85.71% { transform: translateX(17vw) translateY(44vh) scale(0.28); }
  95.24% { transform: translateX(-31vw) translateY(31vh) scale(0.74); }
  100% { transform: translateX(34vw) translateY(11vh) scale(0.34); }
}

/* ── Partícula 14 ── */
.fairy:nth-child(14) { animation-name: move14; }
.fairy:nth-child(14)::before { animation-duration: 15s; }
.fairy:nth-child(14)::after { animation-duration: 15s, 6113ms; animation-delay: 0ms, 1903ms; }

@keyframes move14 {
  0% { transform: translateX(5vw) translateY(-13vh) scale(0.69); }
  7.14% { transform: translateX(16vw) translateY(44vh) scale(0.53); }
  14.29% { transform: translateX(40vw) translateY(-27vh) scale(0.97); }
  21.43% { transform: translateX(-10vw) translateY(-19vh) scale(0.79); }
  28.57% { transform: translateX(23vw) translateY(8vh) scale(0.87); }
  35.71% { transform: translateX(27vw) translateY(23vh) scale(0.69); }
  42.86% { transform: translateX(-36vw) translateY(-48vh) scale(0.7); }
  50% { transform: translateX(-2vw) translateY(45vh) scale(0.32); }
  57.14% { transform: translateX(49vw) translateY(47vh) scale(0.49); }
  64.29% { transform: translateX(-33vw) translateY(-47vh) scale(0.62); }
  71.43% { transform: translateX(47vw) translateY(50vh) scale(0.86); }
  78.57% { transform: translateX(50vw) translateY(-24vh) scale(0.28); }
  85.71% { transform: translateX(-45vw) translateY(-10vh) scale(0.54); }
  92.86% { transform: translateX(27vw) translateY(12vh) scale(0.81); }
  100% { transform: translateX(14vw) translateY(33vh) scale(0.62); }
}

/* ── Partícula 15 ── */
.fairy:nth-child(15) { animation-name: move15; }
.fairy:nth-child(15)::before { animation-duration: 18s; }
.fairy:nth-child(15)::after { animation-duration: 18s, 8826ms; animation-delay: 0ms, 5762ms; }

@keyframes move15 {
  0% { transform: translateX(2vw) translateY(-32vh) scale(0.92); }
  11.76% { transform: translateX(-37vw) translateY(9vh) scale(0.71); }
  23.53% { transform: translateX(-40vw) translateY(-48vh) scale(0.4); }
  35.29% { transform: translateX(14vw) translateY(28vh) scale(0.89); }
  47.06% { transform: translateX(-36vw) translateY(-2vh) scale(1); }
  58.82% { transform: translateX(-10vw) translateY(40vh) scale(0.9); }
  70.59% { transform: translateX(6vw) translateY(-37vh) scale(0.34); }
  82.35% { transform: translateX(-27vw) translateY(49vh) scale(0.75); }
  94.12% { transform: translateX(25vw) translateY(50vh) scale(0.47); }
  100% { transform: translateX(-30vw) translateY(-48vh) scale(0.61); }
}

/* ── Partícula 16 ── */
.fairy:nth-child(16) { animation-name: move16; }
.fairy:nth-child(16)::before { animation-duration: 13s; }
.fairy:nth-child(16)::after { animation-duration: 13s, 8342ms; animation-delay: 0ms, 8340ms; }

@keyframes move16 {
  0% { transform: translateX(-30vw) translateY(-2vh) scale(0.4); }
  7.69% { transform: translateX(39vw) translateY(-32vh) scale(0.69); }
  15.38% { transform: translateX(6vw) translateY(-36vh) scale(0.57); }
  23.08% { transform: translateX(10vw) translateY(49vh) scale(0.71); }
  30.77% { transform: translateX(-18vw) translateY(-32vh) scale(0.58); }
  38.46% { transform: translateX(-35vw) translateY(9vh) scale(0.54); }
  46.15% { transform: translateX(-31vw) translateY(19vh) scale(0.27); }
  53.85% { transform: translateX(11vw) translateY(9vh) scale(0.37); }
  61.54% { transform: translateX(-22vw) translateY(22vh) scale(0.5); }
  69.23% { transform: translateX(-13vw) translateY(25vh) scale(0.42); }
  76.92% { transform: translateX(-4vw) translateY(-9vh) scale(0.7); }
  84.62% { transform: translateX(-15vw) translateY(-35vh) scale(0.88); }
  92.31% { transform: translateX(-32vw) translateY(31vh) scale(0.95); }
  100% { transform: translateX(-2vw) translateY(-43vh) scale(0.66); }
}

/* ── Partícula 17 ── */
.fairy:nth-child(17) { animation-name: move17; }
.fairy:nth-child(17)::before { animation-duration: 11s; }
.fairy:nth-child(17)::after { animation-duration: 11s, 7347ms; animation-delay: 0ms, 4811ms; }

@keyframes move17 {
  0% { transform: translateX(42vw) translateY(-2vh) scale(0.91); }
  9.09% { transform: translateX(-1vw) translateY(-16vh) scale(0.96); }
  18.18% { transform: translateX(-41vw) translateY(44vh) scale(0.58); }
  27.27% { transform: translateX(50vw) translateY(-36vh) scale(0.61); }
  36.36% { transform: translateX(-33vw) translateY(-11vh) scale(0.95); }
  45.45% { transform: translateX(-35vw) translateY(-22vh) scale(0.82); }
  54.55% { transform: translateX(41vw) translateY(3vh) scale(0.48); }
  63.64% { transform: translateX(3vw) translateY(-16vh) scale(0.6); }
  72.73% { transform: translateX(25vw) translateY(2vh) scale(0.7); }
  81.82% { transform: translateX(25vw) translateY(-30vh) scale(0.31); }
  90.91% { transform: translateX(-5vw) translateY(-22vh) scale(0.99); }
  100% { transform: translateX(-12vw) translateY(-37vh) scale(0.36); }
}

/* ── Partícula 18 ── */
.fairy:nth-child(18) { animation-name: move18; }
.fairy:nth-child(18)::before { animation-duration: 15s; }
.fairy:nth-child(18)::after { animation-duration: 15s, 8188ms; animation-delay: 0ms, 2541ms; }

@keyframes move18 {
  0% { transform: translateX(0vw) translateY(18vh) scale(0.45); }
  7.69% { transform: translateX(30vw) translateY(0vh) scale(0.87); }
  15.38% { transform: translateX(13vw) translateY(4vh) scale(0.36); }
  23.08% { transform: translateX(-36vw) translateY(-7vh) scale(0.73); }
  30.77% { transform: translateX(25vw) translateY(-38vh) scale(0.78); }
  38.46% { transform: translateX(-6vw) translateY(-19vh) scale(0.46); }
  46.15% { transform: translateX(-17vw) translateY(-46vh) scale(0.35); }
  53.85% { transform: translateX(10vw) translateY(-45vh) scale(0.39); }
  61.54% { transform: translateX(-35vw) translateY(-31vh) scale(0.93); }
  69.23% { transform: translateX(32vw) translateY(-28vh) scale(0.36); }
  76.92% { transform: translateX(31vw) translateY(39vh) scale(0.41); }
  84.62% { transform: translateX(18vw) translateY(17vh) scale(0.78); }
  92.31% { transform: translateX(-21vw) translateY(-30vh) scale(0.78); }
  100% { transform: translateX(28vw) translateY(42vh) scale(0.74); }
}

/* ── Partícula 19 ── */
.fairy:nth-child(19) { animation-name: move19; }
.fairy:nth-child(19)::before { animation-duration: 9s; }
.fairy:nth-child(19)::after { animation-duration: 9s, 10715ms; animation-delay: 0ms, 5332ms; }

@keyframes move19 {
  0% { transform: translateX(23vw) translateY(-40vh) scale(0.61); }
  9.52% { transform: translateX(-23vw) translateY(47vh) scale(0.68); }
  19.05% { transform: translateX(27vw) translateY(-28vh) scale(0.63); }
  28.57% { transform: translateX(37vw) translateY(-39vh) scale(0.29); }
  38.10% { transform: translateX(-3vw) translateY(-16vh) scale(0.93); }
  47.62% { transform: translateX(43vw) translateY(26vh) scale(0.6); }
  57.14% { transform: translateX(26vw) translateY(-15vh) scale(0.56); }
  66.67% { transform: translateX(48vw) translateY(50vh) scale(0.67); }
  76.19% { transform: translateX(-34vw) translateY(-28vh) scale(0.87); }
  85.71% { transform: translateX(-38vw) translateY(-22vh) scale(0.55); }
  95.24% { transform: translateX(21vw) translateY(-27vh) scale(0.36); }
  100% { transform: translateX(-21vw) translateY(-14vh) scale(0.9); }
}

/* ── Partícula 20 ── */
.fairy:nth-child(20) { animation-name: move20; }
.fairy:nth-child(20)::before { animation-duration: 9s; }
.fairy:nth-child(20)::after { animation-duration: 9s, 8424ms; animation-delay: 0ms, 3921ms; }

@keyframes move20 {
  0% { transform: translateX(-42vw) translateY(-40vh) scale(0.75); }
  9.52% { transform: translateX(-21vw) translateY(34vh) scale(0.71); }
  19.05% { transform: translateX(-33vw) translateY(-44vh) scale(0.85); }
  28.57% { transform: translateX(19vw) translateY(-46vh) scale(0.57); }
  38.10% { transform: translateX(10vw) translateY(-14vh) scale(0.65); }
  47.62% { transform: translateX(-29vw) translateY(-35vh) scale(0.91); }
  57.14% { transform: translateX(-36vw) translateY(36vh) scale(0.62); }
  66.67% { transform: translateX(-27vw) translateY(8vh) scale(0.84); }
  76.19% { transform: translateX(-32vw) translateY(10vh) scale(0.45); }
  85.71% { transform: translateX(-22vw) translateY(37vh) scale(0.61); }
  95.24% { transform: translateX(11vw) translateY(39vh) scale(0.4); }
  100% { transform: translateX(44vw) translateY(21vh) scale(0.27); }
}

/* ── Stagger delays (para animações em sequência) ── */
.kit-delay-1 { animation-delay: 0.1s; }
.kit-delay-2 { animation-delay: 0.2s; }
.kit-delay-3 { animation-delay: 0.3s; }
.kit-delay-4 { animation-delay: 0.4s; }
.kit-delay-5 { animation-delay: 0.5s; }
.kit-delay-6 { animation-delay: 0.6s; }
.kit-delay-7 { animation-delay: 0.7s; }
.kit-delay-8 { animation-delay: 0.8s; }

/* ── Reduce motion ── */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  .kit-fairy-container {
    display: none;
  }
}
