/* Homepage interaction layer. Keep feedback quiet and technical: no layout-moving properties. */
.home .button {
    transition: color 240ms ease, background-color 240ms ease, border-color 240ms ease;
}

.home .button svg,
.home .hero__product-links svg,
.home .route-strip__link svg:last-child,
.home .category-card__arrow,
.home .category-card__arrow svg,
.home .news-card__action svg {
    transition: color 240ms ease, background-color 240ms ease, border-color 240ms ease, transform 300ms cubic-bezier(.16, 1, .3, 1);
}

.home .hero__product-links a,
.home .route-strip__link,
.home .site-footer a {
    transition: color 240ms ease, background-color 240ms ease;
}

.home .category-card {
    transition: color 240ms ease, background-color 240ms ease, box-shadow 300ms ease, transform 300ms cubic-bezier(.16, 1, .3, 1);
}

.home .category-card__img img {
    transition: transform 450ms cubic-bezier(.16, 1, .3, 1);
}

.home .application-card {
    transition: color 240ms ease, background-color 240ms ease, box-shadow 300ms ease, transform 300ms cubic-bezier(.16, 1, .3, 1);
}

.home .application-card__number,
.home .product-card__action,
.home .news-card__action {
    transition: color 240ms ease;
}

.home .product-card,
.home .news-card {
    transition: color 240ms ease, background-color 240ms ease, box-shadow 300ms ease, transform 300ms cubic-bezier(.16, 1, .3, 1);
}

.home .product-card__image {
    transition: transform 450ms cubic-bezier(.16, 1, .3, 1);
}

@media (hover: hover) and (pointer: fine) {
    .home .hero__product-links a:hover svg,
    .home .route-strip__link:hover svg:last-child,
    .home .news-card:hover .news-card__action svg {
        transform: translateX(4px);
    }

    .home .category-card:hover {
        background-color: #edf3f8;
        box-shadow: 0 18px 38px #26364c1a;
    }

    .home .category-card:hover .category-card__img img {
        transform: scale(1.025);
    }

    .home .category-card:hover .category-card__arrow {
        border-color: #146ef5;
        background-color: #146ef5;
        color: #fff;
    }

    .home .category-card:hover .category-card__arrow svg {
        transform: translateX(3px);
    }

    .home .application-card:hover {
        transform: translateY(-3px);
    }

    .home .application-card:hover .application-card__number {
        color: #7fa7df;
    }

    .home .product-card:hover .product-card__action,
    .home .news-card:hover .news-card__action {
        color: #101114;
    }
}

.home .hero__product-links a:focus-visible svg,
.home .route-strip__link:focus-visible svg:last-child,
.home .news-card:focus-visible .news-card__action svg {
    transform: translateX(4px);
}

.home .category-card:focus-visible {
    background-color: #edf3f8;
    box-shadow: 0 18px 38px #26364c1a;
}

.home .category-card:focus-visible .category-card__arrow {
    border-color: #146ef5;
    background-color: #146ef5;
    color: #fff;
}

.home .category-card:focus-visible .category-card__arrow svg {
    transform: translateX(3px);
}

.home .product-card:has(.product-card__full-link:focus-visible),
.home .news-card:focus-visible,
.home .application-card:focus-visible {
    box-shadow: 0 18px 38px #26364c1a;
}

@media (prefers-reduced-motion: reduce) {
    .home .button,
    .home .button svg,
    .home .hero__product-links a,
    .home .hero__product-links svg,
    .home .route-strip__link,
    .home .route-strip__link svg:last-child,
    .home .category-card,
    .home .category-card__img img,
    .home .category-card__arrow,
    .home .category-card__arrow svg,
    .home .application-card,
    .home .application-card__number,
    .home .product-card,
    .home .product-card__image,
    .home .product-card__action,
    .home .news-card,
    .home .news-card__action,
    .home .news-card__action svg,
    .home .site-footer a {
        transition-duration: .01ms !important;
    }
}
