
:root{
  --cpm-ink:#111317;
  --cpm-muted:#666d76;
  --cpm-line:#e5e7eb;
  --cpm-surface:#ffffff;
  --cpm-surface-soft:#f6f7f8;
  --cpm-accent:#d71920;
  --cpm-radius:10px;
  --cpm-shadow:0 8px 28px rgba(0,0,0,.08);
}

/* WooCommerce product cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  border:1px solid var(--cpm-line);
  border-radius:var(--cpm-radius);
  background:var(--cpm-surface);
  padding:14px;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  transform:translateY(-2px);
  box-shadow:var(--cpm-shadow);
  border-color:#cfd3d8;
}
.woocommerce ul.products li.product img{border-radius:8px;background:var(--cpm-surface-soft)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{line-height:1.28;min-height:2.55em}
.woocommerce ul.products li.product .price{font-weight:800}
.woocommerce ul.products li.product .button{min-height:42px;display:inline-flex;align-items:center;justify-content:center}

/* Shared storefront components rendered by UX */
.cpm-storefront-help{
  clear:both;margin:28px 0;padding:18px 20px;display:flex;gap:18px;align-items:center;justify-content:space-between;
  border:1px solid var(--cpm-line);border-left:5px solid var(--cpm-accent);border-radius:var(--cpm-radius);background:#fff;
  box-shadow:0 4px 16px rgba(0,0,0,.05)
}
.cpm-storefront-help__copy{display:flex;flex-direction:column;gap:4px}
.cpm-storefront-help__copy strong{font-size:1.05rem;color:var(--cpm-ink)}
.cpm-storefront-help__copy span{color:var(--cpm-muted)}
.cpm-storefront-help__actions{display:flex;gap:10px;flex-wrap:wrap}
.cpm-storefront-help .button{margin:0!important;white-space:nowrap}
.cpm-button-primary{background:var(--cpm-accent)!important;border-color:var(--cpm-accent)!important;color:#fff!important}
.cpm-button-secondary{background:#fff!important;border:1px solid #c8ccd0!important;color:var(--cpm-ink)!important}

.cpm-home-journey,.cpm-services-completion,.cpm-about-completion,.cpm-contact-completion{
  max-width:1240px;margin:48px auto;padding:0 20px
}
.cpm-section-heading{max-width:780px;margin-bottom:22px}
.cpm-section-heading h2{margin:4px 0 8px;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.08;color:var(--cpm-ink)}
.cpm-section-heading p{margin:0;color:var(--cpm-muted);font-size:1.03rem;line-height:1.65}
.cpm-eyebrow{font-size:.76rem;font-weight:900;letter-spacing:.14em;color:var(--cpm-accent)}

.cpm-home-journey__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cpm-journey-card{
  display:flex;min-height:230px;flex-direction:column;padding:24px;border:1px solid var(--cpm-line);border-radius:14px;
  background:#fff;color:var(--cpm-ink)!important;text-decoration:none!important;box-shadow:0 4px 18px rgba(0,0,0,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.cpm-journey-card:hover{transform:translateY(-3px);box-shadow:var(--cpm-shadow);border-color:#c8ccd0}
.cpm-journey-card__kicker{font-size:.72rem;font-weight:900;letter-spacing:.12em;color:var(--cpm-accent);margin-bottom:12px}
.cpm-journey-card strong{font-size:1.38rem;line-height:1.15;margin-bottom:10px}
.cpm-journey-card>span:not(.cpm-journey-card__kicker){color:var(--cpm-muted);line-height:1.55}
.cpm-journey-card b{margin-top:auto;padding-top:18px}

.cpm-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;border:1px solid var(--cpm-line);border-radius:12px;overflow:hidden;background:#111317;color:#fff}
.cpm-trust-strip>span{padding:16px 18px;border-right:1px solid rgba(255,255,255,.12)}
.cpm-trust-strip>span:last-child{border-right:0}
.cpm-trust-strip strong,.cpm-trust-strip small{display:block}
.cpm-trust-strip small{margin-top:3px;color:#c7cbd0;line-height:1.35}

.cpm-product-assurance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0 18px;padding:12px;background:#f6f7f8;border:1px solid var(--cpm-line);border-radius:10px}
.cpm-product-assurance__item{padding:8px 10px}
.cpm-product-assurance__item strong,.cpm-product-assurance__item span{display:block}
.cpm-product-assurance__item strong{font-size:.9rem;color:var(--cpm-ink);margin-bottom:3px}
.cpm-product-assurance__item span{font-size:.82rem;line-height:1.4;color:var(--cpm-muted)}

.cpm-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cpm-service-card{padding:20px;border:1px solid var(--cpm-line);border-radius:12px;background:#fff}
.cpm-service-card h3{margin:0 0 8px;color:var(--cpm-ink)}
.cpm-service-card p{margin:0;color:var(--cpm-muted);line-height:1.55}
.cpm-service-cta{margin-top:18px;display:flex;gap:12px;align-items:center;padding:18px 20px;border-radius:12px;background:#111317;color:#fff}
.cpm-service-cta>div{margin-right:auto;display:flex;flex-direction:column}
.cpm-service-cta>div span{color:#c7cbd0}

.cpm-about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cpm-about-grid>div{padding:20px;border:1px solid var(--cpm-line);border-radius:12px;background:#fff}
.cpm-about-grid strong,.cpm-about-grid span{display:block}
.cpm-about-grid strong{margin-bottom:6px;font-size:1.05rem}
.cpm-about-grid span{color:var(--cpm-muted);line-height:1.55}

.cpm-contact-card{padding:26px;border:1px solid var(--cpm-line);border-radius:14px;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.04)}
.cpm-contact-card h2{margin:5px 0 8px}
.cpm-contact-card>p{color:var(--cpm-muted);max-width:800px;line-height:1.6}
.cpm-contact-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.cpm-contact-facts>span{padding:14px;background:#f6f7f8;border-radius:8px}
.cpm-contact-facts strong{display:block;margin-bottom:3px}

.cpm-storefront-hidden{display:none!important}
.cpm-fitment-message{display:inline-flex!important;align-items:center;gap:6px;color:#3e4650!important;font-size:.92em}
.cpm-fitment-message:before{content:"✓";font-weight:900;color:#287a36}

@media(max-width:900px){
 .cpm-home-journey__grid,.cpm-service-grid,.cpm-about-grid{grid-template-columns:1fr 1fr}
 .cpm-trust-strip{grid-template-columns:1fr 1fr}
 .cpm-trust-strip>span:nth-child(2){border-right:0}
 .cpm-product-assurance{grid-template-columns:1fr}
}
@media(max-width:600px){
 .cpm-home-journey,.cpm-services-completion,.cpm-about-completion,.cpm-contact-completion{margin:32px auto;padding:0 14px}
 .cpm-home-journey__grid,.cpm-service-grid,.cpm-about-grid,.cpm-trust-strip,.cpm-contact-facts{grid-template-columns:1fr}
 .cpm-trust-strip>span{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
 .cpm-trust-strip>span:last-child{border-bottom:0}
 .cpm-service-cta{align-items:stretch;flex-direction:column}
 .cpm-service-cta>div{margin-right:0}
 .cpm-storefront-help{align-items:flex-start;flex-direction:column}
 .cpm-storefront-help__actions{width:100%}
 .cpm-storefront-help__actions .button{flex:1 1 180px}
}


/* v1.2 product information + account dashboard components */
.cpm-product-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.cpm-product-info-card{padding:18px;border:1px solid var(--cpm-line);border-radius:10px;background:var(--cpm-surface)}
.cpm-product-info-card h3{margin:0 0 6px;font-size:1rem}
.cpm-product-info-card p{margin:0;color:var(--cpm-muted);line-height:1.5}
.cpm-account-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}
.cpm-account-overview-card{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--cpm-line);border-radius:10px;background:#fff;text-decoration:none!important;color:var(--cpm-ink)!important}
.cpm-account-overview-card:hover{box-shadow:var(--cpm-shadow);transform:translateY(-1px)}
.cpm-account-overview-card strong{font-size:1.05rem}
.cpm-account-overview-card span{color:var(--cpm-muted);line-height:1.45}
@media(max-width:700px){.cpm-product-info-grid,.cpm-account-overview-grid{grid-template-columns:1fr}}

/* v1.3 Garage vehicle context presentation */
.cpm-primary-vehicle-context{
 display:flex;align-items:center;gap:8px;flex-wrap:wrap;
 margin:10px 0 14px;padding:10px 12px;border:1px solid #dfe3e7;
 border-radius:9px;background:#f8f9fa;font-size:.9rem
}
.cpm-primary-vehicle-context span{color:#6b7280}
.cpm-primary-vehicle-context strong{color:var(--cpm-ink,#111317)}
.cpm-primary-vehicle-context a{margin-left:auto;font-weight:800;text-decoration:none}
@media(max-width:650px){.cpm-primary-vehicle-context a{margin-left:0;width:100%}}

/* v1.4 vehicle journey/community presentation */
.cpm-journey-guide{margin:0 0 16px;padding:14px 16px;border:1px solid #dfe3e7;border-radius:10px;background:#fff}
.cpm-journey-guide strong{display:block;margin-bottom:4px;font-weight:900}
.cpm-journey-guide span{color:#60666d;line-height:1.5}
.cpm-former-vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cpm-former-vehicle-card{padding:18px;border:1px solid #e2e6ea;border-radius:12px;background:#fff}
.cpm-history-event{position:relative}
.cpm-sale-badge{display:inline-block;padding:6px 9px;border-radius:999px;font-size:.72rem;font-weight:900;letter-spacing:.08em}
@media(max-width:760px){.cpm-former-vehicle-grid{grid-template-columns:1fr}}

/* CPM Site 2.0 unified visual contract */
:root{--cpm-shell:1280px;--cpm-radius:12px;--cpm-gap:18px;--cpm-border:#e2e6ea;--cpm-ink:#111317;--cpm-muted:#656b73}
.cpm-site-shell,.cpm-account-shell,.cpm-product-info-grid{max-width:var(--cpm-shell);margin-left:auto;margin-right:auto}
.cpm-site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--cpm-gap)}
.cpm-site-card{border:1px solid var(--cpm-border);border-radius:var(--cpm-radius);background:#fff;padding:18px}
.cpm-site-card h2,.cpm-site-card h3{margin-top:0;color:var(--cpm-ink)}
.cpm-site-card p{color:var(--cpm-muted);line-height:1.55}
.cpm-install-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.cpm-install-choice .button{min-height:46px;display:flex;align-items:center;justify-content:center;font-weight:900}
.cpm-fitment-state{padding:12px 14px;border:1px solid var(--cpm-border);border-radius:10px;margin:12px 0}
.cpm-retail-price-note{font-size:.82rem;color:var(--cpm-muted)}
@media(max-width:900px){.cpm-site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.cpm-site-grid,.cpm-install-choice{grid-template-columns:1fr}.cpm-site-card{padding:14px}}


/* v2.4.2 — safe full-width correction only.
   No header rendering, replacement, suppression, or DOM manipulation. */
:root{
  --cpm-shell:100%;
}

/* CPM-owned storefront sections should use the available page width. */
.cpm-site-shell,
.cpm-account-shell,
.cpm-product-info-grid,
.cpm-home-journey,
.cpm-services-completion,
.cpm-about-completion,
.cpm-contact-completion{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* Keep comfortable inner gutters without re-boxing the site. */
.cpm-site-shell,
.cpm-account-shell,
.cpm-product-info-grid,
.cpm-home-journey,
.cpm-services-completion,
.cpm-about-completion,
.cpm-contact-completion{
  padding-left:24px!important;
  padding-right:24px!important;
}

/* WordPress/theme content shells: remove fixed desktop max-width while leaving
   header ownership and header markup completely untouched. */
body.home #page,
body.home .site,
body.home #content,
body.home .site-content,
body.home #primary,
body.home .content-area,
body.home main,
body.home article,
body.home .entry-content,
body.woocommerce-page #page,
body.woocommerce-page .site,
body.woocommerce-page #content,
body.woocommerce-page .site-content,
body.woocommerce-page #primary,
body.woocommerce-page .content-area{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Remove only outer content-shell horizontal padding on the homepage/shop.
   Individual CPM sections retain their own 24px inner gutter above. */
body.home #content,
body.home .site-content,
body.home #primary,
body.home .content-area,
body.woocommerce-page #content,
body.woocommerce-page .site-content,
body.woocommerce-page #primary,
body.woocommerce-page .content-area{
  padding-left:0!important;
  padding-right:0!important;
}

@media(max-width:700px){
  .cpm-site-shell,
  .cpm-account-shell,
  .cpm-product-info-grid,
  .cpm-home-journey,
  .cpm-services-completion,
  .cpm-about-completion,
  .cpm-contact-completion{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* v2.4.4 — HOMEPAGE ONLY viewport breakout.
   Internal pages are intentionally untouched because they are already full width. */

body.home{
  width:100%!important;
  max-width:none!important;
  overflow-x:hidden!important;
}

/* Break only the homepage site shell out of the centered legacy width. */
body.home #page,
body.home .site,
body.home #content,
body.home .site-content,
body.home #primary,
body.home .content-area,
body.home main,
body.home main.site-main,
body.home article,
body.home .entry-content,
body.home .wp-site-blocks,
body.home .ast-container{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* The old homepage is centered inside a fixed-width wrapper. Force that wrapper
   to match the browser viewport without changing internal-page containers. */
body.home #page,
body.home .site{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}

/* Remove the homepage-only outer gutters that preserve the boxed appearance. */
body.home #content,
body.home .site-content,
body.home #primary,
body.home .content-area,
body.home main,
body.home article,
body.home .entry-content{
  padding-left:0!important;
  padding-right:0!important;
}

/* Expand the actual CPM homepage bands, not every generic DIV on the site. */
body.home .cpm-homepage,
body.home .cpm-home,
body.home [class^="cpm-home-"],
body.home [class*=" cpm-home-"],
body.home .cpm-hero,
body.home [class^="cpm-hero-"],
body.home [class*=" cpm-hero-"],
body.home [class^="cpm-shop-by-"],
body.home [class*=" cpm-shop-by-"],
body.home [class^="cpm-featured-"],
body.home [class*=" cpm-featured-"],
body.home [class^="cpm-services-"],
body.home [class*=" cpm-services-"]{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* The visible homepage content should keep usable edge spacing while filling the screen. */
body.home .cpm-homepage > *,
body.home .cpm-home > *,
body.home [class^="cpm-home-"] > *,
body.home [class*=" cpm-home-"] > *{
  box-sizing:border-box!important;
}

/* Do not alter the current header implementation; only let the homepage header shell
   use the same viewport width if it is nested inside the homepage wrapper. */
body.home header,
body.home .site-header,
body.home #masthead{
  max-width:none!important;
}

/* Desktop: use a real storefront canvas instead of an 890–1280px centered picture. */
@media(min-width:901px){
  body.home .cpm-homepage,
  body.home .cpm-home,
  body.home [class^="cpm-home-"],
  body.home [class*=" cpm-home-"]{
    padding-left:clamp(20px,2vw,40px)!important;
    padding-right:clamp(20px,2vw,40px)!important;
  }
}

@media(max-width:900px){
  body.home #page,
  body.home .site{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* v2.5.2 — header/footer shell is server-rendered by CPM System; no clone styles. */

/* v2.5.1 — product/menu typography and semantic color system
   Matches approved dark storefront mockup without changing header ownership. */

/* Core type stack */
body,
button,
input,
select,
textarea,
.woocommerce,
.cpm-site-shell{
  font-family:Arial, Helvetica, sans-serif!important;
}

/* Main navigation / menus */
.main-navigation a,
.site-header nav a,
#masthead nav a,
.cpm-site-nav a,
.cpm-header-nav a,
.woocommerce-MyAccount-navigation a,
.widget_nav_menu a,
.product-categories a,
.woocommerce-widget-layered-nav-list a{
  font-family:Arial, Helvetica, sans-serif!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
  text-transform:uppercase!important;
  color:#f5f7fa!important;
}

.main-navigation a:hover,
.site-header nav a:hover,
#masthead nav a:hover,
.cpm-site-nav a:hover,
.cpm-header-nav a:hover,
.woocommerce-MyAccount-navigation a:hover,
.widget_nav_menu a:hover,
.product-categories a:hover,
.woocommerce-widget-layered-nav-list a:hover{
  color:#2b9cff!important;
}

/* Filter/menu section headings */
.widget-title,
.woocommerce-widget-layered-nav h2,
.woocommerce-widget-layered-nav h3,
aside h2,
aside h3,
.cpm-filter-heading,
.cpm-filter-title{
  font-family:Arial, Helvetica, sans-serif!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-transform:uppercase!important;
  color:#fff!important;
}

.widget_product_categories .widget-title,
.cpm-filter-category-title{
  color:#ff2a2f!important;
}
.widget_layered_nav .widget-title,
.cpm-filter-availability-title{
  color:#2b9cff!important;
}
.cpm-filter-services-title{
  color:#8a4dff!important;
}

/* Product cards */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  font-family:Arial, Helvetica, sans-serif!important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  color:#fff!important;
  font-size:18px!important;
  font-weight:900!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
}

.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .woocommerce-Price-amount{
  color:#2f8fff!important;
  font-size:22px!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
}

.woocommerce ul.products li.product .stock,
.woocommerce ul.products li.product .in-stock,
.cpm-stock-badge,
.cpm-fitment-state,
.cpm-fitment-ok{
  color:#24d63a!important;
  font-weight:900!important;
}

.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  background:#ef1f24!important;
  color:#fff!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.015em!important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover{
  background:#ff3136!important;
  color:#fff!important;
}

.woocommerce ul.products li.product a:not(.button),
.woocommerce-page ul.products li.product a:not(.button){
  text-decoration:none!important;
}

/* Details / secondary product actions */
.cpm-product-details-link,
.cpm-details-link,
.woocommerce ul.products li.product .cpm-details,
.woocommerce-page ul.products li.product .cpm-details{
  color:#ffbf00!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}

/* Supporting product copy */
.woocommerce ul.products li.product .product_meta,
.woocommerce ul.products li.product .sku,
.woocommerce ul.products li.product .cpm-product-meta,
.woocommerce ul.products li.product .cpm-fitment-copy{
  color:#d8dde3!important;
  font-weight:600!important;
}

/* Single product page typography */
.single-product .product_title{
  color:#fff!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
}
.single-product .price,
.single-product .woocommerce-Price-amount{
  color:#2f8fff!important;
  font-weight:900!important;
}
.single-product .stock.in-stock{
  color:#24d63a!important;
  font-weight:900!important;
}
.single-product .summary .button{
  background:#ef1f24!important;
  color:#fff!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}

/* Sorting + result count */
.woocommerce-result-count{
  color:#f0f2f5!important;
  font-weight:700!important;
}
.woocommerce-result-count strong,
.cpm-result-count-accent{
  color:#2b9cff!important;
  font-weight:900!important;
}
.woocommerce-ordering select{
  background:#171b1f!important;
  color:#fff!important;
  border:1px solid #3b4249!important;
  font-weight:700!important;
}

/* Sidebar menu items */
.widget_product_categories li a,
.woocommerce-widget-layered-nav-list li a{
  color:#e9edf2!important;
  font-weight:700!important;
}
.widget_product_categories li a:hover,
.woocommerce-widget-layered-nav-list li a:hover{
  color:#2b9cff!important;
}

/* Service menu semantics */
.cpm-service-link,
.cpm-install-link,
.cpm-tuning-link{
  color:#9b59ff!important;
  font-weight:900!important;
}

/* Maintain readability on mobile */
@media(max-width:700px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:16px!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:20px!important;
  }
}


/* ============================================================
   v2.6.0 — Mobile + Tablet UX Milestone
   Component-level responsive behavior. CPM System owns shell.
   ============================================================ */

/* Keep desktop presentation protected. */
@media (min-width:1024px){
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{min-width:0}
}

/* Tablet storefront components */
@media (min-width:768px) and (max-width:1023px){
  .woocommerce .woocommerce-result-count,
  .woocommerce .woocommerce-ordering{margin-bottom:14px!important}
  .woocommerce ul.products,
  .woocommerce-page ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  .woocommerce ul.products::before,
  .woocommerce ul.products::after{display:none!important}
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    float:none!important;width:auto!important;margin:0!important;
    min-width:0!important;padding:14px!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:16px!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:20px!important;
  }
  .single-product div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)!important;
    gap:28px!important;
  }
  .single-product div.product .images,
  .single-product div.product .summary{
    float:none!important;width:auto!important;margin:0!important;
  }
}

/* Phone storefront components */
@media (max-width:767px){
  html,body{max-width:100%;overflow-x:hidden}

  /* Shop toolbar becomes compact and touch-friendly. */
  .woocommerce .woocommerce-result-count,
  .woocommerce .woocommerce-ordering{
    float:none!important;
    width:100%!important;
    margin:0 0 10px!important;
  }
  .woocommerce .woocommerce-ordering select{
    width:100%!important;
    min-height:42px!important;
    padding:8px 10px!important;
  }

  /* Product grid: two usable cards on normal phones, one on narrow phones. */
  .woocommerce ul.products,
  .woocommerce-page ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    margin:0!important;
  }
  .woocommerce ul.products::before,
  .woocommerce ul.products::after{display:none!important}
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    float:none!important;
    width:auto!important;
    margin:0!important;
    min-width:0!important;
    padding:10px!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .woocommerce ul.products li.product img{
    width:100%!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    margin:0 0 8px!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:14px!important;
    line-height:1.15!important;
    min-height:2.3em;
    overflow-wrap:anywhere;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:17px!important;
    line-height:1.1!important;
  }
  .woocommerce ul.products li.product .button{
    width:100%!important;
    min-height:40px!important;
    margin-top:auto!important;
    padding:10px 8px!important;
    text-align:center!important;
    font-size:11px!important;
  }
  .woocommerce ul.products li.product .cpm-details,
  .cpm-product-details-link,
  .cpm-details-link{
    display:block!important;
    min-height:36px!important;
    padding:8px 4px!important;
    text-align:center!important;
    font-size:11px!important;
  }

  /* Filters/sidebar: compact collapsed panel instead of a full-page wall. */
  .woocommerce .widget-area,
  .woocommerce-page .widget-area,
  .shop-sidebar,
  .cpm-shop-sidebar,
  aside.woocommerce-sidebar{
    max-height:46vh;
    overflow:auto;
    overscroll-behavior:contain;
    border:1px solid #30343a;
    background:#101214;
    padding:12px!important;
    margin:0 0 14px!important;
  }
  .woocommerce .widget,
  .woocommerce-page .widget{margin-bottom:14px!important}
  .woocommerce .widget-title,
  .woocommerce-page .widget-title,
  .woocommerce-widget-layered-nav h2,
  .woocommerce-widget-layered-nav h3{
    font-size:13px!important;
    margin:0 0 8px!important;
  }
  .widget_product_categories li,
  .woocommerce-widget-layered-nav-list li{
    padding:4px 0!important;
  }

  /* Single product becomes a deliberate one-column purchase flow. */
  .single-product div.product{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
  }
  .single-product div.product .images,
  .single-product div.product .summary{
    float:none!important;
    width:100%!important;
    margin:0!important;
  }
  .single-product .product_title{
    font-size:clamp(24px,8vw,34px)!important;
    line-height:1.02!important;
    overflow-wrap:anywhere;
  }
  .single-product .summary .price,
  .single-product .summary .woocommerce-Price-amount{
    font-size:24px!important;
  }
  .single-product form.cart{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }
  .single-product form.cart .quantity{
    float:none!important;
    margin:0!important;
  }
  .single-product form.cart .button{
    flex:1 1 180px!important;
    min-height:44px!important;
  }

  /* Account navigation is horizontal-scroll instead of a tall menu wall. */
  .woocommerce-MyAccount-navigation ul{
    display:flex!important;
    gap:6px!important;
    overflow-x:auto!important;
    padding:0 0 8px!important;
    margin:0 0 14px!important;
    scrollbar-width:thin;
  }
  .woocommerce-MyAccount-navigation li{
    flex:0 0 auto!important;
    margin:0!important;
  }
  .woocommerce-MyAccount-navigation a{
    display:block!important;
    white-space:nowrap!important;
    padding:9px 11px!important;
    border:1px solid #30343a!important;
    background:#121519!important;
    font-size:11px!important;
  }
  .woocommerce-MyAccount-content{
    float:none!important;
    width:100%!important;
  }

  /* Buttons/inputs get touch-safe dimensions sitewide. */
  .woocommerce button,
  .woocommerce input[type=submit],
  .woocommerce a.button{
    min-height:40px;
  }
}

@media (max-width:430px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    padding:12px!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:auto;
    font-size:16px!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:20px!important;
  }
}


/* v2.6.1 — tablet card proportion correction */
@media (min-width:768px) and (max-width:1023px){
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    height:auto!important;
  }
  .woocommerce ul.products li.product img{
    width:100%!important;
    height:auto!important;
    max-height:260px!important;
    aspect-ratio:4/3!important;
    object-fit:contain!important;
    margin:0 0 10px!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    min-height:2.3em!important;
    margin-bottom:7px!important;
  }
  .woocommerce ul.products li.product .price{margin-bottom:8px!important}
  .woocommerce ul.products li.product .button{
    width:100%!important;
    min-height:42px!important;
    margin-top:auto!important;
    text-align:center!important;
  }
  .cpm-canonical-footer-shell .cpm-footer,
  .cpm-footer{
    row-gap:18px!important;
    padding-top:28px!important;
    padding-bottom:28px!important;
  }
}


/* ============================================================
   v2.6.2 — Readable Catalog + Clean Responsive Pagination
   Presentation-only correction. Desktop + tablet + phone.
   ============================================================ */

/* Product text must remain readable against both dark CPM surfaces and
   Woo/theme white card surfaces. Cards own their foreground colors. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  color:#171a1f!important;
  overflow:hidden!important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link{
  color:#171a1f!important;
}
.woocommerce ul.products li.product .product_meta,
.woocommerce ul.products li.product .sku,
.woocommerce ul.products li.product .cpm-product-meta,
.woocommerce ul.products li.product .cpm-fitment-copy{
  color:#505862!important;
}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .woocommerce-Price-amount{
  color:#1268b3!important;
}
.woocommerce ul.products li.product .stock,
.woocommerce ul.products li.product .in-stock{
  color:#17762a!important;
}

/* Prevent tiny supplier/meta text from becoming unreadable. */
.woocommerce ul.products li.product{
  font-size:15px!important;
  line-height:1.45!important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:0!important;
  margin:8px 0 7px!important;
  font-size:16px!important;
  line-height:1.3!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.woocommerce ul.products li.product .price{
  margin:0 0 9px!important;
  font-size:20px!important;
  line-height:1.2!important;
}

/* Clean WooCommerce pagination. No floats, overlapping page numbers or
   vertically stacked fragments. */
.woocommerce nav.woocommerce-pagination,
.woocommerce-page nav.woocommerce-pagination{
  clear:both!important;
  width:100%!important;
  margin:28px 0 8px!important;
  padding:0!important;
  text-align:center!important;
  overflow:visible!important;
}
.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul,
.woocommerce .woocommerce-pagination ul.page-numbers,
.woocommerce-page .woocommerce-pagination ul.page-numbers{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:auto!important;
  max-width:100%!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  float:none!important;
  list-style:none!important;
}
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li{
  display:block!important;
  float:none!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:visible!important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:42px!important;
  height:42px!important;
  margin:0!important;
  padding:0 11px!important;
  border:1px solid #343a40!important;
  border-radius:7px!important;
  background:#171b1f!important;
  color:#f7f8fa!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li span.current{
  background:#ef1f24!important;
  border-color:#ef1f24!important;
  color:#fff!important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li a:hover{
  background:#252b31!important;
  color:#fff!important;
}

/* Desktop: keep the catalog comfortably readable rather than packing cards
   beyond their useful text width. */
@media (min-width:1200px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{
    column-gap:16px!important;
    row-gap:18px!important;
  }
}

/* Tablet: two real cards per row, readable type, touch-safe pagination. */
@media (min-width:768px) and (max-width:1023px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:16px!important;
    line-height:1.3!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:19px!important;
  }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span,
  .woocommerce-page nav.woocommerce-pagination ul li a,
  .woocommerce-page nav.woocommerce-pagination ul li span{
    min-width:44px!important;
    height:44px!important;
    font-size:14px!important;
  }
}

/* Phone: prioritize reading and touch targets. Normal phones remain two
   columns only when there is enough room; narrow phones use one column. */
@media (max-width:767px){
  .woocommerce ul.products li.product{
    font-size:14px!important;
    line-height:1.4!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:15px!important;
    line-height:1.3!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:18px!important;
  }
  .woocommerce nav.woocommerce-pagination,
  .woocommerce-page nav.woocommerce-pagination{
    margin-top:20px!important;
    padding:0 8px!important;
  }
  .woocommerce nav.woocommerce-pagination ul,
  .woocommerce-page nav.woocommerce-pagination ul{
    gap:6px!important;
  }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span,
  .woocommerce-page nav.woocommerce-pagination ul li a,
  .woocommerce-page nav.woocommerce-pagination ul li span{
    min-width:42px!important;
    height:42px!important;
    padding:0 9px!important;
    font-size:13px!important;
  }
}
@media (max-width:480px){
  .woocommerce ul.products,
  .woocommerce-page ul.products{
    grid-template-columns:1fr!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:17px!important;
  }
  .woocommerce ul.products li.product .price,
  .woocommerce ul.products li.product .woocommerce-Price-amount{
    font-size:20px!important;
  }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span,
  .woocommerce-page nav.woocommerce-pagination ul li a,
  .woocommerce-page nav.woocommerce-pagination ul li span{
    min-width:40px!important;
    height:40px!important;
    padding:0 8px!important;
  }
}


/* ============================================================
   v2.6.3 — Dark Performance Component System
   Component presentation owned by CPM Storefront UI.
   ============================================================ */
:root{
  --cpm-ui-bg:#090b0d;
  --cpm-ui-card:#111419;
  --cpm-ui-card-2:#171b20;
  --cpm-ui-line:#2a3037;
  --cpm-ui-text:#eef1f4;
  --cpm-ui-muted:#9ca5af;
  --cpm-ui-red:#ef1f24;
  --cpm-ui-blue:#2f8cff;
  --cpm-ui-green:#35c759;
  --cpm-ui-yellow:#ffc531;
  --cpm-ui-purple:#a970ff;
}

/* Shop/catalog canvas and controls */
.woocommerce,
.woocommerce-page,
.woocommerce .site-main,
.woocommerce-page .site-main{
  color:var(--cpm-ui-text)!important;
}
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count{
  color:var(--cpm-ui-blue)!important;
  font-weight:800!important;
}
.woocommerce .woocommerce-ordering select,
.woocommerce-page .woocommerce-ordering select{
  background:#111419!important;
  color:#edf0f3!important;
  border:1px solid var(--cpm-ui-line)!important;
  border-radius:5px!important;
}

/* Product cards now use the reference-image dark hierarchy. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  background:var(--cpm-ui-card)!important;
  color:var(--cpm-ui-text)!important;
  border:1px solid #242a31!important;
  border-radius:7px!important;
  padding:11px!important;
  box-shadow:none!important;
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  background:var(--cpm-ui-card-2)!important;
  border-color:#3a424b!important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link{
  color:#f4f6f8!important;
}
.woocommerce ul.products li.product .product_meta,
.woocommerce ul.products li.product .sku,
.woocommerce ul.products li.product .cpm-product-meta,
.woocommerce ul.products li.product .cpm-fitment-copy{
  color:var(--cpm-ui-muted)!important;
}
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-Price-amount,
.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .woocommerce-Price-amount{
  color:var(--cpm-ui-blue)!important;
}
.woocommerce ul.products li.product .stock,
.woocommerce ul.products li.product .in-stock{
  color:var(--cpm-ui-green)!important;
}
.woocommerce ul.products li.product a.button,
.woocommerce-page ul.products li.product a.button,
.woocommerce ul.products li.product button.button{
  background:var(--cpm-ui-red)!important;
  border:1px solid var(--cpm-ui-red)!important;
  color:#fff!important;
  border-radius:5px!important;
}
.woocommerce ul.products li.product a.button:hover,
.woocommerce-page ul.products li.product a.button:hover{
  filter:brightness(1.08);
}

/* Category/filter/sidebar panels */
.woocommerce .widget,
.woocommerce-page .widget,
.woocommerce .shop-sidebar,
.woocommerce-page .shop-sidebar,
.woocommerce .widget-area,
.woocommerce-page .widget-area{
  background:#0f1216!important;
  color:#dce1e6!important;
}
.woocommerce .widget-title,
.woocommerce-page .widget-title{
  color:#fff!important;
  border-bottom:1px solid #292f36!important;
}
.woocommerce .widget_product_categories .widget-title,
.woocommerce-page .widget_product_categories .widget-title{color:var(--cpm-ui-red)!important}
.woocommerce .widget_layered_nav .widget-title,
.woocommerce-page .widget_layered_nav .widget-title{color:var(--cpm-ui-blue)!important}
.woocommerce .widget a,.woocommerce-page .widget a{color:#c8ced5!important}
.woocommerce .widget a:hover,.woocommerce-page .widget a:hover{color:#fff!important}

/* Single product */
.single-product .product,
.woocommerce div.product{
  color:var(--cpm-ui-text)!important;
}
.woocommerce div.product .summary,
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .upsells{
  color:var(--cpm-ui-text)!important;
}
.woocommerce div.product .product_title{color:#fff!important}
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--cpm-ui-blue)!important}
.woocommerce div.product .stock{color:var(--cpm-ui-green)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:#111419!important;
  border-color:#2a3037!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:#cbd1d8!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  background:#191d22!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}
.woocommerce div.product .woocommerce-Tabs-panel{
  background:#101318!important;
  color:#cbd1d8!important;
  border:1px solid #272d34!important;
  padding:20px!important;
}

/* Account/cart/checkout/tables */
.woocommerce table.shop_table,
.woocommerce-page table.shop_table,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce .cart_totals,
.woocommerce .woocommerce-MyAccount-content{
  background:#101318!important;
  color:#e8ebef!important;
  border-color:#2a3037!important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td{
  color:#dce1e6!important;
  border-color:#2a3037!important;
}
.woocommerce-MyAccount-navigation{
  background:#0f1216!important;
  border:1px solid #262c33!important;
}
.woocommerce-MyAccount-navigation a{color:#c8ced5!important}
.woocommerce-MyAccount-navigation .is-active a,
.woocommerce-MyAccount-navigation a:hover{color:#fff!important;background:#191d22!important}

/* Journey/service cards use differentiated accent text like the reference. */
.cpm-product-assurance__item strong,
.cpm-product-info-card h3{color:var(--cpm-ui-blue)!important}
.cpm-install-choice .button.alt,
.cpm-service-card h3{color:#fff!important}
.cpm-service-card{border-top:2px solid var(--cpm-ui-purple)!important}
.cpm-journey-card__kicker{color:var(--cpm-ui-yellow)!important}

/* Preserve the clean pagination, now integrated into dark theme. */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span{
  background:#111419!important;
  color:#dfe4e9!important;
  border-color:#303741!important;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li span.current{
  background:var(--cpm-ui-red)!important;
  border-color:var(--cpm-ui-red)!important;
  color:#fff!important;
}

/* Responsive component consistency */
@media (max-width:1023px){
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product{
    background:#111419!important;
  }
}
@media (max-width:767px){
  .woocommerce .woocommerce-ordering,
  .woocommerce-page .woocommerce-ordering{
    float:none!important;
    width:100%!important;
  }
  .woocommerce .woocommerce-ordering select,
  .woocommerce-page .woocommerce-ordering select{
    width:100%!important;
    min-height:44px!important;
  }
}


/* ============================================================
   v2.7.0 — Clean Parts Navigation Presentation
   Coordinates category-card and sidebar hierarchy presentation.
   ============================================================ */
.cpm-shop-sidebar .cpm-parts-group__toggle{
  font-family:inherit!important;
}
.cpm-shop-sidebar .cpm-parts-group__children a,
.cpm-shop-sidebar .cpm-filter-all{
  text-decoration:none!important;
}
.cpm-shop-sidebar .cpm-parts-group__children small{
  font-variant-numeric:tabular-nums;
}
.cpm-shop-sidebar .cpm-parts-group--red.is-open .cpm-parts-group__toggle{color:#fff!important}
.cpm-shop-sidebar .cpm-parts-group--blue.is-open .cpm-parts-group__toggle{color:#fff!important}
.cpm-shop-sidebar .cpm-parts-group--green.is-open .cpm-parts-group__toggle{color:#fff!important}
.cpm-shop-sidebar .cpm-parts-group--yellow.is-open .cpm-parts-group__toggle{color:#fff!important}
.cpm-shop-sidebar .cpm-parts-group--purple.is-open .cpm-parts-group__toggle{color:#fff!important}

/* Category cards use the same controlled dark department visual language. */
.cpm-category-card{
  background:#111419!important;
  border:1px solid #252b32!important;
  color:#eef1f4!important;
}
.cpm-category-card strong{
  color:#fff!important;
}
.cpm-category-card span{
  color:#9da5ae!important;
}

@media (max-width:1200px){
  .cpm-shop-sidebar{
    width:100%!important;
  }
}
@media (max-width:767px){
  .cpm-shop-sidebar .cpm-parts-group__toggle,
  .cpm-shop-sidebar .cpm-parts-group__children a{
    font-size:13px!important;
  }
}

/* 2.8.0 — vehicle-first mega-menu presentation contract */
.cpm-commerce-mega a:focus-visible,.cpm-commerce-nav__trigger:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.cpm-commerce-mega__vehicle{border-top:3px solid #d71920}
.cpm-commerce-mega__parts{border-top:3px solid #2878ff}
.cpm-commerce-mega__quick{border-top:3px solid #7b4dff}

/* 2.8.1 — curated Parts journey cards, separate from taxonomy */
.cpm-parts-journey:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.cpm-parts-journey--red:hover b{color:#ff4a4f}.cpm-parts-journey--yellow:hover b{color:#f6bf26}.cpm-parts-journey--green:hover b{color:#33c56b}.cpm-parts-journey--blue:hover b{color:#4d91ff}.cpm-parts-journey--purple:hover b{color:#9a7cff}


/* 2.8.2 — compact navigation/product-grid presentation contract */
.cpm-shop-sidebar,.cpm-parts-journey,.cpm-wc-product-card{box-sizing:border-box}
.cpm-nav__inner,.cpm-filter-panel{-webkit-overflow-scrolling:touch}
.cpm-parts-group__toggle:focus-visible,
.cpm-filter-all:focus-visible,
.cpm-filter-toggle:focus-visible,
.cpm-wc-product-card a:focus-visible{
  outline:2px solid currentColor!important;
  outline-offset:2px!important;
}
@media (hover:none){
  .cpm-parts-journey:hover{transform:none!important}
}

/* 2.8.3 — Garage-selected journey visibility */
.cpm-selected-vehicle-bar a:focus-visible,.cpm-universal-shop-intro>a:focus-visible{outline:2px solid currentColor;outline-offset:2px}


/* 2.8.4 — product-only main grids */
.woocommerce li.product-category,
.woocommerce-page li.product-category,
.cpm-card-grid--categories,
.cpm-category-card{
  display:none!important;
}
.cpm-shop-sidebar{
  position:static!important;
  top:auto!important;
}
