/* Shared interaction tokens. Keep icon circles and page composition intact. */
:root{--action-radius:8px}
body :is(.button,.btn,.small-btn,.submit,.qi-submit,.hn-quote,.checkpoint-topic-hero-button,.bio-topic-hero-button,.product-button,.tool-button,.contact-back-button,.tr-download-button,.rp-light-button,.rp-support-button,input[type=submit],button[type=submit]){border-radius:var(--action-radius)!important}
body :is(a[href],button,input[type=submit]){touch-action:manipulation}
body :is(a[href],button,input[type=submit]):focus-visible{outline:3px solid #159b9a;outline-offset:4px}
/* Text navigation has feedback without changing the existing card/CTA geometry. */
main a[href],.footer a[href],main a[href]:is(:hover,:focus-visible),.footer a[href]:is(:hover,:focus-visible){text-decoration:none!important}
main :is(.button,.btn,.small-btn,.checkpoint-topic-hero-button,.bio-topic-hero-button,.product-button,.tool-button,.tr-download-button,.rp-light-button,.rp-support-button):is(:hover,:focus-visible){text-decoration:none;filter:brightness(.94)}
.home-v8 .v8-quality-copy a{display:inline-flex;align-items:center;gap:4px;min-height:44px;color:#0d7878}
.home-v8 .v8-quality-copy a:is(:hover,:focus-visible){color:#092742;text-decoration-color:currentColor}
@media(prefers-reduced-motion:reduce){main a[href],.footer a[href],.home-v8 .v8-quality-copy a>span{transition:none}.home-v8 .v8-quality-copy a:is(:hover,:focus-visible)>span{transform:none}}

body :is(.service-action,.quote-button,.rp-quick-order,.checkpoint-topic-quick,.bio-topic-quick,.home-motion-toggle,.catalog-pagination button,.evidence-dialog-nav button){border-radius:var(--action-radius)!important}
/* Flat text tabs retain their presentation; round any visible button surface. */
main button:not([aria-label]):not(.evidence-preview){border-radius:var(--action-radius)!important}
/* Same top-layer frame for every product image, regardless of crop dimensions. */
.home-v8 .v8-category:is(:hover,:focus-visible){box-shadow:none;border-color:#d9e7ef}
 .home-v8 .v8-category::after{display:none!important}
.home-v8 .v8-category:is(:hover,:focus-visible)::after{opacity:1}
.home-v8 .v8-category:is(:hover,:focus-visible) .v8-card-arrow{text-decoration:none!important}
@media(prefers-reduced-motion:reduce){.home-v8 .v8-category::after{transition:none}}

/* Color-only emphasis: no scale, arrow movement, underline or hover surface. */
.interaction-text-link{transition:color .18s cubic-bezier(.22,1,.36,1);text-shadow:none!important}
body main a.interaction-text-link:is(:hover,:focus-visible),
body main a:is(:hover,:focus-visible) .interaction-text-link{
 color:#065b60!important;text-shadow:none!important;
}
body main a.interaction-on-dark:is(:hover,:focus-visible),
body main a:is(:hover,:focus-visible) .interaction-on-dark{
 color:#82d2d0!important;text-shadow:none!important;
}
a.interaction-text-link{background-color:transparent!important}
a:is(:hover,:focus-visible) :is(.motion-link-label,.motion-link-arrow){transform:none!important}
.home-v8 :is(.v8-quality-copy a,.v8-card-arrow,.service-action,.v8-hero-links a)>span{transform:none!important}
.footer a[href]{transition:color .18s cubic-bezier(.22,1,.36,1);text-shadow:none!important}
.footer a[href]:is(:hover,:focus-visible){
 color:#0d7878!important;background-color:transparent!important;
 text-decoration:none!important;text-shadow:none!important;
}
@media(prefers-reduced-motion:reduce){
 .interaction-text-link,.footer a[href]{transition:none}
}
body main a.interaction-text-link span{color:inherit!important;transform:none!important}
