/* Progressive, shared motion layer. No content depends on an entrance animation. */
:root {
  --ancheng-admin-offset: 0px;
  --ancheng-header-height: 87px;
  --ancheng-sticky-stack: calc(var(--ancheng-admin-offset) + var(--ancheng-header-height));
}

html {
  scroll-padding-top: calc(var(--ancheng-sticky-stack) + 16px);
}

/* The header stays usable even if JavaScript or the animation APIs are unavailable. */
.site-header {
  position: sticky;
  top: var(--ancheng-admin-offset);
  transition: box-shadow .24s ease, border-color .24s ease;
}

html:has(body.admin-bar) { --ancheng-admin-offset: 32px; }
body.admin-bar .site-header:not(.is-sticky-enabled) { top: 32px; }

.site-header.is-sticky-enabled.is-scrolled {
  border-bottom-color: #dfe5e1;
  box-shadow: 0 8px 24px #1721260d;
}

.site-header.is-sticky-enabled.is-scrolled .header-inner { height: 72px; }

/* The paired height changes preserve the original document flow, without a transition. */
.ancheng-header-spacer {
  height: 0;
  flex: none;
  pointer-events: none;
}
.site-header.is-sticky-enabled.is-scrolled + .ancheng-header-spacer { height: 14px; }

/* Use one measured anchor offset, rather than adding the old page-specific margins. */
body.ancheng-motion:is(.home-page, .inner-page) main[id],
body.ancheng-motion:is(.home-page, .inner-page) main [id] {
  scroll-margin-top: 0 !important;
}

body:is(.home-page, .inner-page) :is(.about-section-nav, .detail-specnav) {
  top: calc(var(--ancheng-admin-offset) + var(--ancheng-header-height));
}
body:is(.home-page, .inner-page) .catalog-sidebar {
  top: calc(var(--ancheng-admin-offset) + var(--ancheng-header-height) + 24px);
}
body:is(.home-page, .inner-page) .article-sidebar {
  top: calc(var(--ancheng-admin-offset) + var(--ancheng-header-height) + 30px);
}

