/*
  BRIX Special Animation - Right Grid CTA Logo Hover
  ----------------------------------------------------------------------------
  Keeps CTA button-hover logo growth isolated from the shared runtime.
*/

.brix-special-right-grid-cta .cta-right-grid-logo {
  transition: transform 420ms cubic-bezier(0.16, 1, 0.3, 1),
    filter 320ms ease;
  will-change: transform;
}

.brix-special-right-grid-cta.is-button-hovered .cta-right-grid-logo {
  transform: scale(1.08) translate3d(0, -2px, 0) !important;
  filter: drop-shadow(0 22px 42px rgba(5, 42, 120, 0.22));
}

.brix-special-right-grid-cta.bg-framer-blue.is-button-hovered .cta-right-grid-logo,
.cta---right-grid.bg-framer-blue:has(.button-primary:hover) .cta-right-grid-logo,
.cta---right-grid.bg-framer-blue:has(.button-primary:focus-visible) .cta-right-grid-logo,
.cta---right-grid.bg-framer-blue:has(.ba-button:hover) .cta-right-grid-logo,
.cta---right-grid.bg-framer-blue:has(.ba-button:focus-visible) .cta-right-grid-logo {
  transform: scale(1.12) translate3d(0, -2px, 0) !important;
  filter: drop-shadow(0 24px 46px rgba(5, 42, 120, 0.24));
}

.brix-special-right-grid-cta.bg-framer-blue .cta-right-grid.cta-right-framer {
  background-image:
    radial-gradient(circle farthest-corner at 50% 50%, transparent, var(--framer-blue) 84%),
    linear-gradient(rgba(255, 255, 255, 0.22) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.22) 1px, transparent 1px);
  background-position: 0 0, 0 0, 0 0;
  background-repeat: repeat, repeat, repeat;
  background-size: auto, 97px 97px, 97px 97px;
}

@media (prefers-reduced-motion: reduce) {
  .brix-special-right-grid-cta .cta-right-grid-logo {
    animation: none;
    transition: none;
  }
}
