/* Shared, readable interaction states. Keep service colours and layout stable. */
body main :is(a.km-popular-row,a.price-row,a.km-service-with-duration,a.v108-service-link,a.fault-service-link,a.brand-service-link,a.v108-quicknav-link,a.service-card,a.detail-service-card,a.advice-related-card,a.related-service-callout){transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease!important}
body main :is(a.km-popular-row,a.price-row,a.km-service-with-duration,a.v108-service-link,a.fault-service-link,a.brand-service-link,a.v108-quicknav-link):is(:hover,:focus-visible){background:#f3f6fa!important;color:#18334d!important;border-color:#a9bdd3!important;box-shadow:0 3px 12px rgba(24,51,77,.07)!important;transform:none!important;opacity:1!important;filter:none!important;text-decoration:none!important}
body main :is(a.km-popular-row,a.price-row):is(:hover,:focus-visible) .service-line-copy{color:#18334d!important}
body main :is(a.km-popular-row,a.price-row):is(:hover,:focus-visible) small{color:#52657a!important}
body main :is(a.km-popular-row,a.price-row):is(:hover,:focus-visible)>strong{background:#e8eff8!important;color:#244b76!important;border-color:#cedbeb!important;box-shadow:none!important}
body main :is(a.km-popular-row,a.price-row):is(:hover,:focus-visible) .service-line-icon{background:var(--service-icon-bg,#e9f0fc)!important;color:var(--service-icon-color,#3861a2)!important;transform:none!important;opacity:1!important;filter:none!important}
body main :is(a.km-popular-row,a.price-row,a.fault-service-link):is(:hover,:focus-visible)>i{color:#315b88!important;background:transparent!important;box-shadow:none!important;transform:none!important}
body main :is(a.service-card,a.detail-service-card,a.advice-related-card,a.related-service-callout):is(:hover,:focus-visible){background:#f7f9fc!important;color:#18334d!important;border-color:#a9bdd3!important;box-shadow:0 6px 18px rgba(24,51,77,.08)!important;transform:none!important;opacity:1!important;filter:none!important}
body main .service-card:is(:hover,:focus-visible) .service-icon{transform:none!important;box-shadow:none!important}
body main .service-card:is(:hover,:focus-visible) .arrow{transform:none!important;color:#315b88!important;background:#e8eff8!important}
body .hero .hero-actions>a.button:is(:hover,:focus-visible){transform:none!important;box-shadow:0 5px 16px rgba(0,0,0,.16)!important;color:#fff!important}
body .hero .hero-actions>a.button.primary:is(:hover,:focus-visible){background:#315f9d!important;border-color:#7298c9!important}
body .hero .hero-actions>a.button:is(.ghost,.map-route):is(:hover,:focus-visible){background:rgba(255,255,255,.12)!important;border-color:#91abc9!important}
body main a:focus-visible,body button:focus-visible{outline:2px solid #315f9d!important;outline-offset:3px!important}
/* Touch devices use a brief pressed state rather than a persistent hover glow. */
@media(hover:none){
 body main :is(a.km-popular-row,a.price-row,a.km-service-with-duration,a.v108-service-link,a.fault-service-link,a.brand-service-link,a.v108-quicknav-link):hover:not(:focus-visible){background:#fff!important;box-shadow:none!important;border-color:#dce4ee!important}
 body main :is(a.km-popular-row,a.price-row,a.v108-service-link,a.v108-quicknav-link):active{background:#edf2f8!important;border-color:#a9bdd3!important}
}
@media(prefers-reduced-motion:reduce){body main a,body button{transition:none!important}}
/* Fault finder: white surface, restrained header, clear service and price hierarchy. */
body main .finder-estimate-design .fault-table{background:#fff!important;border-color:#dce4ee!important;box-shadow:0 6px 20px rgba(24,51,77,.045)!important}
body main .finder-estimate-design .fault-head{background:#f0f4f8!important;color:#40566d!important;font-weight:700!important}
body main .finder-estimate-design article.fault-row{background:#fff!important;border-color:#dce4ee!important;box-shadow:none!important;transform:none!important}
body main .finder-estimate-design article.fault-row:hover{background:#f8fafc!important;box-shadow:none!important;transform:none!important}
body main .finder-estimate-design .fault-row strong{color:#18334d!important;font-weight:600!important}
body main .finder-estimate-design .fault-row .fault-service-link{background:#f4f7fb!important;border:1px solid #dce4ee!important;color:#18334d!important;box-shadow:none!important;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease!important}
body main .finder-estimate-design .fault-row .fault-service-link:is(:hover,:focus-visible){background:#edf3fa!important;border-color:#9fb6d0!important;color:#18334d!important;box-shadow:0 3px 10px rgba(24,51,77,.06)!important;transform:none!important}
body main .finder-estimate-design .fault-row .fault-service-link i{background:transparent!important;color:#315b88!important;transform:none!important}
body main .finder-estimate-design .fault-service-link .service-line-icon{background:var(--service-icon-bg,#e9f0fc)!important;color:var(--service-icon-color,#3861a2)!important;transform:none!important;filter:none!important;opacity:1!important}
body main .finder-estimate-design .fault-price{color:#18334d!important;font-weight:750!important}
body main .finder-estimate-design :is(.fault-time,.fault-note){color:#52657a!important}
@media(max-width:960px){body main .finder-estimate-design .fault-table{background:transparent!important;border:0!important;box-shadow:none!important}body main .finder-estimate-design article.fault-row{box-shadow:0 3px 12px rgba(24,51,77,.04)!important}body main .finder-estimate-design .fault-row>div::before{color:#52657a!important}}
@media(hover:none){body main .finder-estimate-design article.fault-row:hover{background:#fff!important}body main .finder-estimate-design .fault-row .fault-service-link:hover:not(:focus-visible){background:#f4f7fb!important;border-color:#dce4ee!important;box-shadow:none!important}body main .finder-estimate-design .fault-row .fault-service-link:active{background:#edf3fa!important;border-color:#9fb6d0!important}}
