/* OEM ASTRA J — Phase 3: Top Selling Products (desktop ≥901px only)
   Visual redesign only — IDs, JS, and carousel logic untouched. */

@media (min-width: 901px) {
  :root {
    --ts-blue: #1e5bb8;
    --ts-text: #1a2332;
    --ts-muted: #6b7280;
    --ts-border: #e5eaf0;
    --ts-card-radius: 18px;
    --ts-media-scale: 1.15;
  }

  /* ── Section shell ── */
  body.is-home-page #topParts.top-selling-section,
  body.is-home-page .home-cinematic-band #topParts.top-selling-section {
    background: #ffffff !important;
    border: none !important;
    /* Large white gap under category row (mockup) + 3cm catalog→best-selling */
    padding: calc(72px + 3cm) 0 8px !important;
    margin: 0 0 0 !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 2 !important;
  }

  body.is-home-page #topParts.top-selling-section .section-inner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    max-width: min(1480px, calc(100% - 48px)) !important;
    margin-inline: auto;
    width: 100% !important;
  }

  /* ── Header: rules flanking title + View All on the right ── */
  body.is-home-page #topParts.top-selling-section .section-head {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 16px !important;
    margin-bottom: 9.54px !important;
    margin-top: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    scroll-margin-top: calc(var(--nav-total-h, 82px) + 16px);
  }

  body.is-home-page #topParts.top-selling-section .top-parts-head-copy {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 16px !important;
  }

  body.is-home-page #topParts.top-selling-section .top-parts-head-copy::before,
  body.is-home-page #topParts.top-selling-section .top-parts-head-copy::after {
    content: "" !important;
    flex: 1 1 auto !important;
    height: 1px !important;
    min-width: 24px !important;
    background: #002157 !important;
    opacity: 0.35 !important;
  }

  body.is-home-page #topParts.top-selling-section .section-label {
    display: none !important;
  }

  body.is-home-page #topParts.top-selling-section .section-title {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    font-family: var(--font-en, "Segoe UI", sans-serif) !important;
    font-size: clamp(13px, 1.2vw, 17px) !important;
    font-weight: 800 !important;
    font-style: normal !important;
    letter-spacing: -0.02em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    color: #0f2d6b !important;
    -webkit-text-fill-color: #0f2d6b !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    filter: none !important;
    padding: 0 !important;
  }

  body.is-home-page #topParts.top-selling-section .top-selling-title-flame {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 auto !important;
    display: block !important;
    color: #e85d04 !important;
  }

  body.is-home-page #topParts.top-selling-section .section-title em {
    display: inline !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    font-style: normal !important;
    letter-spacing: inherit !important;
    text-transform: uppercase !important;
    line-height: inherit !important;
    white-space: inherit !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    background-clip: unset !important;
    filter: none !important;
    padding: 0 !important;
  }

  html[dir="rtl"] body.is-home-page #topParts.top-selling-section .section-title,
  html[dir="rtl"] body.is-home-page #topParts.top-selling-section .section-title em {
    font-family: var(--font-ar, Cairo, sans-serif) !important;
    text-transform: none !important;
  }

  /* Text-only blue “View All →” link (mockup) */
  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold,
  body.is-home-page #topParts.top-selling-section .btn-all-gold {
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    gap: 0.35em !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #1e5bb8 !important;
    -webkit-text-fill-color: #1e5bb8 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    font-family: var(--font-en, "DM Sans", sans-serif) !important;
    letter-spacing: 0.01em !important;
    box-shadow: none !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: color 0.2s ease, opacity 0.2s ease;
  }

  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold span,
  body.is-home-page #topParts.top-selling-section .btn-all-gold span {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    background: transparent !important;
  }

  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold::after,
  body.is-home-page #topParts.top-selling-section .btn-all-gold::after {
    content: "→" !important;
    display: inline-block !important;
    font-weight: 700 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    line-height: 1 !important;
  }

  html[dir="rtl"] body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold,
  html[dir="rtl"] body.is-home-page #topParts.top-selling-section .btn-all-gold {
    font-family: var(--font-ar, Cairo, sans-serif) !important;
  }

  html[dir="rtl"] body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold::after,
  html[dir="rtl"] body.is-home-page #topParts.top-selling-section .btn-all-gold::after {
    content: "←" !important;
  }

  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold:hover,
  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold:focus-visible,
  body.is-home-page #topParts.top-selling-section .btn-all-gold:hover,
  body.is-home-page #topParts.top-selling-section .btn-all-gold:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    color: #0f2d6b !important;
    -webkit-text-fill-color: #0f2d6b !important;
    opacity: 0.92;
  }

  body.is-home-page #topParts.top-selling-section > .section-inner > .section-head > button.btn-all-gold:hover span,
  body.is-home-page #topParts.top-selling-section .btn-all-gold:hover span {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
  }

  /* ── Horizontal row: exactly 6 larger cards ── */
  body.is-home-page #topParts .top-parts-grid,
  body.is-home-page #topParts .top-parts-desktop.top-parts-grid,
  body.is-home-page #topPartsGrid.top-parts-grid,
  body.is-home-page #topPartsGrid.top-parts-desktop {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    gap: 14px !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding: 8px 0 0 !important;
    margin: 0 !important;
    width: 100% !important;
    grid-template-columns: none !important;
  }

  body.is-home-page #topParts .top-parts-grid > *,
  body.is-home-page #topPartsGrid > * {
    flex: 1 1 calc((100% - 70px) / 6) !important;
    width: calc((100% - 70px) / 6) !important;
    min-width: 0 !important;
    max-width: calc((100% - 70px) / 6) !important;
  }

  /* Show only the first 6 slots (beats card shell display:flex !important) */
  body.is-home-page #topParts .top-parts-grid > *:nth-child(n + 7),
  body.is-home-page #topPartsGrid > *:nth-child(n + 7),
  body.is-home-page #topParts .top-parts-grid > .top-selling-card.oem-rec-card:nth-child(n + 7),
  body.is-home-page #topPartsGrid > .top-selling-card.oem-rec-card:nth-child(n + 7),
  body.is-home-page #topParts .top-parts-grid > .top-part-slot-empty:nth-child(n + 7),
  body.is-home-page #topPartsGrid > .top-part-slot-empty:nth-child(n + 7) {
    display: none !important;
  }

  body.is-home-page #topParts .top-parts-mobile {
    display: none !important;
  }

  /* ── Card shell — larger footprint ── */
  body.is-home-page #topParts .top-selling-card.oem-rec-card,
  body.is-home-page #topParts .top-parts-grid .top-selling-card.oem-rec-card {
    position: relative !important;
    flex: 1 1 calc((100% - 70px) / 6) !important;
    width: calc((100% - 70px) / 6) !important;
    max-width: calc((100% - 70px) / 6) !important;
    min-width: 0 !important;
    min-height: 380px !important;
    height: auto !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    border: 1px solid var(--ts-border) !important;
    border-radius: 0 !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.07) !important;
    overflow: hidden !important;
    transition:
      transform 0.25s ease,
      box-shadow 0.25s ease !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card:hover,
  body.is-home-page #topParts .top-selling-card.oem-rec-card:focus-within {
    transform: translateY(-6px) !important;
    border-color: #d7e0eb !important;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14) !important;
    z-index: 2 !important;
  }

  body.is-home-page #topParts .top-part-slot-empty {
    flex: 1 1 calc((100% - 70px) / 6) !important;
    width: calc((100% - 70px) / 6) !important;
    min-width: 0 !important;
    min-height: 360px !important;
    border-radius: var(--ts-card-radius) !important;
    border: 1px dashed #d5dce6 !important;
    background: #f8fafc !important;
    color: var(--ts-muted) !important;
  }

  /* Vertical stack: badges → image → info → bar */
  body.is-home-page #topParts .oem-rec-card__layout {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    gap: 0 !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 16px 16px 16px !important;
    --oem-rec-media-col: 100%;
  }

  /* Engine badges — hidden */
  /* Brand logo — top-left (former stars slot) */
  body.is-home-page #topParts .top-selling-card.oem-rec-card > .top-selling-brand,
  body.is-home-page #topParts .top-selling-card.oem-rec-card > .oem-rec-card__brand {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: auto !important;
    inset-inline-start: auto !important;
    inset-inline-end: auto !important;
    z-index: 5 !important;
    gap: 0 !important;
    width: auto !important;
    max-width: calc(100% - 20px) !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }

  html[dir="rtl"] body.is-home-page #topParts .top-selling-card.oem-rec-card > .top-selling-brand,
  html[dir="rtl"] body.is-home-page #topParts .top-selling-card.oem-rec-card > .oem-rec-card__brand {
    left: 10px !important;
    right: auto !important;
    inset-inline-start: auto !important;
    inset-inline-end: auto !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card > .top-selling-brand .top-selling-brand-logo,
  body.is-home-page #topParts .top-selling-card.oem-rec-card > .oem-rec-card__brand .oem-rec-card__brand-logo {
    display: block !important;
    height: 44px !important;
    max-height: 44px !important;
    max-width: 184px !important;
    width: auto !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: transparent !important;
    filter: none !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card > .top-selling-brand .top-selling-brand-fallback,
  body.is-home-page #topParts .top-selling-card.oem-rec-card > .oem-rec-card__brand .oem-rec-card__brand-text {
    display: none !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: var(--ts-blue) !important;
    line-height: 1.2 !important;
  }

  /* Stars — under product name */
  body.is-home-page #topParts .oem-rec-card__info .product-rating.top-selling-rating,
  body.is-home-page #topParts .top-selling-footer .product-rating.top-selling-rating {
    display: inline-flex !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    inset: auto !important;
    z-index: auto !important;
    order: 2 !important;
    gap: 2px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
    direction: ltr !important;
  }

  body.is-home-page #topParts .top-selling-rating .product-star {
    font-size: 13px !important;
    line-height: 1 !important;
    color: #d1d5db !important;
    -webkit-text-fill-color: #d1d5db !important;
    background: transparent !important;
    text-shadow: none !important;
  }

  body.is-home-page #topParts .top-selling-rating .product-star.is-filled {
    color: #f5a524 !important;
    -webkit-text-fill-color: #f5a524 !important;
    background: transparent !important;
  }

  /* Part number — under stars */
  body.is-home-page #topParts .top-selling-part,
  body.is-home-page #topParts .oem-rec-card__part {
    display: block !important;
    order: 3 !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    letter-spacing: 0.02em !important;
    color: var(--ts-muted) !important;
    -webkit-text-fill-color: var(--ts-muted) !important;
  }

  /* Image — full product visible, no dark letterbox */
  body.is-home-page #topParts .oem-rec-card__media,
  body.is-home-page #topParts .top-selling-img-wrap {
    width: calc(85.8% * var(--ts-media-scale, 1.15)) !important;
    max-width: calc(85.8% * var(--ts-media-scale, 1.15)) !important;
    margin: 18px auto 0 !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: calc(140px * var(--ts-media-scale, 1.15)) !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    border: none !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    background-image: none !important;
    isolation: auto !important;
    overflow: hidden !important;
  }

  body.is-home-page #topParts .oem-rec-card__media::before,
  body.is-home-page #topParts .top-selling-img-wrap::before {
    content: none !important;
    display: none !important;
  }

  body.is-home-page #topParts .oem-rec-card__media img,
  body.is-home-page #topParts .top-selling-img-wrap img,
  body.is-home-page #topParts .oem-rec-card__media img:not(.product-brand-fallback),
  body.is-home-page #topParts .top-selling-img-wrap img:not(.product-brand-fallback) {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    transform: none !important;
    transition: none !important;
    filter: none !important;
    box-shadow: none !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card:hover .oem-rec-card__media img:not(.product-brand-fallback),
  body.is-home-page #topParts .top-selling-card.oem-rec-card:hover .top-selling-img-wrap img:not(.product-brand-fallback) {
    transform: none !important;
  }

  body.is-home-page #topParts .oem-rec-card__media .product-brand-fallback,
  body.is-home-page #topParts .top-selling-img-wrap .product-brand-fallback {
    width: 72% !important;
    height: 72% !important;
    object-fit: contain !important;
    margin: auto !important;
    background: transparent !important;
    filter: none !important;
  }

  /* Info block — name then stars under image */
  body.is-home-page #topParts .oem-rec-card__info,
  body.is-home-page #topParts .oem-rec-card .top-selling-footer,
  body.is-home-page #topParts .oem-rec-card .oem-rec-card__info.top-selling-footer {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 auto !important;
    gap: 4px !important;
    padding: 0 2px 8px !important;
    padding-top: 0 !important;
    margin: 0 !important;
    min-width: 0 !important;
  }

  body.is-home-page #topParts .top-selling-name,
  body.is-home-page #topParts .oem-rec-card__name {
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    margin: 0 !important;
    order: 1 !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    color: var(--ts-text) !important;
    -webkit-text-fill-color: var(--ts-text) !important;
    background: none !important;
  }

  /* Price above full-width Add to Cart */
  body.is-home-page #topParts .oem-rec-card__bar {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    padding-bottom: 2px !important;
    border: none !important;
    flex-shrink: 0 !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  body.is-home-page #topParts .oem-rec-card__price,
  body.is-home-page #topParts .top-selling-price-row {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body.is-home-page #topParts .product-price-compare,
  body.is-home-page #topParts .product-price-badge {
    display: none !important;
  }

  body.is-home-page #topParts .product-price-block,
  body.is-home-page #topParts .product-price--single,
  body.is-home-page #topParts .top-selling-price-block {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px 6px !important;
    margin: 0 !important;
  }

  body.is-home-page #topParts .product-price-sale,
  body.is-home-page #topParts .product-price--single,
  body.is-home-page #topParts .top-selling-price-block .product-price-sale,
  body.is-home-page #topParts .top-selling-price-block .product-price--single,
  body.is-home-page #topParts .top-parts-grid .top-selling-price-block .product-price-sale,
  body.is-home-page #topParts .top-parts-grid .top-selling-price-block .product-price--single {
    font-size: calc(28px * 0.85 * 0.95 * 0.95 * 0.95 * 0.95 * 0.9) !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: #111111 !important;
    letter-spacing: -0.02em !important;
  }

  body.is-home-page #topParts .product-price-sale span,
  body.is-home-page #topParts .product-price--single span,
  body.is-home-page #topParts .top-selling-price-block .product-price-sale span,
  body.is-home-page #topParts .top-selling-price-block .product-price--single span {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #111111 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
  }

  /* Solid blue Add to Cart — white label + cart icon (matches catalog ATC) */
  body.is-home-page #topParts .oem-rec-card__cart,
  body.is-home-page #topParts .top-selling-actions-row {
    flex: 0 0 auto !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  body.is-home-page #topParts .top-selling-cart,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart {
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 42px !important;
    padding: 10px 14px !important;
    border-radius: 8px !important;
    border: none !important;
    background: #002157 !important;
    color: #ffffff !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-family: var(--font-en, "Segoe UI", sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transition:
      transform 0.15s ease,
      background 0.15s ease,
      border-color 0.15s ease,
      color 0.15s ease !important;
  }

  html[dir="rtl"] body.is-home-page #topParts .top-selling-cart,
  html[dir="rtl"] body.is-home-page #topParts .oem-rec-card .top-selling-cart {
    font-family: var(--font-ar, "Segoe UI", Tahoma, sans-serif) !important;
  }

  body.is-home-page #topParts .top-selling-cart:hover,
  body.is-home-page #topParts .top-selling-cart:focus-visible,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:hover,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:focus-visible {
    background: #001a45 !important;
    border: none !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
    box-shadow: none !important;
  }

  body.is-home-page #topParts .top-selling-cart:active,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:active {
    background: #001436 !important;
    border: none !important;
    color: #ffffff !important;
    box-shadow: none !important;
    transform: scale(0.99) !important;
  }

  body.is-home-page #topParts .top-selling-cart__icon,
  body.is-home-page #topParts .top-selling-cart svg,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart svg {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
    color: #ffffff !important;
    stroke: #ffffff !important;
    fill: none !important;
  }

  body.is-home-page #topParts .top-selling-cart:hover .top-selling-cart__icon,
  body.is-home-page #topParts .top-selling-cart:focus-visible .top-selling-cart__icon,
  body.is-home-page #topParts .top-selling-cart:active .top-selling-cart__icon,
  body.is-home-page #topParts .top-selling-cart:hover svg,
  body.is-home-page #topParts .top-selling-cart:focus-visible svg,
  body.is-home-page #topParts .top-selling-cart:active svg,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:hover svg,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:focus-visible svg,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:active svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
  }

  body.is-home-page #topParts .top-selling-cart__label {
    color: inherit !important;
  }

  body.is-home-page #topParts .top-selling-cart.is-disabled {
    background: #8eb4db !important;
    border: none !important;
    box-shadow: none !important;
    color: #ffffff !important;
    cursor: not-allowed !important;
    opacity: 0.72;
  }

  @media (prefers-reduced-motion: reduce) {
    body.is-home-page #topParts .top-selling-card.oem-rec-card,
    body.is-home-page #topParts .top-selling-card.oem-rec-card:hover,
    body.is-home-page #topParts .oem-rec-card__media img,
    body.is-home-page #topParts .top-selling-cart {
      transition: none !important;
      transform: none !important;
    }
  }
}

