:root {
    --ava-hover-opacity: .84;
}

/*
 * Keep frontend interaction colors stable. Hover feedback is expressed only by
 * a small opacity change, while active and keyboard-focus states stay intact.
 */
@media (hover: hover) and (pointer: fine) {
    body :where(a[href], button:not(:disabled), [role="button"]:not([aria-disabled="true"])) {
        transition-property: opacity !important;
        transition-duration: .16s !important;
        transition-timing-function: ease !important;
    }

    body :where(a[href], button:not(:disabled), [role="button"]:not([aria-disabled="true"])):hover {
        opacity: var(--ava-hover-opacity);
    }

    /* Product cards keep their normal appearance on pointer hover. */
    body .product-card:hover {
        opacity: 1;
    }
}

/* Page rules that previously replaced text colors on hover. */
.representatives-breadcrumb a:hover,
.auctions-info-breadcrumb a:hover,
.profile-page .breadcrumbs a:hover {
    color: inherit;
}

.representatives-filter-form__submit:hover,
.auction-download:hover,
.auth-submit:hover:not(:disabled),
body .mobile-drawer__quote:hover {
    color: #fff;
}

.representatives-filter-form__submit:hover,
.auction-download:hover {
    background: #5fa8ab;
}

.representative-card__detail--phone:hover {
    border-color: #f1f5f9;
    color: #314158;
    box-shadow: none;
}

.representative-card__contact:hover {
    color: #5fa8ab;
    background: #edf5f6;
}

.articles-breadcrumb a:hover {
    color: #62748e;
}

.articles-categories a:hover {
    border-color: var(--mag-line);
    color: #45556c;
    background: #fff;
}

.articles-categories a.is-active:hover {
    border-color: var(--mag-primary);
    color: #fff;
    background: var(--mag-primary);
}

.article-card:hover {
    transform: none;
    border-color: var(--mag-line);
    box-shadow: none;
}

.article-card:hover .article-card__media img,
.article-card:hover .article-card__link span {
    transform: none;
}

.article-share a:hover,
.article-share button:hover {
    border-color: var(--mag-line);
    color: var(--mag-primary);
    background: #fff;
}

.article-comment-form__fields > button:hover {
    background: var(--mag-primary);
}

.account-menu__trigger:hover {
    border-color: var(--ava-primary-200);
    background: #fff;
}

.account-menu__trigger[aria-expanded="true"]:hover {
    border-color: var(--ava-secondary-900);
    background: rgba(95, 168, 171, .08);
}

.account-menu__item:hover,
.account-menu__logout .account-menu__item:hover,
.profile-summary__item:hover,
.profile-summary__logout button:hover {
    color: var(--ava-neutral-500);
    background: transparent;
}

.account-menu__item.is-active:hover,
.profile-summary__item.is-active:hover {
    color: var(--ava-primary-1000);
    background: rgba(50, 52, 143, .07);
}

.account-menu__item.is-active:hover {
    background: rgba(50, 52, 143, .06);
}

a.profile-comment__target:hover {
    color: var(--ava-neutral-800);
}

.page-category .pagination-ava a:hover {
    border-color: var(--ava-neutral-200);
    color: var(--ava-neutral-600);
}

.page-category .pagination-ava a.is-active:hover {
    border-color: var(--plp-primary);
    color: #fff;
    background: var(--plp-primary);
}

.page-product .pd-button:hover {
    color: var(--pd-primary);
}

.page-product .pd-button--primary:hover {
    color: #fff;
}

.page-product .pd-button--soft:hover {
    color: var(--pd-secondary);
}

.auth-submit:hover:not(:disabled) {
    transform: none;
    box-shadow: 0 13px 28px rgba(50, 52, 143, .22);
}
