/* ==========================================================
   PLACEBOES FOOTER ANIMATIONS
========================================================== */

/* ==========================================================
   FOOTER LINK ANIMATION
========================================================== */

.prf-footer a {
  position: relative;
  display: inline-block;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.prf-footer a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease;
}

.prf-footer a:hover {
  transform: translateX(3px);
}

.prf-footer a:hover::after {
  transform: scaleX(1);
}

/* ==========================================================
   SOCIAL ICON ANIMATION
========================================================== */

.prf-footer .social-icon {
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.prf-footer .social-icon:hover {
  transform: translateY(-3px) scale(1.08);
  opacity: 0.9;
}

/* ==========================================================
   FOOTER COLUMN ENTRANCE
========================================================== */

/* Default state remains visible.

   This is important for Bootstrap Studio's Design canvas.
   JavaScript will add .footer-animate when the page runs,
   and then the entrance animation is enabled. */

.prf-footer .footer-column {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* Hidden starting state used only when JS enables animation */

.prf-footer.footer-animate .footer-column {
  opacity: 0;
  transform: translateY(18px);
}

/* Visible state */

.prf-footer.footer-animate.footer-visible .footer-column {
  opacity: 1;
  transform: translateY(0);
}

/* ==========================================================
   STAGGERED TIMING
========================================================== */

.prf-footer.footer-animate.footer-visible .footer-column:nth-child(2) {
  transition-delay: 0.08s;
}

.prf-footer.footer-animate.footer-visible .footer-column:nth-child(3) {
  transition-delay: 0.16s;
}

.prf-footer.footer-animate.footer-visible .footer-column:nth-child(4) {
  transition-delay: 0.24s;
}

/* ==========================================================
   ACCESSIBILITY
========================================================== */

@media (prefers-reduced-motion: reduce) {
  .prf-footer *, .prf-footer *::before, .prf-footer *::after {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .prf-footer .footer-column {
    opacity: 1 !important;
  }
}

