#contato.contact-with-logo {
  padding-top: clamp(16rem, 23vw, 20rem);
}

.contact-logo-stage {
  position: absolute !important;
  inset: clamp(3rem, 5vw, 5rem) 0 auto;
  z-index: 3 !important;
  display: flex;
  justify-content: center;
  padding-inline: 1.5rem;
  pointer-events: none;
}

.contact-logo-aura {
  isolation: isolate;
  position: relative;
  width: clamp(13rem, 19vw, 17rem);
  padding: 0.85rem 1rem;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 1.35rem;
  background: rgba(255, 255, 255, 0.97);
  box-shadow:
    0 24px 70px rgba(5, 35, 88, 0.26),
    0 0 0 1px rgba(255, 178, 105, 0.14),
    0 0 44px rgba(255, 159, 75, 0.2);
  animation: contact-logo-breathe 4.8s ease-in-out infinite;
}

.contact-logo-aura::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -38%;
  border-radius: 50%;
  background: conic-gradient(
    from 90deg,
    rgba(29, 94, 200, 0.08),
    rgba(255, 169, 91, 0.55),
    rgba(255, 232, 203, 0.7),
    rgba(29, 94, 200, 0.3),
    rgba(255, 169, 91, 0.55)
  );
  filter: blur(22px);
  animation: contact-logo-orbit 7s linear infinite;
}

.contact-logo-aura::after {
  content: "";
  position: absolute;
  inset: -35% auto -35% -42%;
  width: 32%;
  pointer-events: none;
  transform: translateX(-180%) rotate(16deg);
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.88), transparent);
  filter: blur(1px);
  animation: contact-logo-shine 4.6s cubic-bezier(0.22, 1, 0.36, 1) infinite 1s;
}

.contact-logo-aura img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.75rem;
  animation: contact-logo-float 4.8s ease-in-out infinite;
}

@keyframes contact-logo-breathe {
  0%, 100% {
    box-shadow: 0 24px 70px rgba(5, 35, 88, 0.26), 0 0 0 1px rgba(255, 178, 105, 0.14), 0 0 38px rgba(255, 159, 75, 0.16);
  }
  50% {
    box-shadow: 0 28px 80px rgba(5, 35, 88, 0.32), 0 0 0 1px rgba(255, 198, 139, 0.38), 0 0 66px rgba(255, 174, 94, 0.34);
  }
}

@keyframes contact-logo-orbit {
  to { transform: rotate(360deg); }
}

@keyframes contact-logo-shine {
  0%, 18% { transform: translateX(-180%) rotate(16deg); opacity: 0; }
  35% { opacity: 1; }
  58%, 100% { transform: translateX(650%) rotate(16deg); opacity: 0; }
}

@keyframes contact-logo-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}

@media (max-width: 48rem) {
  #contato.contact-with-logo {
    padding-top: 13.5rem;
  }

  .contact-logo-stage {
    top: 2.6rem;
  }

  .contact-logo-aura {
    width: min(13rem, 72vw);
    padding: 0.7rem 0.85rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-logo-aura,
  .contact-logo-aura::before,
  .contact-logo-aura::after,
  .contact-logo-aura img {
    animation: none !important;
  }
}
