/* Motion enhances the existing design without changing layout or hiding content. */
@media (prefers-reduced-motion: no-preference) {
    .motion-pending {
        opacity: 0;
        will-change: opacity, transform, filter, clip-path;
    }
    .motion-pending:focus-within {
        opacity: 1;
        transform: none !important;
        filter: none !important;
        clip-path: none !important;
    }
    html { scroll-behavior: smooth; }
    :is(.service-showcase-image, .portfolio-image) { overflow: hidden; }
    :is(.service-showcase-image, .portfolio-image) img {
        transition: transform .8s cubic-bezier(.2,.65,.25,1);
    }
    :is(.portfolio-card, .testimonial-card, .service-feature-card, .reviewhub-card) {
        transition: transform .35s cubic-bezier(.2,.75,.25,1), border-color .35s ease, box-shadow .35s ease;
    }
    .nav-links > a:not(.customer-login) { transition: color .25s ease; }
    :is(.btn, .nav-btn) svg { transition: transform .3s ease; }
    @media (hover: hover) and (pointer: fine) {
        .service-showcase-image:hover img { transform: scale(1.035); }
        :is(.portfolio-card, .testimonial-card, .service-feature-card, .reviewhub-card):hover {
            transform: translateY(-5px);
            border-color: rgba(255,138,53,.45);
            box-shadow: 0 18px 36px rgba(0,0,0,.2);
        }
        :is(.btn, .nav-btn):hover svg { transform: translateX(3px); }
    }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto !important; }
    *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* Quote reveals only move and fade; avoid allocating filter/clip-path layers. */
@media (prefers-reduced-motion: no-preference) {
    .premium-quote-page .motion-pending { will-change: opacity, transform; }
}