/* Compact horizontal Best Selling cards — desktop only. */
@media (min-width: 901px) {
  body.is-home-page #topParts .top-parts-grid,
  body.is-home-page #topParts .top-parts-desktop.top-parts-grid,
  body.is-home-page #topPartsGrid.top-parts-grid,
  body.is-home-page #topPartsGrid.top-parts-desktop {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows: 142px !important;
    gap: 10px !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    overflow: visible !important;
    padding: 8px 0 0 !important;
  }

  body.is-home-page #topParts .top-parts-grid > *,
  body.is-home-page #topPartsGrid > *,
  body.is-home-page #topParts .top-selling-card.oem-rec-card,
  body.is-home-page #topParts .top-parts-grid .top-selling-card.oem-rec-card,
  body.is-home-page #topParts .top-part-slot-empty {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 142px !important;
    min-height: 142px !important;
    max-height: 142px !important;
    flex: none !important;
  }

  body.is-home-page #topParts .top-parts-grid > *:nth-child(n + 6),
  body.is-home-page #topPartsGrid > *:nth-child(n + 6),
  body.is-home-page #topParts .top-parts-grid > .top-selling-card.oem-rec-card:nth-child(n + 6),
  body.is-home-page #topPartsGrid > .top-selling-card.oem-rec-card:nth-child(n + 6),
  body.is-home-page #topParts .top-parts-grid > .top-part-slot-empty:nth-child(n + 6),
  body.is-home-page #topPartsGrid > .top-part-slot-empty:nth-child(n + 6) {
    display: none !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card,
  body.is-home-page #topParts .top-parts-grid .top-selling-card.oem-rec-card {
    display: block !important;
    background: #fff !important;
    border: 1px solid #e7ebf1 !important;
    border-radius: 0 !important;
    box-shadow: 0 4px 14px rgba(15,45,107,.07) !important;
    overflow: hidden !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card:hover,
  body.is-home-page #topParts .top-selling-card.oem-rec-card:focus-within {
    transform: translateY(-2px) !important;
    border-color: #d5deea !important;
    box-shadow: 0 8px 20px rgba(15,45,107,.11) !important;
  }

  body.is-home-page #topParts .top-selling-card.oem-rec-card > .top-selling-brand,
  body.is-home-page #topParts .top-selling-card.oem-rec-card > .oem-rec-card__brand,
  body.is-home-page #topParts .oem-rec-card__info .product-rating.top-selling-rating,
  body.is-home-page #topParts .top-selling-footer .product-rating.top-selling-rating {
    display: none !important;
  }

  body.is-home-page #topParts .oem-rec-card__layout {
    display: grid !important;
    grid-template-columns: 39% minmax(0, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) auto !important;
    gap: 5px 9px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    padding: 9px !important;
    box-sizing: border-box !important;
    direction: ltr !important;
  }

  body.is-home-page #topParts .oem-rec-card__media,
  body.is-home-page #topParts .top-selling-img-wrap {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    padding: 2px !important;
    align-self: stretch !important;
    border-radius: 9px !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  body.is-home-page #topParts .oem-rec-card__media img,
  body.is-home-page #topParts .top-selling-img-wrap img,
  body.is-home-page #topParts .oem-rec-card__media img:not(.product-brand-fallback),
  body.is-home-page #topParts .top-selling-img-wrap img:not(.product-brand-fallback) {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.is-home-page #topParts .oem-rec-card__info,
  body.is-home-page #topParts .oem-rec-card .top-selling-footer,
  body.is-home-page #topParts .oem-rec-card .oem-rec-card__info.top-selling-footer {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 5px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body.is-home-page #topParts .top-selling-name,
  body.is-home-page #topParts .oem-rec-card__name {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 34px !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.28 !important;
    color: #0f2d6b !important;
    -webkit-text-fill-color: #0f2d6b !important;
    text-align: left !important;
  }

  body.is-home-page #topParts .top-selling-part,
  body.is-home-page #topParts .oem-rec-card__part {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 10.5px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #7a8492 !important;
    -webkit-text-fill-color: #7a8492 !important;
    text-align: left !important;
  }

  body.is-home-page #topParts .oem-rec-card__bar {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 36px !important;
    align-items: end !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.is-home-page #topParts .oem-rec-card__price,
  body.is-home-page #topParts .top-selling-price-row {
    width: auto !important;
    min-width: 0 !important;
    align-self: center !important;
  }

  body.is-home-page #topParts .product-price-block,
  body.is-home-page #topParts .product-price--single,
  body.is-home-page #topParts .top-selling-price-block {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: baseline !important;
    gap: 2px !important;
    min-width: 0 !important;
    white-space: nowrap !important;
  }

  body.is-home-page #topParts .product-price-sale,
  body.is-home-page #topParts .product-price--single,
  body.is-home-page #topParts .top-selling-price-block .product-price-sale,
  body.is-home-page #topParts .top-selling-price-block .product-price--single,
  body.is-home-page #topParts .top-parts-grid .top-selling-price-block .product-price-sale,
  body.is-home-page #topParts .top-parts-grid .top-selling-price-block .product-price--single {
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.01em !important;
    color: #d71920 !important;
    -webkit-text-fill-color: #d71920 !important;
  }

  body.is-home-page #topParts .product-price-sale span,
  body.is-home-page #topParts .product-price--single span,
  body.is-home-page #topParts .top-selling-price-block .product-price-sale span,
  body.is-home-page #topParts .top-selling-price-block .product-price--single span {
    font-size: 8.5px !important;
    font-weight: 700 !important;
    color: #d71920 !important;
    -webkit-text-fill-color: #d71920 !important;
  }

  body.is-home-page #topParts .oem-rec-card__cart,
  body.is-home-page #topParts .top-selling-actions-row {
    width: 36px !important;
    min-width: 36px !important;
    display: block !important;
    justify-self: end !important;
  }

  body.is-home-page #topParts .top-selling-cart,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 0 !important;
    border: 1px solid #dce3ec !important;
    border-radius: 9px !important;
    background: #f7f9fc !important;
    color: #0f2d6b !important;
    box-shadow: none !important;
  }

  body.is-home-page #topParts .top-selling-cart:hover,
  body.is-home-page #topParts .top-selling-cart:focus-visible,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:hover,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart:focus-visible {
    background: #eef3f9 !important;
    border-color: #b9c8db !important;
    color: #0f2d6b !important;
    transform: translateY(-1px) !important;
  }

  body.is-home-page #topParts .top-selling-cart__icon,
  body.is-home-page #topParts .top-selling-cart svg,
  body.is-home-page #topParts .oem-rec-card .top-selling-cart svg {
    width: 17px !important;
    height: 17px !important;
    color: #0f2d6b !important;
    stroke: #0f2d6b !important;
  }

  body.is-home-page #topParts .top-selling-cart__label {
    display: none !important;
  }

  body.is-home-page #topParts .top-selling-cart.is-disabled::before {
    content: '×';
    color: #6f7f92;
    font-size: 18px;
    line-height: 1;
  }

  body.is-home-page #topParts .top-part-slot-empty {
    position: relative !important;
    display: block !important;
    box-sizing: border-box !important;
    border: 1px solid #e7ebf1 !important;
    border-radius: 12px !important;
    background:
      linear-gradient(#e7ecf3, #e7ecf3) 44% 38% / 38% 10px no-repeat,
      linear-gradient(#eef2f6, #eef2f6) 44% 52% / 32% 8px no-repeat,
      linear-gradient(#f3d8da, #f3d8da) 44% 70% / 25% 10px no-repeat,
      #fff !important;
    color: transparent !important;
    overflow: hidden !important;
    box-shadow: 0 4px 14px rgba(15,45,107,.05) !important;
  }

  body.is-home-page #topParts .top-part-slot-empty::before {
    content: '' !important;
    position: absolute !important;
    left: 9px !important;
    top: 9px !important;
    bottom: 9px !important;
    width: 36% !important;
    border-radius: 9px !important;
    background: #eef2f6 !important;
  }

  body.is-home-page #topParts .top-part-slot-empty::after {
    content: '' !important;
    position: absolute !important;
    right: 9px !important;
    bottom: 9px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 9px !important;
    background: #e7ecf3 !important;
  }

  body.is-home-page #topParts .top-part-slot-empty > span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
  }
}
/* Desktop Best Selling continuous marquee — reuses the existing duplicated track. */
@media (min-width: 901px) {
  body.is-home-page #topParts #topPartsGrid.top-parts-desktop {
    display: none !important;
  }

  body.is-home-page #topParts .top-parts-mobile.mob-card-body--marquee {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.is-home-page #topParts #topPartsViewport.top-parts-viewport {
    width: 100% !important;
    overflow: hidden !important;
    padding: 8px 0 0 !important;
    scrollbar-width: none !important;
  }

  body.is-home-page #topParts #topPartsViewport::-webkit-scrollbar {
    display: none !important;
  }

  body.is-home-page #topParts #topPartsTrack.top-selling-track {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: max-content !important;
    min-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    will-change: transform !important;
  }

  html[dir="ltr"] body.is-home-page #topParts #topPartsTrack.top-selling-marquee {
    animation: topSellingDesktopLtr 30s linear infinite !important;
  }

  html[dir="rtl"] body.is-home-page #topParts #topPartsTrack.top-selling-marquee {
    animation: topSellingDesktopRtl 30s linear infinite !important;
  }

  body.is-home-page #topParts #topPartsViewport:hover #topPartsTrack,
  body.is-home-page #topParts #topPartsViewport:focus-within #topPartsTrack,
  body.is-home-page #topParts #topPartsViewport.is-paused #topPartsTrack,
  body.is-home-page #topParts #topPartsViewport.is-dragging #topPartsTrack {
    animation-play-state: paused !important;
  }

  body.is-home-page #topParts #topPartsTrack > .top-selling-card.oem-rec-card,
  body.is-home-page #topParts #topPartsTrack > .top-part-slot-empty {
    flex: 0 0 clamp(220px, calc((100vw - 128px) / 5), 360px) !important;
    width: clamp(220px, calc((100vw - 128px) / 5), 360px) !important;
    min-width: clamp(220px, calc((100vw - 128px) / 5), 360px) !important;
    max-width: clamp(220px, calc((100vw - 128px) / 5), 360px) !important;
    height: 142px !important;
    min-height: 142px !important;
    max-height: 142px !important;
    display: block !important;
  }

  body.is-home-page #topParts .top-parts-swipe-hint {
    display: none !important;
  }
}

