/* FAQ motion owner. Extracted from site.css Stage 3.5. */
/* Civius FAQ motion component 20260528-step4 */
.faq-item.civius-faq-animated,
.faq details.civius-faq-motion {
  overflow: hidden;
  contain: layout paint;
}

.faq-item.civius-faq-animated p,
.faq details.civius-faq-motion p {
  max-height: none;
  height: 0;
  display: block;
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  transition:
    height 340ms cubic-bezier(0.22, 0.68, 0.24, 1),
    opacity 210ms ease,
    transform 340ms cubic-bezier(0.22, 0.68, 0.24, 1),
    padding-bottom 340ms cubic-bezier(0.22, 0.68, 0.24, 1);
  will-change: height, opacity, transform;
  contain: layout paint;
}

.faq-item.civius-faq-animated.is-open p,
.faq details.civius-faq-motion.is-open p {
  opacity: 1;
  transform: translateY(0);
}

.faq details.civius-faq-motion summary::after,
.faq-item.civius-faq-animated .faq-icon::before,
.faq-item.civius-faq-animated .faq-icon::after {
  transition-duration: 340ms;
  transition-timing-function: cubic-bezier(0.22, 0.68, 0.24, 1);
}

.civius-home-faq-item.is-open .civius-home-faq-item__icon {
  background: rgba(23, 120, 255, 0.08);
  border-color: rgba(23, 120, 255, 0.18);
}

.civius-home-faq-item.is-open .civius-home-faq-item__icon::after {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}

.civius-home-faq-item[open]:not(.is-open) .civius-home-faq-item__icon {
  background: rgba(23, 120, 255, 0.04);
  border-color: rgba(17, 30, 53, 0.12);
}

.civius-home-faq-item[open]:not(.is-open) .civius-home-faq-item__icon::after {
  opacity: 1;
  transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item.is-open .faq-icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.faq-item.is-open .faq-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.faq-item[open]:not(.is-open) .faq-icon::before {
  transform: translate(-78%, -50%) rotate(42deg);
}

.faq-item[open]:not(.is-open) .faq-icon::after {
  opacity: 1;
  transform: translate(-22%, -50%) rotate(-42deg);
}