/* Independent translate keeps a leaf's hover separate from a WAAPI entrance transform. */
.ancheng-motion :is(
  .catalog-card, .component-card, .related-product-card, .journal-related-card,
  .news-grid > a, .service-grid > a, .about-business-overview > a, .inner-card
) {
  transition: translate .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.ancheng-motion :is(
  .catalog-card, .component-card, .news-grid > a, .service-grid > a,
  .about-business-overview > a, .button
):hover {
  transform: none;
}

/* Carousel card geometry and snap points must never move on hover. */
.ancheng-motion .model-card { transition: box-shadow .24s ease; }
.ancheng-motion .model-card:hover { transform: none; }

.ancheng-motion .button {
  transition: background .2s ease, color .2s ease, border-color .2s ease, translate .2s ease;
}
.ancheng-motion :is(
  .button > span[aria-hidden="true"]:last-child,
  .service-list > a > b, .parts-grid > a > b, .customization-link > b,
  .about-row-arrow
) {
  transition: translate .2s ease;
}

@media (hover: hover) and (pointer: fine) {
  .ancheng-motion :is(
    .catalog-card, .component-card, .related-product-card, .journal-related-card,
    .news-grid > a, .service-grid > a, .about-business-overview > a, .inner-card
  ):hover {
    translate: 0 -3px;
    box-shadow: 0 12px 30px #1721260d;
  }
  .ancheng-motion .model-card:hover { box-shadow: 0 8px 22px #1721260a; }
  .ancheng-motion .button:hover { translate: 0 -2px; }
  .ancheng-motion :is(
    .button:hover > span[aria-hidden="true"]:last-child,
    .service-list > a:hover > b, .parts-grid > a:hover > b,
    .customization-link:hover > b, .about-business-overview > a:hover .about-row-arrow
  ) {
    translate: 2px -2px;
  }

  /* Only existing, clipped card/photo frames; never a hero, gallery or source-sheet image. */
  .ancheng-motion :is(
    .model-card:hover .model-image img,
    .catalog-card:hover .catalog-photo img,
    .catalog-card:hover .vehicle-card-photo img,
    .related-product-card:hover .related-product-photo img,
    .vehicle-entry:hover > img,
    .news-list-item:hover .news-list-photo img,
    .journal-related-card:hover .journal-related-photo img,
    .about-profile-photo:hover > img,
    .service-overview-photo:hover img
  ) {
    transform: scale(1.025);
  }
  .ancheng-motion .related-product-photo img { transition: transform .4s ease; }
}

/* Touchscreens have no sticky hover lifts or zooms inherited from the original bundles. */
@media (hover: none), (pointer: coarse) {
  .ancheng-motion :is(
    .catalog-card, .component-card, .model-card, .related-product-card, .journal-related-card,
    .news-grid > a, .service-grid > a, .about-business-overview > a, .inner-card, .button
  ):hover {
    transform: none;
    translate: none;
    box-shadow: none;
  }
  .ancheng-motion :is(
    .model-card:hover .model-image img,
    .catalog-card:hover .catalog-photo img,
    .catalog-card:hover .vehicle-card-photo img,
    .component-card:hover .component-card-photo > a > img,
    .component-card:hover .component-card-photo > img,
    .component-card:hover .component-card-photo .component-image-window,
    .vehicle-entry:hover > img,
    .news-list-item:hover .news-list-photo img,
    .journal-related-card:hover .journal-related-photo img,
    .about-profile-photo:hover > img,
    .service-overview-photo:hover img
  ) {
    transform: none;
  }
}

@media (max-width: 1100px) {
  :root { --ancheng-header-height: 77px; }
  .site-header.is-sticky-enabled.is-scrolled .header-inner { height: 68px; }
  .site-header.is-sticky-enabled.is-scrolled + .ancheng-header-spacer { height: 8px; }
  .site-header .primary-nav {
    top: 100%;
    max-height: calc(100vh - var(--ancheng-admin-offset) - var(--ancheng-header-height));
    max-height: calc(100dvh - var(--ancheng-admin-offset) - var(--ancheng-header-height));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
@media (max-width: 782px) {
  html:has(body.admin-bar) { --ancheng-admin-offset: 46px; }
  body.admin-bar .site-header:not(.is-sticky-enabled) { top: 46px; }
}
@media (max-width: 640px) {
  :root { --ancheng-header-height: 71px; }
  .site-header.is-sticky-enabled.is-scrolled .header-inner { height: 64px; }
  .site-header.is-sticky-enabled.is-scrolled + .ancheng-header-spacer { height: 6px; }
}
@media (max-width: 600px) {
  /* WordPress makes the mobile admin bar absolute: it scrolls away, unlike the header. */
  html:has(body.admin-bar) { --ancheng-admin-offset: 0px; }
  body.admin-bar .site-header:not(.is-sticky-enabled) { top: 0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .ancheng-motion .site-header,
  .ancheng-motion :is(
    .catalog-card, .component-card, .model-card, .related-product-card, .journal-related-card,
    .news-grid > a, .service-grid > a, .about-business-overview > a, .inner-card, .button,
    .button > span[aria-hidden="true"]:last-child, .service-list > a > b,
    .parts-grid > a > b, .customization-link > b, .about-row-arrow,
    .related-product-photo img
  ) {
    transition: none;
    translate: none;
  }
  .ancheng-motion :is(
    .catalog-card, .component-card, .model-card, .related-product-card, .journal-related-card,
    .news-grid > a, .service-grid > a, .about-business-overview > a, .inner-card, .button
  ):hover {
    transform: none;
    translate: none;
    box-shadow: none;
  }
  .ancheng-motion :is(
    .button:hover > span[aria-hidden="true"]:last-child,
    .service-list > a:hover > b, .parts-grid > a:hover > b,
    .customization-link:hover > b, .about-business-overview > a:hover .about-row-arrow
  ) {
    translate: none;
  }
  .ancheng-motion :is(
    .model-card:hover .model-image img,
    .catalog-card:hover .catalog-photo img,
    .catalog-card:hover .vehicle-card-photo img,
    .related-product-card:hover .related-product-photo img,
    .component-card:hover .component-card-photo > a > img,
    .component-card:hover .component-card-photo > img,
    .component-card:hover .component-card-photo .component-image-window,
    .vehicle-entry:hover > img,
    .news-list-item:hover .news-list-photo img,
    .journal-related-card:hover .journal-related-photo img,
    .about-profile-photo:hover > img,
    .service-overview-photo:hover img
  ) {
    transform: none;
  }
}

@media print {
  html { scroll-padding-top: 0; }
  .site-header,
  body.admin-bar .site-header,
  body:is(.home-page, .inner-page) :is(.about-section-nav, .detail-specnav) {
    position: static;
    box-shadow: none;
  }
  .ancheng-header-spacer { display: none; }
}

/* One motion scale for the existing Home and all converted inner layouts. */
:root{--ancheng-reveal-distance:56px;--ancheng-reveal-duration:1000;--ancheng-hero-distance:16px;--ancheng-hero-duration:700}
@media(max-width:640px){:root{--ancheng-reveal-distance:40px;--ancheng-hero-distance:12px}}
.ancheng-motion [data-motion-wait]{opacity:0}

/* Shared feedback on the remaining inner pages; About keeps its approved rules. */
body.inner-page:not(.about-page) :is(.inner-hero-copy h1,.inner-hero-copy p,.catalog-hero-copy h1,.catalog-hero-copy p,.inner-heading h2,.inner-copy h2,.inner-copy h3,.inner-card h3,.inner-business-grid h3,.footer-cta h2,.footer-cta p,.not-found-copy h1){transition:color .5s ease}
body.inner-page:not(.about-page) :is(.inner-hero-copy h1,.catalog-hero-copy h1,.inner-heading h2,.inner-copy h2,.not-found-copy h1){position:relative}
body.inner-page:not(.about-page) :is(.inner-hero-copy h1,.catalog-hero-copy h1,.inner-heading h2,.inner-copy h2,.not-found-copy h1)::after{content:"";position:absolute;left:0;bottom:-8px;width:80px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s ease;pointer-events:none}
body.inner-page:not(.about-page) .inner-hero::after,body.inner-page:not(.about-page) .catalog-hero::after{pointer-events:none;transition:opacity .5s ease}
body.inner-page:not(.about-page) :is(.button,.footer-cta-button){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease,translate .5s ease}
body.inner-page:not(.about-page) :is(.button>span[aria-hidden="true"]:last-child,.button>svg,.text-link>span,.light-link>span,.not-found-secondary>span){transition:color .5s ease,translate .5s ease}
body.inner-page:not(.about-page) :is(.text-link,.light-link,.inner-breadcrumb a,.primary-nav a,.footer-reference a,.site-footer a,.floating-contact a,.floating-contact button,.not-found-secondary,.not-found-destinations a,.search-results a,.language-menu a,.language-menu button,.search-toggle,.menu-toggle){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
body.inner-page:not(.about-page) :is(.inner-card,.inner-business-grid>article,.inner-faq){transition:background-color .5s ease,border-color .5s ease,box-shadow .5s ease,translate .5s ease}
body.inner-page:not(.about-page) :is(.inner-tabs a,.inner-pill){transition:color .5s ease,background-color .5s ease,border-color .5s ease}
body.inner-page:not(.about-page) :is(.inner-tabs a[aria-current="page"],.inner-tabs a.is-active){color:var(--red);background:#fff4f5}
body.inner-page:not(.about-page) :is(.button,.text-link,.light-link,.inner-tabs a,.not-found-secondary,.not-found-destinations a,.search-results a):focus-visible{outline:2px solid var(--red);outline-offset:4px}
body.inner-page:not(.about-page) :is(.button-red,.footer-cta-button):focus-visible{background:#fff;color:var(--red);border-color:var(--red)}
body.inner-page:not(.about-page) :is(.inner-card,.inner-business-grid>article):focus-within{background:#fff4f5;border-color:#d45769}
body.inner-page:not(.about-page) :is(.inner-card,.inner-business-grid>article):focus-within h3{color:var(--red)}
body.inner-page:not(.about-page) :is(.inner-hero-copy,.catalog-hero-copy):focus-within h1{color:#ff7c91}
body.inner-page:not(.about-page) :is(.inner-hero-copy,.catalog-hero-copy):focus-within h1::after{transform:scaleX(1)}
@media(hover:hover) and (pointer:fine){
  body.inner-page:not(.about-page) :is(.inner-hero-copy,.catalog-hero-copy):hover h1{color:#ff7c91}
  body.inner-page:not(.about-page) :is(.inner-hero-copy,.catalog-hero-copy):hover p{color:#fff}
  body.inner-page:not(.about-page) :is(.inner-hero-copy,.catalog-hero-copy):hover h1::after{transform:scaleX(1)}
  body.inner-page:not(.about-page) .inner-hero:hover::after,body.inner-page:not(.about-page) .catalog-hero:hover::after{opacity:.92}
  body.inner-page:not(.about-page) :is(.inner-heading,.inner-copy,.not-found-copy):hover h2,body.inner-page:not(.about-page) .not-found-copy:hover h1{color:var(--red)}
  body.inner-page:not(.about-page) :is(.inner-heading,.inner-copy):hover h2::after,body.inner-page:not(.about-page) .not-found-copy:hover h1::after{transform:scaleX(1)}
  body.inner-page:not(.about-page) :is(.inner-card,.inner-business-grid>article):hover{background:#fff4f5;border-color:#d45769;box-shadow:0 10px 28px #a31d3110}
  body.inner-page:not(.about-page) :is(.inner-card,.inner-business-grid>article):hover h3{color:var(--red)}
  body.inner-page:not(.about-page) :is(.button-red,.footer-cta-button):hover{background:#fff;color:var(--red);border-color:var(--red)}
  body.inner-page:not(.about-page) :is(.button:hover>span[aria-hidden="true"]:last-child,.button:hover>svg,.text-link:hover>span,.light-link:hover>span,.not-found-secondary:hover>span){translate:4px -4px}
  body.inner-page:not(.about-page) :is(.text-link,.inner-breadcrumb a,.primary-nav a,.footer-reference a,.site-footer a,.floating-contact a,.floating-contact button,.not-found-secondary,.not-found-destinations a,.search-results a,.language-menu a,.language-menu button,.search-toggle,.menu-toggle):hover{color:var(--red)}
  body.inner-page:not(.about-page) :is(.floating-contact a,.floating-contact button,.search-results a,.language-menu a,.language-menu button):hover{background:#fff4f5}
  body.inner-page:not(.about-page) .footer-reference .footer-column a:hover,body.inner-page:not(.about-page) :is(.inner-hero,.catalog-hero) .inner-breadcrumb a:hover{color:#ffb3bd}
  body.inner-page:not(.about-page) :is(.light-link,.footer-cta h2):hover{color:#ff7c91}
  body.inner-page:not(.about-page) .footer-cta-content:hover h2{color:#ff7c91}
  body.inner-page:not(.about-page) .footer-cta-content:hover p{color:#fff}
  body.inner-page:not(.about-page) :is(.inner-tabs a,.inner-pill):hover{color:var(--red);background:#fff4f5}
  body.inner-page:not(.about-page) .inner-faq:hover{background:#fff4f5;border-color:#d45769}
}
@media(prefers-reduced-motion:reduce){
  .ancheng-motion [data-motion-wait]{opacity:1!important}
  body.inner-page:not(.about-page) :is(.inner-hero-copy h1,.inner-hero-copy p,.catalog-hero-copy h1,.catalog-hero-copy p,.inner-heading h2,.inner-copy h2,.inner-copy h3,.inner-card,.inner-card h3,.inner-business-grid>article,.inner-business-grid h3,.inner-faq,.footer-cta h2,.footer-cta p,.not-found-copy h1,.button,.footer-cta-button,.button>span[aria-hidden="true"]:last-child,.button>svg,.text-link,.text-link>span,.light-link,.light-link>span,.inner-breadcrumb a,.primary-nav a,.footer-reference a,.site-footer a,.floating-contact a,.floating-contact button,.not-found-secondary,.not-found-secondary>span,.not-found-destinations a,.search-results a,.language-menu a,.language-menu button,.search-toggle,.menu-toggle,.inner-tabs a,.inner-pill),
  body.inner-page:not(.about-page) :is(.inner-hero-copy h1,.catalog-hero-copy h1,.inner-heading h2,.inner-copy h2,.not-found-copy h1,.inner-hero,.catalog-hero)::after{transition:none!important}
  body.inner-page:not(.about-page) :is(.button>span[aria-hidden="true"]:last-child,.button>svg,.text-link>span,.light-link>span,.not-found-secondary>span){translate:none!important}
}
@media print{.ancheng-motion [data-motion-wait]{opacity:1!important}}

/* Service / Contact / Download / News interactions, 2026-10-19.
 * Appended to the shared motion layer. Every rule is scoped away from Home/About.
 * Native links, forms, accordions, downloads and article media retain their behavior. */
body:is(.service-page,.contact-page,.download-page,.journal-page){--content-hover-red:#c91f36;--content-hover-wash:#fff4f5;--content-hover-ink:#26363e}

/* Section headings have a short, non-layout-shifting underline. */
body.service-page :is(.service-overview-heading h2,.service-section-heading h2,.service-heading-row h2,.service-kd-copy>h2),
body.contact-page :is(.contact-directory>h2,.contact-map-copy>h2),
body.download-page .download-library-heading h2,
body.journal-page :is(.news-list-heading h2,.journal-related-heading h2){position:relative;transition:color .5s ease}
body.service-page :is(.service-overview-heading h2,.service-section-heading h2,.service-heading-row h2,.service-kd-copy>h2)::after,
body.contact-page :is(.contact-directory>h2,.contact-map-copy>h2)::after,
body.download-page .download-library-heading h2::after,
body.journal-page :is(.news-list-heading h2,.journal-related-heading h2)::after{content:"";position:absolute;left:0;bottom:-9px;width:80px;height:2px;background:var(--content-hover-red);transform:scaleX(0);transform-origin:left;transition:transform .5s ease;pointer-events:none}

/* Service: local index, capabilities, sequence and native FAQ. */
body.service-page :is(.service-index a,.service-scope-item,.service-kd-list li,.service-steps li,.service-faq,.service-faq summary,.service-faq-toggle){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
body.service-page .service-index a{color:#19262b}
body.service-page .service-index a::after{transition:transform .5s ease}
body.service-page .service-index a.is-active{color:var(--content-hover-red);background:var(--content-hover-wash)}
body.service-page :is(.service-scope-item h3,.service-kd-list h3,.service-steps h3,.service-scope-item p,.service-keywords,.service-overview-text p){transition:color .5s ease}
body.service-page .service-inline-link{transition:color .5s ease}
body.service-page .service-inline-link>span{transition:transform .5s ease}
body.service-page .service-faq-toggle::before,body.service-page .service-faq-toggle::after{transition:transform .5s ease}
body.service-page .service-faq[open]{background:var(--content-hover-wash)}
body.service-page .service-faq[open] summary{color:var(--content-hover-red)}
body.service-page .service-faq[open] .service-faq-answer{animation-duration:.5s}
body.service-page .service-faq-number{transition:color .5s ease}
body.service-page .service-faq[open] .service-faq-number{color:var(--content-hover-red)}
body.service-page .service-scope-item:focus-within{background:var(--content-hover-wash);border-color:#d45769}
body.service-page .service-scope-item:focus-within h3{color:var(--content-hover-red)}
body.service-page .service-index a:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash)}
body.service-page .service-index a:focus-visible::after{transform:scaleX(1)}
body.service-page .service-faq summary:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash)}

/* Overlay lives in the image row only. Desktop overview caption stays absolute;
 * its existing mobile flow caption and the KD caption occupy a separate row. */
body.service-page :is(.service-overview-photo,.service-kd-photo){position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden}
body.service-page :is(.service-overview-photo,.service-kd-photo)>img{grid-area:1/1;min-width:0;transition:transform .5s ease,filter .5s ease}
body.service-page :is(.service-overview-photo,.service-kd-photo)::after{content:"";grid-area:1/1;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(12,29,34,.20),rgba(12,29,34,.28) 55%,rgba(12,29,34,.42));opacity:1;transition:opacity .5s ease}
body.service-page .service-overview-photo>figcaption{z-index:2;transition:background-color .5s ease}
body.service-page .service-kd-photo>figcaption{grid-area:2/1;position:relative;z-index:2;background:#eef0ec;transition:background-color .5s ease,color .5s ease}

/* Contact: real contact links and a clear local form focus; never obscure the map. */
body.contact-page :is(.contact-channel,.contact-channel-icon,.contact-location-item,.contact-map-copy,.contact-section){transition:color .5s ease,background-color .5s ease,box-shadow .5s ease}
body.contact-page :is(.contact-channel-copy strong,.contact-channel-copy>span,.contact-panel>h3,.contact-location-item h2){transition:color .5s ease}
body.contact-page :is(.contact-channel-arrow,.contact-map-link>span,.contact-location-item a>span){transition:transform .5s ease,color .5s ease}
body.contact-page .contact-channel-icon svg{transition:stroke .5s ease}
body.contact-page :is(.contact-map-link,.contact-location-item a){transition:color .5s ease}
body.contact-page .contact-channel:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash)}
body.contact-page .contact-channel:focus-visible .contact-channel-icon{background:var(--content-hover-red)}
body.contact-page .contact-channel:focus-visible .contact-channel-icon svg{stroke:#fff}
body.contact-page .contact-section:focus-within{background:#fff8f9;box-shadow:inset 0 0 0 1px #d4576970}
body.contact-page .contact-section:focus-within .contact-panel>h3{color:var(--content-hover-red)}
body.contact-page .form-row label{transition:color .5s ease}
body.contact-page .form-row:focus-within>label{color:var(--content-hover-red)}
body.contact-page .form-row :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){transition:border-color .5s ease,box-shadow .5s ease,background-color .5s ease}
body.contact-page .form-row :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea):focus{border-color:var(--content-hover-red);background:#fff;box-shadow:0 0 0 3px #c91f3614}

/* Download: article feedback doesn't turn the entire row into a fake link. */
body.download-page :is(.download-resource,.download-resource-icon,.download-browse,.download-preview-link){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
body.download-page :is(.download-resource h3,.download-browse h3,.download-resource-copy>p,.download-browse p){transition:color .5s ease}
body.download-page :is(.download-file-button>svg,.download-preview-link>span){transition:transform .5s ease}
body.download-page .download-resource:focus-within{background:var(--content-hover-wash);box-shadow:inset 3px 0 0 var(--content-hover-red)}
body.download-page .download-resource:focus-within h3,body.download-page .download-browse:focus-within h3{color:var(--content-hover-red)}
body.download-page .download-resource:focus-within .download-resource-icon{background:var(--content-hover-red);border-color:var(--content-hover-red);color:#fff}
body.download-page .download-preview-link:focus-visible,body.download-page .download-file-button:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash);border-color:var(--content-hover-red)}

/* News: the image overlay is limited to teaser cards, never article body media. */
body.journal-page :is(.news-list-item,.journal-related-card,.journal-related-copy,.news-category-control,.journal-toc a,.journal-related-resources a){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease,translate .5s ease}
body.journal-page :is(.news-list-copy h3 a,.journal-related-copy h3,.news-read-more,.article-content h2,.article-content h3){transition:color .5s ease}
body.journal-page .news-read-more>span,body.journal-page .journal-related-resources a>span{transition:transform .5s ease}
body.journal-page :is(.news-list-photo,.journal-related-photo){position:relative;isolation:isolate}
body.journal-page :is(.news-list-photo,.journal-related-photo)::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(12,29,34,.12),rgba(12,29,34,.24));opacity:1;transition:opacity .5s ease}
body.journal-page :is(.news-list-photo,.journal-related-photo)>img{transition:transform .5s ease}
body.journal-page .news-category-control{color:#19262b}
body.journal-page .news-category-control::after{transition:transform .5s ease}
body.journal-page .news-category-control.is-active{color:var(--content-hover-red);background:var(--content-hover-wash)}
body.journal-page .news-category-control:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash)}
body.journal-page .news-category-control:focus-visible::after{transform:scaleX(1)}
body.journal-page .news-list-item:focus-within{background:var(--content-hover-wash);border-bottom-color:#d45769}
body.journal-page .news-list-item:focus-within .news-list-copy h3 a{color:var(--content-hover-red)}
body.journal-page .news-list-item:focus-within .news-list-photo::after{opacity:.4}
body.journal-page .journal-related-card:focus-within{background:var(--content-hover-wash);box-shadow:0 8px 24px #a31d3110}
body.journal-page .journal-related-card:focus-within h3{color:var(--content-hover-red)}
body.journal-page .journal-related-card:focus-within .journal-related-photo::after{opacity:.4}
body.journal-page .article-sidebar :is(.journal-toc a[aria-current="location"],.journal-toc a:focus-visible,.journal-related-resources a:focus-visible){color:var(--content-hover-red);background:var(--content-hover-wash)}
body.journal-page.wp-news .news-list-pagination :is(a,span.page-numbers){transition:color .5s ease,background-color .5s ease,border-color .5s ease}
body.journal-page.wp-news .news-list-pagination a:focus-visible{color:var(--content-hover-red);background:var(--content-hover-wash);border-color:var(--content-hover-red)}

@media(hover:hover) and (pointer:fine){
  body.service-page :is(.service-overview-copy,.service-section-heading,.service-heading-row,.service-kd-copy):hover h2,
  body.contact-page :is(.contact-directory,.contact-map-copy):hover>h2,
  body.download-page .download-library-heading:hover h2,
  body.journal-page :is(.news-list-heading,.journal-related-heading):hover h2{color:var(--content-hover-red)}
  body.service-page :is(.service-overview-copy,.service-section-heading,.service-heading-row,.service-kd-copy):hover h2::after,
  body.contact-page :is(.contact-directory,.contact-map-copy):hover>h2::after,
  body.download-page .download-library-heading:hover h2::after,
  body.journal-page :is(.news-list-heading,.journal-related-heading):hover h2::after{transform:scaleX(1)}
  body.service-page .service-index a:hover{color:var(--content-hover-red);background:var(--content-hover-wash)}
  body.service-page .service-scope-item:hover{background:var(--content-hover-wash);border-color:#d45769;box-shadow:0 8px 24px #a31d3110}
  body.service-page .service-scope-item:hover h3,body.service-page .service-kd-list li:hover h3,body.service-page .service-steps li:hover h3{color:var(--content-hover-red)}
  body.service-page .service-scope-item:hover p,body.service-page .service-overview-copy:hover p{color:var(--content-hover-ink)}
  body.service-page .service-inline-link:hover{gap:17px;color:var(--content-hover-red)}
  body.service-page .service-inline-link:hover>span{transform:translate(4px,-4px)}
  body.service-page :is(.service-kd-list li,.service-steps li):hover{background:var(--content-hover-wash)}
  body.service-page .service-faq summary:hover{color:var(--content-hover-red);background:var(--content-hover-wash)}
  body.service-page .service-faq summary:hover .service-faq-number{color:var(--content-hover-red)}
  body.service-page .service-faq summary:hover .service-faq-toggle{background:var(--content-hover-red);color:#fff;border-color:var(--content-hover-red)}
  body.service-page :is(.service-overview-photo,.service-kd-photo):hover::after{opacity:.65}
  body.service-page :is(.service-overview-photo,.service-kd-photo):hover>img{transform:scale(1.025);filter:none}
  body.service-page .service-overview-photo:hover>figcaption{background:#a81b2f}
  body.service-page .service-kd-photo:hover>figcaption{background:var(--content-hover-wash);color:var(--content-hover-red)}
  body.contact-page .contact-channel:hover{background:var(--content-hover-wash);color:var(--content-hover-red)}
  body.contact-page .contact-channel:hover .contact-channel-icon{background:var(--content-hover-red)}
  body.contact-page .contact-channel:hover .contact-channel-icon svg{stroke:#fff}
  body.contact-page .contact-channel:hover .contact-channel-copy>span{color:var(--content-hover-ink)}
  body.contact-page .contact-channel:hover .contact-channel-arrow{transform:translate(4px,-4px)}
  body.contact-page :is(.contact-map-copy,.contact-location-item):hover{background:var(--content-hover-wash)}
  body.contact-page .contact-location-item:hover h2{color:var(--content-hover-red)}
  body.contact-page :is(.contact-map-link,.contact-location-item a):hover>span{transform:translate(4px,-4px)}
  body.download-page :is(.download-resource,.download-browse):hover{background:var(--content-hover-wash)}
  body.download-page .download-resource:hover{box-shadow:inset 3px 0 0 var(--content-hover-red)}
  body.download-page :is(.download-resource,.download-browse):hover h3{color:var(--content-hover-red)}
  body.download-page .download-resource:hover .download-resource-icon{background:var(--content-hover-red);border-color:var(--content-hover-red);color:#fff}
  body.download-page .download-resource:hover .download-resource-copy>p{color:var(--content-hover-ink)}
  body.download-page .download-preview-link:hover{color:var(--content-hover-red);border-color:var(--content-hover-red)}
  body.download-page .download-preview-link:hover>span{transform:translate(4px,-4px)}
  body.download-page .download-file-button:hover{background:var(--content-hover-wash);color:var(--content-hover-red);border-color:var(--content-hover-red)}
  body.download-page .download-file-button:hover>svg{transform:translateY(3px)}
  body.journal-page .news-category-control:hover{color:var(--content-hover-red);background:var(--content-hover-wash)}
  body.journal-page .news-category-control:hover::after{transform:scaleX(1)}
  body.journal-page .news-list-item:hover{background:var(--content-hover-wash);border-bottom-color:#d45769}
  body.journal-page .news-list-item:hover .news-list-copy h3 a{color:var(--content-hover-red)}
  body.journal-page .news-list-item:hover .news-list-photo::after,body.journal-page .journal-related-card:hover .journal-related-photo::after{opacity:.4}
  body.journal-page .journal-related-card:hover{background:var(--content-hover-wash);box-shadow:0 8px 24px #a31d3110}
  body.journal-page .journal-related-card:hover h3,body.journal-page .news-list-item:hover .news-read-more{color:var(--content-hover-red)}
  body.journal-page .news-list-item:hover .news-read-more>span,body.journal-page .journal-related-card:hover .news-read-more>span{transform:translate(4px,-4px)}
  body.journal-page .article-sidebar :is(.journal-toc a,.journal-related-resources a):hover{color:var(--content-hover-red);background:var(--content-hover-wash)}
  body.journal-page .journal-related-resources a:hover>span{transform:translate(4px,-4px)}
  body.journal-page .article-content :is(h2,h3):hover{color:var(--content-hover-red)}
  body.journal-page.wp-news .news-list-pagination a:not([aria-current="page"]):hover{color:var(--content-hover-red);background:var(--content-hover-wash);border-color:var(--content-hover-red)}
}

@media(max-width:620px){
  body.service-page .service-overview-photo>figcaption{grid-area:2/1;position:relative}
}
@media(hover:none),(pointer:coarse){
  body.service-page :is(.service-overview-photo,.service-kd-photo):hover>img{transform:none;filter:none}
  body.journal-page .news-list-item:hover .news-list-photo img,body.journal-page .journal-related-card a:hover img{transform:none}
  body.journal-page a.news-read-more:hover>span,body.journal-page .journal-related-card a:hover .news-read-more>span,
  body.contact-page .contact-channel:hover .contact-channel-arrow,body.contact-page .contact-location-item a:hover>span,body.contact-page .contact-map-link:hover>span{transform:none}
  body.service-page .service-inline-link:hover{gap:17px}
}
@media(prefers-reduced-motion:reduce){
  body.service-page :is(.service-overview-heading h2,.service-section-heading h2,.service-heading-row h2,.service-kd-copy>h2,.service-index a,.service-scope-item,.service-kd-list li,.service-steps li,.service-faq,.service-faq summary,.service-faq-toggle,.service-faq-number,.service-scope-item h3,.service-kd-list h3,.service-steps h3,.service-scope-item p,.service-keywords,.service-overview-text p,.service-inline-link,.service-inline-link>span,.service-overview-photo>img,.service-kd-photo>img,.service-overview-photo>figcaption,.service-kd-photo>figcaption),
  body.contact-page :is(.contact-directory>h2,.contact-map-copy>h2,.contact-channel,.contact-channel-icon,.contact-channel-icon svg,.contact-channel-copy strong,.contact-channel-copy>span,.contact-panel>h3,.contact-location-item,.contact-location-item h2,.contact-map-copy,.contact-section,.contact-channel-arrow,.contact-map-link,.contact-map-link>span,.contact-location-item a,.contact-location-item a>span,.form-row label,.form-row input,.form-row select,.form-row textarea),
  body.download-page :is(.download-library-heading h2,.download-resource,.download-resource-icon,.download-browse,.download-preview-link,.download-resource h3,.download-browse h3,.download-resource-copy>p,.download-browse p,.download-file-button>svg,.download-preview-link>span),
  body.journal-page :is(.news-list-heading h2,.journal-related-heading h2,.news-list-item,.journal-related-card,.journal-related-copy,.news-category-control,.journal-toc a,.journal-related-resources a,.news-list-copy h3 a,.journal-related-copy h3,.news-read-more,.news-read-more>span,.journal-related-resources a>span,.news-list-photo>img,.journal-related-photo>img,.article-content h2,.article-content h3),
  body.service-page :is(.service-overview-heading h2,.service-section-heading h2,.service-heading-row h2,.service-kd-copy>h2,.service-index a,.service-faq-toggle,.service-overview-photo,.service-kd-photo)::after,
  body.service-page .service-faq-toggle::before,
  body.contact-page :is(.contact-directory>h2,.contact-map-copy>h2)::after,
  body.download-page .download-library-heading h2::after,
  body.journal-page :is(.news-list-heading h2,.journal-related-heading h2,.news-category-control,.news-list-photo,.journal-related-photo)::after,
  body.journal-page.wp-news .news-list-pagination :is(a,span.page-numbers){transition:none!important}
  body.service-page .service-faq[open] .service-faq-answer{animation:none}
  body.service-page :is(.service-overview-photo,.service-kd-photo):hover>img,
  body.service-page .service-inline-link:hover>span,
  body.contact-page .contact-channel:hover .contact-channel-arrow,body.contact-page .contact-location-item a:hover>span,body.contact-page .contact-map-link:hover>span,
  body.download-page .download-preview-link:hover>span,body.download-page .download-file-button:hover>svg,
  body.journal-page .news-list-item:hover .news-list-photo img,body.journal-page .journal-related-card a:hover img,
  body.journal-page .news-list-item:hover .news-read-more>span,body.journal-page .journal-related-card:hover .news-read-more>span,body.journal-page .journal-related-resources a:hover>span{transform:none!important}
}

/* Product-family feedback. Native routes, filters and media sizing stay unchanged. */
body.inner-page :is(.catalog-card,.component-card,.related-product-card){transition:background-color .5s ease,border-color .5s ease,box-shadow .5s ease,translate .5s ease}
body.inner-page :is(.vehicle-card-copy h3,.component-card-copy h3,.component-card-copy h3 a,.related-product-copy h3,.detail-summary h1,.component-summary h1,.catalog-heading h2,.component-heading h2,.related-products-heading h2,.product-parts-copy h2,.catalog-assistance h3,.spec-block h3,.component-spec-group h4,.detail-highlights strong,.detail-keyfacts dd,.component-facts dd){transition:color .5s ease}
body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.brand-directory-choice,.brand-alphabet-letters>button,.brand-filter,.component-category-links a,.component-type-nav>a,.detail-specnav>a,.parts-route,.catalog-filter-panel>summary,.component-categories>summary,.catalog-assistance,.product-share-button,.detail-config-link,.component-summary-link,.component-content-link,.related-products-all){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
body.inner-page :is(.catalog-filters select,.catalog-toolbar select,.catalog-filters .condition-filter,.catalog-filters #clear-filters,.brand-search-preview>input,.component-pagination a,.component-pagination button,.catalog-pagination>a,.catalog-pagination>button){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease}
body.inner-page :is(.brand-directory-choice,.brand-alphabet-letters>button,.catalog-pagination>button){transition:color .5s ease,background-color .5s ease,border-color .5s ease,box-shadow .5s ease,transform .5s ease}
body.inner-page :is(.detail-highlights>div,.detail-keyfacts>div,.component-facts>div,.spec-block,.spec-row,.component-spec-group,.component-reference-table>div,.component-reference-table tr,.component-features>li){transition:background-color .5s ease,border-color .5s ease}
body.inner-page :is(.detail-thumbnails>button,.component-thumbnails>button){transition:opacity .5s ease,border-color .5s ease,box-shadow .5s ease}
body.inner-page :is(.vehicle-card-actions a>span,.component-card-actions a>span,.related-product-inquiry>span,.related-products-all>span,.parts-route>span:last-child,.detail-config-link>span){transition:translate .5s ease,color .5s ease}
body.inner-page :is(.vehicle-card-photo img,.catalog-photo img,.related-product-photo>img,.component-card-photo>a>img,.component-card-photo>img,.component-card-photo .component-image-window){transition:transform .5s ease}
body.inner-page .component-type-nav>a::after{transition:transform .5s ease,background-color .5s ease}
body.inner-page .detail-specnav>a::after{transition:background-color .5s ease,opacity .5s ease}
body.inner-page .component-categories>summary::after{transition:transform .5s ease,border-color .5s ease}
body.inner-page .component-main-media::after{transition:color .5s ease,background-color .5s ease,border-color .5s ease}
body.inner-page :is(.detail-gallery-open,.vehicle-gallery-dialog button,.component-lightbox button){transition:color .5s ease,background-color .5s ease,border-color .5s ease}
body.inner-page .product-routes a{transition:color .5s ease,background-color .5s ease}
body.inner-page .product-routes a::after{transition:background-color .5s ease}
body.inner-page :is(.detail-photo-story h3,.component-photo-story h4,.component-content>div>h2,.component-content>div>h3,.detail-condition-facts dd,.component-editorial-image figcaption){transition:color .5s ease}
body.inner-page .detail-condition-facts>div{transition:background-color .5s ease}

/* Only thumbnail/card frames receive an overlay, never main/gallery/source-sheet images. */
body.inner-page :is(.vehicle-card-photo,.catalog-photo,.component-card-photo,.related-product-photo){isolation:isolate}
body.inner-page :is(.vehicle-card-photo,.catalog-photo,.component-card-photo,.related-product-photo)::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(150deg,rgba(154,20,43,.10),rgba(154,20,43,.28));opacity:0;transition:opacity .5s ease}
body.inner-page :is(.vehicle-card-photo>.vehicle-card-condition,.related-product-photo>.related-product-condition,.component-card-photo>.component-badge){z-index:2}
body.inner-page .product-parts-photo{isolation:isolate}
body.inner-page .product-parts-photo::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(12,29,34,.20),rgba(12,29,34,.28) 55%,rgba(12,29,34,.42));opacity:1;transition:opacity .5s ease}
body.inner-page .product-parts-photo>span{z-index:2}

/* Selected categories and tabs remain explicit on touch as well as desktop. */
body.inner-page :is(.component-type-nav>a.is-active,.detail-specnav>a.is-active,.component-category-links a.is-active,.component-category-links a[aria-current="page"],.brand-directory-choice[aria-current="page"],.brand-directory-item.is-current .brand-directory-choice){color:var(--red);background:#fff4f5;border-color:#d45769}
body.inner-page .component-category-links a:is(.is-active,[aria-current="page"])>span:last-child{color:var(--red)}
body.inner-page .catalog-filters .condition-filter:is(.is-active,[aria-pressed="true"]){color:var(--red);background:#fff4f5;border-color:#dfa4ae}
body.inner-page .brand-alphabet-letters>button:is(.is-current,[aria-pressed="true"]){color:var(--red);background:#fff4f5;border-color:#d45769}
body.inner-page .detail-specnav>a.is-active::after{background:var(--red)}
body.inner-page .product-routes a:is(.is-active,[aria-current="page"]){color:var(--red);background:#fff4f5}

/* Keyboard feedback follows real focusable controls, never fake full-card links. */
body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.brand-directory-choice,.brand-alphabet-letters>button,.brand-filter,.component-category-links a,.component-type-nav>a,.detail-specnav>a,.parts-route,.catalog-filter-panel>summary,.component-categories>summary,.product-share-button,.detail-config-link,.component-summary-link,.component-content-link,.related-products-all,.detail-main-photo,.component-main-media,.detail-thumbnails>button,.component-thumbnails>button):focus-visible{outline:2px solid var(--red);outline-offset:3px}
body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.product-share-button):focus-visible{color:#fff;background:var(--red);border-color:var(--red)}
body.inner-page :is(.brand-directory-choice,.brand-alphabet-letters>button,.component-category-links a,.component-type-nav>a,.detail-specnav>a,.parts-route,.catalog-filter-panel>summary,.component-categories>summary):focus-visible{color:var(--red);background:#fff4f5;border-color:#d45769}
body.inner-page :is(.catalog-card,.component-card,.related-product-card):focus-within{border-color:#d45769;box-shadow:0 10px 28px #a31d3110}
body.inner-page :is(.catalog-card,.component-card,.related-product-card):focus-within h3,body.inner-page .component-card:focus-within h3 a{color:var(--red)}
body.inner-page :is(.catalog-card,.component-card,.related-product-card):focus-within :is(.vehicle-card-photo,.catalog-photo,.component-card-photo,.related-product-photo)::after{opacity:1}
body.inner-page :is(.detail-thumbnails>button,.component-thumbnails>button):focus-visible{opacity:1;border-color:var(--red)}
body.inner-page :is(.vehicle-gallery-dialog button,.component-lightbox button):focus-visible{outline:2px solid #ffb3bd;outline-offset:3px;background:#fff;color:#b02037;border-color:#fff}
body.inner-page .product-routes a:focus-visible{outline:2px solid var(--red);outline-offset:3px;color:var(--red);background:#fff4f5}

@media(hover:hover) and (pointer:fine){
  body.inner-page :is(.catalog-card,.component-card,.related-product-card):hover{background:#fffafb;border-color:#d45769;box-shadow:0 12px 30px #a31d3112;translate:0 -3px}
  body.inner-page :is(.catalog-card,.component-card,.related-product-card):hover h3,body.inner-page .component-card:hover h3 a{color:var(--red)}
  body.inner-page :is(.catalog-card,.component-card,.related-product-card):hover :is(.vehicle-card-photo,.catalog-photo,.component-card-photo,.related-product-photo)::after{opacity:1}
  body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.product-share-button):hover{color:#fff;background:var(--red);border-color:var(--red)}
  body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry):hover>span{translate:3px -3px}
  body.inner-page :is(.component-category-links a,.component-type-nav>a,.detail-specnav>a,.parts-route,.brand-filter,.brand-directory-choice,.catalog-filter-panel>summary,.component-categories>summary):hover{color:var(--red);background:#fff4f5;border-color:#d45769}
  body.inner-page .brand-alphabet-letters>button:not(:disabled):hover{color:var(--red);background:#fff4f5;border-color:#d45769}
  body.inner-page .catalog-filters .condition-filter:not(:disabled):hover{color:var(--red);background:#fff4f5;border-color:#dfa4ae}
  body.inner-page :is(.catalog-filters select,.catalog-toolbar select,.brand-search-preview>input):not(:disabled):hover{border-color:#d45769;background:#fffafb}
  body.inner-page .catalog-filter-panel>summary:hover .catalog-filter-heading{color:var(--red)}
  body.inner-page .catalog-assistance:hover{background:#fff4f5;border-color:#dfa4ae}
  body.inner-page .catalog-assistance:hover h3{color:var(--red)}
  body.inner-page .parts-route:hover strong{color:var(--red)}
  body.inner-page .parts-route:hover>span:last-child{translate:1px -1px}
  body.inner-page :is(.catalog-heading,.component-heading,.related-products-heading,.product-parts-copy):hover h2{color:var(--red)}
  body.inner-page :is(.detail-summary,.component-summary):hover h1,body.inner-page :is(.detail-summary,.component-summary):focus-within h1{color:var(--red)}
  body.inner-page :is(.spec-block,.component-spec-group):hover{border-color:#dca3ad}
  body.inner-page .spec-block:hover h3,body.inner-page .component-spec-group:hover h4{color:var(--red)}
  body.inner-page :is(.spec-row,.component-reference-table>div,.component-reference-table tr,.component-features>li,.component-facts>div,.detail-keyfacts>div,.detail-highlights>div):hover{background:#fff4f5}
  body.inner-page .detail-highlights>div:hover strong,body.inner-page .detail-keyfacts>div:hover dd,body.inner-page .component-facts>div:hover dd{color:var(--red)}
  body.inner-page :is(.detail-thumbnails>button,.component-thumbnails>button):hover{opacity:1;border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
  body.inner-page .detail-main-photo:hover .detail-gallery-open{background:var(--red);color:#fff;border-color:#fff}
  body.inner-page .component-main-media:not(:disabled):hover::after{background:var(--red);color:#fff;border-color:var(--red)}
  body.inner-page :is(.detail-config-link,.component-summary-link,.component-content-link,.related-products-all):hover{color:var(--red);border-color:var(--red)}
  body.inner-page :is(.detail-config-link,.related-products-all):hover>span{translate:3px -3px}
  body.inner-page :is(.vehicle-gallery-dialog button,.component-lightbox button):not(:disabled):hover{background:#fff;color:#b02037;border-color:#fff}
  body.inner-page :is(.catalog-pagination>a,.catalog-pagination>button,.component-pagination a,.component-pagination button):not(:disabled):not([aria-disabled="true"]):hover{color:var(--red);border-color:var(--red);background:#fff4f5}
  body.inner-page :is(.catalog-pagination,.component-pagination) [aria-current="page"]:hover,body.inner-page .catalog-pagination>.pagination-page.is-current:hover{color:#fff;background:var(--red)}
  body.inner-page .product-routes a:hover{color:var(--red);background:#fff4f5}
  body.inner-page .product-parts-photo:hover::after{opacity:.65}
  body.inner-page .detail-photo-story:hover h3,body.inner-page .component-photo-story:hover h4,body.inner-page .component-content>div:hover>h2,body.inner-page .component-content>div:hover>h3{color:var(--red)}
  body.inner-page .detail-condition-facts>div:hover{background:#fff4f5}
  body.inner-page .detail-condition-facts>div:hover dd,body.inner-page .component-editorial-image:hover figcaption{color:var(--red)}
}

@media(hover:none),(pointer:coarse){
  body.inner-page :is(.catalog-card,.component-card,.related-product-card):hover{translate:none;box-shadow:none}
  body.inner-page :is(.brand-directory-choice,.brand-alphabet-letters>button,.catalog-pagination>button):hover{transform:none}
  body.inner-page .detail-main-photo:hover>img{transform:none}
}
@media(prefers-reduced-motion:reduce){
  body.inner-page :is(.product-routes a,.detail-photo-story h3,.component-photo-story h4,.component-content>div>h2,.component-content>div>h3,.detail-condition-facts dd,.component-editorial-image figcaption,.detail-condition-facts>div),body.inner-page .product-routes a::after,body.inner-page .product-parts-photo::after{transition:none!important}
  body.inner-page :is(.catalog-card,.component-card,.related-product-card,.vehicle-card-copy h3,.component-card-copy h3,.component-card-copy h3 a,.related-product-copy h3,.detail-summary h1,.component-summary h1,.catalog-heading h2,.component-heading h2,.related-products-heading h2,.product-parts-copy h2,.catalog-assistance h3,.spec-block h3,.component-spec-group h4,.detail-highlights strong,.detail-keyfacts dd,.component-facts dd,.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.brand-directory-choice,.brand-alphabet-letters>button,.brand-filter,.component-category-links a,.component-type-nav>a,.detail-specnav>a,.parts-route,.catalog-filter-panel>summary,.component-categories>summary,.catalog-assistance,.product-share-button,.detail-config-link,.component-summary-link,.component-content-link,.related-products-all,.catalog-filters select,.catalog-toolbar select,.catalog-filters .condition-filter,.catalog-filters #clear-filters,.brand-search-preview>input,.component-pagination a,.component-pagination button,.catalog-pagination>a,.catalog-pagination>button,.detail-highlights>div,.detail-keyfacts>div,.component-facts>div,.spec-block,.spec-row,.component-spec-group,.component-reference-table>div,.component-reference-table tr,.component-features>li,.detail-thumbnails>button,.component-thumbnails>button,.vehicle-card-actions a>span,.component-card-actions a>span,.related-product-inquiry>span,.related-products-all>span,.parts-route>span:last-child,.detail-config-link>span,.vehicle-card-photo img,.catalog-photo img,.related-product-photo>img,.component-card-photo>a>img,.component-card-photo>img,.component-card-photo .component-image-window,.detail-gallery-open,.vehicle-gallery-dialog button,.component-lightbox button){transition:none!important}
  body.inner-page :is(.vehicle-card-photo,.catalog-photo,.component-card-photo,.related-product-photo,.component-type-nav>a,.detail-specnav>a,.component-categories>summary,.component-main-media)::after{transition:none!important}
  body.inner-page :is(.catalog-card,.component-card,.related-product-card):hover,body.inner-page :is(.vehicle-card-actions a,.component-card-actions a,.related-product-inquiry,.detail-config-link,.related-products-all):hover>span,body.inner-page .parts-route:hover>span:last-child{translate:none!important}
  body.inner-page .detail-main-photo:hover>img{transform:none}
}

/* Three focused refinements: parts entrance, vehicle tabs, download row spacing. */
body.inner-page .product-parts-photo>img{transition:transform .5s ease}
body.inner-page .product-parts-photo::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(150deg,rgba(158,20,42,.04),rgba(158,20,42,.24));box-shadow:inset 0 -3px 0 #cb2433;opacity:0;transition:opacity .5s ease}
body.inner-page .product-parts-photo>span{transition:color .5s ease}
body.inner-page .detail-specnav{gap:12px}
body.inner-page .detail-specnav>a{justify-content:center;padding:18px 24px;flex-shrink:0}
body.inner-page .detail-specnav>a:focus-visible{outline-offset:-4px}

/* Padding belongs to the resting layout: hover never changes geometry. */
body.download-page .download-resource{padding-inline:24px}
@media(hover:hover) and (pointer:fine){
  body.inner-page .product-parts-photo:hover>img{transform:scale(1.045)}
  body.inner-page .product-parts-photo:hover::before{opacity:1}
  body.inner-page .product-parts-photo:hover::after{opacity:.45}
  body.inner-page .product-parts-photo:hover>span{color:#ffb3bd}
}
@media(max-width:1100px){body.download-page .download-resource{padding-inline:20px}}
@media(max-width:640px){
  body.inner-page .detail-specnav{gap:8px}
  body.inner-page .detail-specnav>a{padding:14px 16px}
  body.download-page .download-resource{padding-inline:16px;column-gap:16px}
  body.download-page .download-resource-actions{padding-left:64px}
}
@media(max-width:360px){
  body.download-page .download-resource{padding-inline:12px;column-gap:14px}
  body.download-page .download-resource-actions{padding-left:62px}
}
@media(hover:none),(pointer:coarse){body.inner-page .product-parts-photo:hover>img{transform:none}}
@media(prefers-reduced-motion:reduce){
  body.inner-page .product-parts-photo>img,body.inner-page .product-parts-photo::before,body.inner-page .product-parts-photo>span{transition:none!important}
  body.inner-page .product-parts-photo:hover>img{transform:none}
}

/* Social channels: highlight the complete padded panel, not its inner content. */
body.contact-page .contact-social-location{transition:background-color .5s ease}
body.contact-page .contact-social-location:focus-within{background-color:#fff4f5}
body.contact-page .contact-social-location:focus-within .contact-location-item h2{color:var(--content-hover-red,#c91f36)}
@media(hover:hover) and (pointer:fine){
  body.contact-page .contact-social-location:hover{background-color:#fff4f5}
  body.contact-page .contact-social-location:hover .contact-location-item h2{color:var(--content-hover-red,#c91f36)}
}
body.contact-page .contact-social-location .contact-location-item{background:transparent}
@media(prefers-reduced-motion:reduce){body.contact-page .contact-social-location{transition:none!important}}


/* Contact channels: constant inner spacing in both normal and hover states. */
body.contact-page .contact-channel {
  padding-inline: 20px;
}

body.contact-page .contact-channel-copy > span {
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  body.contact-page .contact-channel {
    padding-inline: 16px;
  }
}

@media (max-width: 640px) {
  body.contact-page .contact-channel {
    padding-inline: 14px;
    column-gap: 12px;
  }
}

@media (max-width: 360px) {
  body.contact-page .contact-channel {
    padding-inline: 10px;
    column-gap: 10px;
  }
}