@keyframes topSellingDesktopLtr {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-50% - 5px)); }
}

@keyframes topSellingDesktopRtl {
  from { transform: translateX(0); }
  to { transform: translateX(calc(50% + 5px)); }
}

@media (min-width: 901px) and (prefers-reduced-motion: reduce) {
  body.is-home-page #topParts #topPartsTrack.top-selling-marquee {
    animation: none !important;
    transform: none !important;
  }
}
/* One continuous desktop floor behind the moving Best Selling cards. */
@media (min-width: 901px) {
  body.is-home-page #topParts#topParts.top-selling-section {
    --top-selling-floor: #f3f6fa;
    background: var(--top-selling-floor) !important;
    background-image: none !important;
  }

  body.is-home-page #topParts#topParts > .section-inner,
  body.is-home-page #topParts#topParts .top-parts-mobile.mob-card-body--marquee,
  body.is-home-page #topParts#topParts #topPartsViewport.top-parts-viewport {
    background: var(--top-selling-floor) !important;
    background-image: none !important;
  }

  body.is-home-page #topParts#topParts #topPartsTrack.top-selling-track {
    background: transparent !important;
    background-image: none !important;
  }

  body.is-home-page #topParts#topParts #topPartsTrack > .top-selling-card.oem-rec-card {
    background: #ffffff !important;
  }
}

