/* Home page motion layer. Kept separate so the shared site styles remain unchanged. */
.home-motion-enabled {
    --home-hero-shift: 0px;
    --home-hero-pointer-x: 0px;
    --home-hero-pointer-y: 0px;
}

.home-motion-enabled .ai-hero-box-1::before {
    animation-name: homeHeroZoom;
    transform: translate3d(0, var(--home-hero-shift), 0) scale(1.05);
    will-change: transform;
}

@keyframes homeHeroZoom {
    from { transform: translate3d(0, var(--home-hero-shift), 0) scale(1.05); }
    to { transform: translate3d(0, var(--home-hero-shift), 0) scale(1.12); }
}

.home-motion-enabled .diamond-wrap-1 {
    transform: translate3d(var(--home-hero-pointer-x), var(--home-hero-pointer-y), 0);
    transition: transform 600ms cubic-bezier(.2, .8, .2, 1);
    will-change: transform;
}

.home-motion-enabled .home-motion-section > *:not(.global-prism-1):not(.corner-star):not(canvas) {
    opacity: 0;
    transform: translate3d(0, 24px, 0);
    will-change: opacity, transform;
}

.home-motion-enabled .home-motion-section.motion-visible > *:not(.global-prism-1):not(.corner-star):not(canvas) {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: opacity 700ms ease, transform 700ms cubic-bezier(.2, .8, .2, 1);
}

.home-motion-enabled .home-motion-section.motion-visible > *:nth-child(3) {
    transition-delay: 80ms;
}

.home-motion-enabled .home-motion-section.motion-visible > *:nth-child(4) {
    transition-delay: 160ms;
}

.home-motion-enabled .home-motion-image {
    opacity: 0;
    transition: opacity 650ms ease;
}

.home-motion-enabled .home-motion-image.motion-image-visible {
    opacity: 1;
}

.home-motion-enabled .pearl-card,
.home-motion-enabled .service-card-new,
.home-motion-enabled .feature-card,
.home-motion-enabled .partner-card,
.home-motion-enabled .consult-mini-card,
.home-motion-enabled .image-card,
.home-motion-enabled .stat-card,
.home-motion-enabled .standout-img-card {
    transition: transform 360ms cubic-bezier(.2, .8, .2, 1), box-shadow 360ms ease, border-color 360ms ease;
    will-change: transform;
}

.home-motion-enabled .pearl-card:hover {
    transform: translate3d(0, -7px, 0) scale(1.015);
}

.home-motion-enabled .service-card-new:hover,
.home-motion-enabled .feature-card:hover,
.home-motion-enabled .partner-card:hover,
.home-motion-enabled .consult-mini-card:hover,
.home-motion-enabled .image-card:hover,
.home-motion-enabled .stat-card:hover,
.home-motion-enabled .standout-img-card:hover {
    transform: translate3d(0, -7px, 0) scale(1.015);
}

.home-motion-enabled .site-header,
.home-motion-enabled .site-header .navbar {
    transition: background-color 350ms ease, box-shadow 350ms ease, backdrop-filter 350ms ease;
}

.home-motion-enabled .site-header.is-scrolled,
.home-motion-enabled .site-header.is-scrolled .navbar {
    background-color: rgba(255, 255, 255, .9) !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.home-motion-enabled .home-motion-button {
    will-change: transform;
    transform-origin: center;
}

@media (prefers-reduced-motion: reduce) {
    .home-motion-enabled .ai-hero-box-1::before,
    .home-motion-enabled .diamond-wrap-1,
    .home-motion-enabled .home-motion-section > *:not(.global-prism-1):not(.corner-star):not(canvas),
    .home-motion-enabled .home-motion-image,
    .home-motion-enabled .pearl-card,
    .home-motion-enabled .service-card-new,
    .home-motion-enabled .feature-card,
    .home-motion-enabled .partner-card,
    .home-motion-enabled .consult-mini-card,
    .home-motion-enabled .image-card,
    .home-motion-enabled .stat-card,
    .home-motion-enabled .standout-img-card {
        animation: none !important;
        transition: none !important;
        transform: none !important;
        opacity: 1 !important;
    }
}