/* Desktop Best Selling card legibility fixes. */
@media (min-width:901px){
body.is-home-page #topParts #topPartsTrack>.top-selling-card.oem-rec-card,body.is-home-page #topParts #topPartsTrack>.top-part-slot-empty{height:176px!important;min-height:176px!important;max-height:176px!important}
body.is-home-page #topParts .top-selling-card.oem-rec-card{position:relative!important;border-radius:12px!important}
body.is-home-page #topParts .top-selling-card.oem-rec-card>.top-selling-brand,body.is-home-page #topParts .top-selling-card.oem-rec-card>.oem-rec-card__brand{display:flex!important;top:10px!important;left:calc(39% + 18px)!important;right:10px!important;width:auto!important;height:25px!important;max-width:none!important;overflow:hidden!important}
body.is-home-page #topParts .top-selling-card.oem-rec-card>.top-selling-brand .top-selling-brand-logo,body.is-home-page #topParts .top-selling-card.oem-rec-card>.oem-rec-card__brand .oem-rec-card__brand-logo{width:auto!important;height:25px!important;max-width:96px!important;max-height:25px!important;object-fit:contain!important;object-position:left center!important;transform:none!important}
body.is-home-page #topParts .oem-rec-card__layout{padding:10px!important;gap:7px 10px!important}
body.is-home-page #topParts .oem-rec-card__info,body.is-home-page #topParts .oem-rec-card .top-selling-footer{justify-content:flex-end!important;padding-top:28px!important}
body.is-home-page #topParts .oem-rec-card__bar{grid-template-columns:minmax(70px,1fr) minmax(102px,auto)!important;align-items:center!important;gap:8px!important;min-height:40px!important}
body.is-home-page #topParts .product-price-sale,body.is-home-page #topParts .product-price--single,body.is-home-page #topParts .top-selling-price-block .product-price-sale,body.is-home-page #topParts .top-selling-price-block .product-price--single{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:16px!important;line-height:1.15!important}
body.is-home-page #topParts .oem-rec-card__cart,body.is-home-page #topParts .top-selling-actions-row{width:auto!important;min-width:102px!important}
body.is-home-page #topParts .top-selling-cart,body.is-home-page #topParts .oem-rec-card .top-selling-cart{width:auto!important;min-width:102px!important;max-width:124px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:8px 11px!important;border:0!important;background:#0f2d6b!important;color:#fff!important;font-size:12px!important;line-height:1!important}
body.is-home-page #topParts .top-selling-cart__label{display:inline!important;font-size:12px!important;font-weight:700!important;white-space:nowrap!important}
body.is-home-page #topParts .top-selling-cart__icon,body.is-home-page #topParts .top-selling-cart svg{width:15px!important;height:15px!important;color:#fff!important;stroke:#fff!important}
}
/* Reserve a full-width footer row for price and cart action. */
@media (min-width:901px){
body.is-home-page #topParts .oem-rec-card__layout{grid-template-rows:minmax(0,1fr) 42px!important}
body.is-home-page #topParts .oem-rec-card__media,body.is-home-page #topParts .top-selling-img-wrap{grid-row:1!important}
body.is-home-page #topParts .oem-rec-card__bar{grid-column:1 / 3!important;grid-row:2!important;grid-template-columns:minmax(0,1fr) minmax(102px,124px)!important}
}