/*
 * Pro Garage Performance UI v907
 * One active owner for the compact header, menus, product layouts,
 * carousel controls and garage identity artwork.
 */

:root {
  --pgp-ui-ink: #121316;
  --pgp-ui-muted: #656a73;
  --pgp-ui-surface: #ffffff;
  --pgp-ui-soft: #f4f5f7;
  --pgp-ui-line: rgba(18, 19, 22, .13);
  --pgp-ui-red: #e51b3e;
  --pgp-ui-red-dark: #be1235;
  --pgp-ui-header-row: 40px;
  --pgp-ui-search-row: 36px;
  --pgp-ui-header-total: 76px;
  --pgp-ui-avatar: 64px;
  --pgp-ui-card-gap: 12px;
  --pgp-ui-arrow: 42px;
  --pgp-ui-radius: 22px;
}

html.pgp-ui-v907-root,
html.pgp-ui-v907-root body.pgp-ui-v907-page {
  max-width: 100%;
  overflow-x: clip;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page {
  background: #f7f8fa;
  color: var(--pgp-ui-ink);
}

/* Compact, stable header. Dimensions never change after page load. */
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header,
html.pgp-ui-v907-root body.pgp-ui-v907-page:has(#home) .pgp-app-header {
  box-sizing: border-box !important;
  position: sticky !important;
  inset: 0 0 auto !important;
  top: 0 !important;
  z-index: 9800 !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: var(--pgp-ui-header-total) !important;
  height: var(--pgp-ui-header-total) !important;
  max-height: var(--pgp-ui-header-total) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-bottom: 1px solid var(--pgp-ui-line) !important;
  border-radius: 0 !important;
  background: rgba(255, 255, 255, .97) !important;
  box-shadow: 0 7px 24px rgba(18, 19, 22, .055) !important;
  backdrop-filter: blur(14px) saturate(145%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(145%) !important;
  transform: none !important;
  transition: box-shadow .2s ease, background-color .2s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header::before,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header::after {
  content: none !important;
  display: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header .pgp-app-header-inner {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 78px auto minmax(12px, 1fr) 36px 32px !important;
  grid-template-areas: "logo tabs spacer lang menu" !important;
  grid-template-rows: var(--pgp-ui-header-row) !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: var(--pgp-ui-header-row) !important;
  height: var(--pgp-ui-header-row) !important;
  max-height: var(--pgp-ui-header-row) !important;
  margin: 0 !important;
  padding: 0 12px !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-left,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  height: 31px !important;
  min-height: 31px !important;
  max-height: 31px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-left {
  grid-area: logo !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-spacer {
  grid-area: spacer !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs {
  grid-area: tabs !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-wrap {
  grid-area: lang !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button {
  grid-area: menu !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link img {
  display: block !important;
  width: 76px !important;
  min-width: 76px !important;
  max-width: 76px !important;
  height: 31px !important;
  min-height: 31px !important;
  max-height: 31px !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs {
  direction: ltr !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  width: auto !important;
  min-width: 0 !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab:is(:link, :visited, :hover, :focus, :focus-visible, :active) {
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: auto !important;
  min-width: 86px !important;
  max-width: none !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
  padding: 0 13px !important;
  overflow: hidden !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  background: #202126 !important;
  border: 1px solid #202126 !important;
  border-radius: 7px 7px 3px 3px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: skewX(-6deg) !important;
  transition: color .16s ease, background-color .16s ease, border-color .16s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab > * {
  transform: skewX(6deg) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab:is(:hover, :focus-visible),
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab.is-active {
  color: #fff !important;
  background: var(--pgp-ui-red) !important;
  border-color: var(--pgp-ui-red) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab svg {
  display: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-wrap,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-btn {
  box-sizing: border-box !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  margin: 0 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  padding: 0 !important;
  color: var(--pgp-ui-ink) !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  background: var(--pgp-ui-soft) !important;
  border: 1px solid var(--pgp-ui-line) !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-btn svg {
  width: 9px !important;
  height: 9px !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button {
  box-sizing: border-box !important;
  position: relative !important;
  inset: auto !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  max-height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--pgp-ui-ink) !important;
  background: #f7f7f8 !important;
  border: 1px solid var(--pgp-ui-line) !important;
  border-radius: 10px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background-color .16s ease, border-color .16s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button:is(:hover, :focus-visible),
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button[aria-expanded="true"] {
  background: #fff1f4 !important;
  border-color: rgba(229, 27, 62, .28) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button span {
  display: block !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 2px !important;
  min-height: 2px !important;
  max-height: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: currentColor !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-wrap {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: var(--pgp-ui-search-row) !important;
  height: var(--pgp-ui-search-row) !important;
  max-height: var(--pgp-ui-search-row) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-form,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-form:focus-within {
  box-sizing: border-box !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 286px !important;
  min-width: 286px !important;
  max-width: 286px !important;
  min-height: 31px !important;
  height: 31px !important;
  max-height: 31px !important;
  margin: 0 auto !important;
  padding: 0 34px 0 12px !important;
  overflow: visible !important;
  background: rgba(255, 255, 255, .99) !important;
  border: 1.5px solid rgba(18, 19, 22, .72) !important;
  border-radius: 999px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: border-color .16s ease, box-shadow .16s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-form:focus-within {
  border-color: var(--pgp-ui-red) !important;
  box-shadow: 0 0 0 3px rgba(229, 27, 62, .09) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-input,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-input:is(:hover, :focus, :focus-visible, :active) {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 27px !important;
  height: 27px !important;
  max-height: 27px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--pgp-ui-ink) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 27px !important;
  text-align: center !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-input::placeholder {
  color: #777b83 !important;
  opacity: 1 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit,
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit:is(:hover, :focus, :focus-visible, :active) {
  box-sizing: border-box !important;
  position: absolute !important;
  inset: 1px 1px 1px auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 27px !important;
  min-width: 27px !important;
  max-width: 27px !important;
  height: 27px !important;
  min-height: 27px !important;
  max-height: 27px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  background: var(--pgp-ui-ink) !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background-color .16s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit:is(:hover, :focus-visible, :active) {
  background: var(--pgp-ui-red) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit svg {
  display: block !important;
  width: 15px !important;
  min-width: 15px !important;
  max-width: 15px !important;
  height: 15px !important;
  min-height: 15px !important;
  max-height: 15px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: currentColor !important;
  stroke: currentColor !important;
  fill: none !important;
  transform: none !important;
}

/* Parts menu: one compact, readable panel. */
html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu {
  box-sizing: border-box !important;
  position: fixed !important;
  top: calc(var(--pgp-ui-header-total) + 8px) !important;
  right: 12px !important;
  left: auto !important;
  z-index: 9900 !important;
  display: block !important;
  width: min(420px, 40vw) !important;
  min-width: 300px !important;
  max-width: 420px !important;
  max-height: min(72dvh, 650px) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden auto !important;
  color: var(--pgp-ui-ink) !important;
  background: rgba(255, 255, 255, .985) !important;
  border: 1px solid rgba(18, 19, 22, .14) !important;
  border-radius: 20px !important;
  outline: 0 !important;
  box-shadow: 0 22px 60px rgba(18, 19, 22, .20) !important;
  backdrop-filter: blur(18px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(-8px) scale(.985) !important;
  transform-origin: top right !important;
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu.is-open,
html.pgp-ui-v907-root body.pgp-ui-v907-page.pgp-parts-menu-open #pgpHeaderPartsMenu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) scale(1) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-header-parts-head {
  box-sizing: border-box !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 10px 12px 10px 16px !important;
  color: #fff !important;
  background: linear-gradient(125deg, #17181c, #25272d) !important;
  border: 0 !important;
  border-bottom: 3px solid var(--pgp-ui-red) !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-hemi-title,
html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-hemi-title strong {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-header-parts-close {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  min-width: 30px !important;
  max-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  font-size: 0 !important;
  background: rgba(255, 255, 255, .10) !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 9px !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-header-parts-close::before {
  content: "×" !important;
  display: block !important;
  color: currentColor !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-menu {
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 10px !important;
  background: #fff !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-group {
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: var(--pgp-ui-ink) !important;
  background: #f6f7f9 !important;
  border: 1px solid rgba(18, 19, 22, .09) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-group > summary {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 9px 34px 9px 12px !important;
  color: var(--pgp-ui-ink) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-group > summary:is(:hover, :focus-visible) {
  color: var(--pgp-ui-red-dark) !important;
  background: #fff0f3 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-group > a {
  display: block !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  color: #454951 !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  background: #fff !important;
  border: 0 !important;
  border-top: 1px solid rgba(18, 19, 22, .07) !important;
}

/* Public page breathing room below the compact header. */
html.pgp-ui-v907-root body.pgp-ui-v907-page :is(#home, #iq-garages, .following-wrap, .saved-wrap, .pgp-page) {
  scroll-margin-top: calc(var(--pgp-ui-header-total) + 18px) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page #home,
html.pgp-ui-v907-root body.pgp-ui-v907-page .iq-wrap {
  padding-top: 18px !important;
}

/* One identity geometry for followed and unfollowed garages. */
html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-home-section-avatar,
  .garage-logo,
  .garage-avatar,
  .pgp-garage-logo,
  .pgp-owner-avatar,
  .store-logo,
  .store-avatar,
  .pgp-v68-brand-restored,
  .pgp-v69-logo-node,
  .pgp-v71-logo-node
) {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 0 0 var(--pgp-ui-avatar) !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--pgp-ui-avatar) !important;
  min-width: var(--pgp-ui-avatar) !important;
  max-width: var(--pgp-ui-avatar) !important;
  height: var(--pgp-ui-avatar) !important;
  min-height: var(--pgp-ui-avatar) !important;
  max-height: var(--pgp-ui-avatar) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(18, 19, 22, .52) !important;
  border-radius: 999px !important;
  outline: 0 !important;
  box-shadow: 0 7px 18px rgba(18, 19, 22, .09) !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-home-section-avatar,
  .garage-logo,
  .garage-avatar,
  .pgp-garage-logo,
  .pgp-owner-avatar,
  .store-logo,
  .store-avatar,
  .pgp-v68-brand-restored,
  .pgp-v69-logo-node,
  .pgp-v71-logo-node
) :is(img, picture),
html.pgp-ui-v907-root body.pgp-ui-v907-page img:is(
  .pgp-home-section-avatar-img,
  .garage-logo,
  .garage-avatar,
  .pgp-garage-logo,
  .pgp-owner-avatar,
  .store-logo,
  .store-avatar,
  .pgp-v68-garage-avatar,
  .pgp-v74-avatar
) {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 3px !important;
  overflow: hidden !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-garage-follow-ring-target,
  .pgp-garage-follow-ring-wrap,
  .pgp-home-follow-ring,
  .pgp-home-section-avatar
) {
  width: var(--pgp-ui-avatar) !important;
  min-width: var(--pgp-ui-avatar) !important;
  max-width: var(--pgp-ui-avatar) !important;
  height: var(--pgp-ui-avatar) !important;
  min-height: var(--pgp-ui-avatar) !important;
  max-height: var(--pgp-ui-avatar) !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  outline-offset: 0 !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-garage-is-following,
  .is-following,
  [data-pgp-following="1"]
) :is(.pgp-home-section-avatar, .garage-logo, .garage-avatar, .pgp-garage-logo, .store-logo, .store-avatar) {
  border-color: var(--pgp-ui-red) !important;
  box-shadow: 0 0 0 3px rgba(229, 27, 62, .10), 0 7px 18px rgba(18, 19, 22, .09) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.garage-brand, .pgp-home-identity, .pgp-v74-identity-row, .pgp-v71-mobile-identity-row) {
  column-gap: 16px !important;
  gap: 16px !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.garage-name, .garage-name-link, .pgp-home-section-title) {
  margin-inline-start: 0 !important;
}

/* Only one visible view control group per product section. */
html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-duplicate="1"],
html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-ui-duplicate-control {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.pgp-home-view-tools, .pgp-section-view-tools)[data-pgp-ui-primary-controls="1"] {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.pgp-home-view-tools, .pgp-section-view-tools)[data-pgp-ui-primary-controls="1"] button {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 25px !important;
  min-width: 25px !important;
  max-width: 25px !important;
  height: 25px !important;
  min-height: 25px !important;
  max-height: 25px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--pgp-ui-ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 7px !important;
  outline: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.pgp-home-view-tools, .pgp-section-view-tools)[data-pgp-ui-primary-controls="1"] button:is(.is-active, [aria-pressed="true"]) {
  color: var(--pgp-ui-red) !important;
  background: #fff0f3 !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.pgp-home-view-tools, .pgp-section-view-tools)[data-pgp-ui-primary-controls="1"] svg {
  display: block !important;
  width: 21px !important;
  height: 21px !important;
  color: currentColor !important;
  stroke: currentColor !important;
  fill: none !important;
  background: transparent !important;
  transform: none !important;
}

/* One card-width contract: 3 mobile/tablet, 5 desktop. */
html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  #home .pgp-most-row,
  #home .product-row,
  #home .pgp-product-row,
  #iq-garages .product-row,
  #iq-garages .pgp-most-row,
  .following-grid,
  .following-wrap .product-row,
  .saved-products-grid,
  .saved-grid,
  .wishlist-products,
  .garage-products,
  .pgp-products
)[data-pgp-ui-mode="row"] {
  box-sizing: border-box !important;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: var(--pgp-ui-card-gap) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 0 4px !important;
  overflow: auto hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
  white-space: normal !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  #home .pgp-most-row,
  #home .product-row,
  #home .pgp-product-row,
  #iq-garages .product-row,
  #iq-garages .pgp-most-row,
  .following-grid,
  .following-wrap .product-row,
  .saved-products-grid,
  .saved-grid,
  .wishlist-products,
  .garage-products,
  .pgp-products
)[data-pgp-ui-mode="row"]::-webkit-scrollbar {
  display: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  #home .pgp-most-row,
  #home .product-row,
  #home .pgp-product-row,
  #iq-garages .product-row,
  #iq-garages .pgp-most-row,
  .following-grid,
  .following-wrap .product-row,
  .saved-products-grid,
  .saved-grid,
  .wishlist-products,
  .garage-products,
  .pgp-products
)[data-pgp-ui-mode="row"] > * {
  box-sizing: border-box !important;
  flex: 0 0 calc((100% - 48px) / 5) !important;
  width: calc((100% - 48px) / 5) !important;
  min-width: calc((100% - 48px) / 5) !important;
  max-width: calc((100% - 48px) / 5) !important;
  scroll-snap-align: start !important;
  float: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  #home .pgp-most-row,
  #home .product-row,
  #home .pgp-product-row,
  #iq-garages .product-row,
  #iq-garages .pgp-most-row,
  .following-grid,
  .following-wrap .product-row,
  .saved-products-grid,
  .saved-grid,
  .wishlist-products,
  .garage-products,
  .pgp-products
)[data-pgp-ui-mode="grid"] {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  gap: var(--pgp-ui-card-gap) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 0 4px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  #home .pgp-most-row,
  #home .product-row,
  #home .pgp-product-row,
  #iq-garages .product-row,
  #iq-garages .pgp-most-row,
  .following-grid,
  .following-wrap .product-row,
  .saved-products-grid,
  .saved-grid,
  .wishlist-products,
  .garage-products,
  .pgp-products
)[data-pgp-ui-mode="grid"] > * {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  float: none !important;
  scroll-snap-align: none !important;
}

/* Unified carousel arrows. */
html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-most-arrow,
  .row-arrow,
  .pgp-row-arrow,
  .pgp-row-arrow-btn,
  .pgp-view-arrow,
  .pgp-related-arrow,
  .related-arrow,
  .carousel-arrow,
  .pgp-carousel-arrow,
  .pgp-section-arrow,
  .gallery-arrow,
  .product-gallery-arrow
)[data-pgp-ui-primary-arrow="1"] {
  box-sizing: border-box !important;
  position: absolute !important;
  top: 50% !important;
  bottom: auto !important;
  z-index: 80 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--pgp-ui-arrow) !important;
  min-width: var(--pgp-ui-arrow) !important;
  max-width: var(--pgp-ui-arrow) !important;
  height: var(--pgp-ui-arrow) !important;
  min-height: var(--pgp-ui-arrow) !important;
  max-height: var(--pgp-ui-arrow) !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  color: #fff !important;
  font-size: 0 !important;
  line-height: 0 !important;
  background: rgba(24, 25, 30, .74) !important;
  border: 1px solid rgba(255, 255, 255, .30) !important;
  border-radius: 999px !important;
  outline: 0 !important;
  box-shadow: 0 9px 22px rgba(18, 19, 22, .18) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  translate: none !important;
  transform: translateY(-50%) !important;
  transition: color .15s ease, background-color .15s ease, border-color .15s ease !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="left"] {
  left: 10px !important;
  right: auto !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="right"] {
  right: 10px !important;
  left: auto !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"]::before {
  display: block !important;
  color: currentColor !important;
  font-family: Arial, sans-serif !important;
  font-size: 24px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-align: center !important;
  transform: translateY(-1px) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="left"]::before {
  content: "‹" !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="right"]::before {
  content: "›" !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"] > * {
  display: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"]:is(:hover, :focus-visible) {
  background: rgba(24, 25, 30, .88) !important;
  border-color: rgba(255, 255, 255, .46) !important;
  transform: translateY(-50%) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"]:is(:active, .is-pressed, [data-pgp-ui-pressed="1"]) {
  color: #fff !important;
  background: var(--pgp-ui-red) !important;
  border-color: var(--pgp-ui-red) !important;
  transform: translateY(-50%) !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-mode="grid"] ~ [data-pgp-ui-primary-arrow="1"],
html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-arrow-hidden="1"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
  .pgp-most-arrow,
  .row-arrow,
  .pgp-row-arrow,
  .pgp-row-arrow-btn,
  .pgp-view-arrow,
  .pgp-related-arrow,
  .related-arrow,
  .carousel-arrow,
  .pgp-carousel-arrow,
  .pgp-section-arrow,
  .gallery-arrow,
  .product-gallery-arrow
)[data-pgp-ui-primary-arrow="1"][data-pgp-ui-arrow-hidden="1"] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Public IQ Garages rules requested by the owner. */
html.pgp-ui-v907-root body.pgp-ui-v907-page #iq-garages :is(.pgp-verified-badge, .verified, [data-verified-badge]) {
  display: none !important;
  visibility: hidden !important;
}

@media (max-width: 1100px) {
  :root {
    --pgp-ui-card-gap: 12px;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
    #home .pgp-most-row,
    #home .product-row,
    #home .pgp-product-row,
    #iq-garages .product-row,
    #iq-garages .pgp-most-row,
    .following-grid,
    .following-wrap .product-row,
    .saved-products-grid,
    .saved-grid,
    .wishlist-products,
    .garage-products,
    .pgp-products
  )[data-pgp-ui-mode="row"] > * {
    flex-basis: calc((100% - 24px) / 3) !important;
    width: calc((100% - 24px) / 3) !important;
    min-width: calc((100% - 24px) / 3) !important;
    max-width: calc((100% - 24px) / 3) !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
    #home .pgp-most-row,
    #home .product-row,
    #home .pgp-product-row,
    #iq-garages .product-row,
    #iq-garages .pgp-most-row,
    .following-grid,
    .following-wrap .product-row,
    .saved-products-grid,
    .saved-grid,
    .wishlist-products,
    .garage-products,
    .pgp-products
  )[data-pgp-ui-mode="grid"] {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  :root {
    --pgp-ui-header-row: 39px;
    --pgp-ui-search-row: 37px;
    --pgp-ui-header-total: 76px;
    --pgp-ui-card-gap: 8px;
    --pgp-ui-arrow: 40px;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header .pgp-app-header-inner {
    grid-template-columns: 52px minmax(0, 1fr) 32px !important;
    grid-template-areas: "logo tabs menu" !important;
    gap: 7px !important;
    padding: 0 8px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-left {
    grid-area: logo !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-spacer,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-lang-wrap {
    display: none !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs {
    grid-area: tabs !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 27px !important;
    min-height: 27px !important;
    max-height: 27px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab:is(:link, :visited, :hover, :focus, :focus-visible, :active) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 27px !important;
    min-height: 27px !important;
    max-height: 27px !important;
    padding: 0 4px !important;
    font-size: 10px !important;
    border-radius: 6px 6px 2px 2px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-left,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: 26px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link img {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: 26px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-parts-menu-button {
    grid-area: menu !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-form,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-form:focus-within {
    width: 60vw !important;
    min-width: 210px !important;
    max-width: 258px !important;
    min-height: 30px !important;
    height: 30px !important;
    max-height: 30px !important;
    padding: 0 32px 0 10px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-input,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-input:is(:hover, :focus, :focus-visible, :active) {
    min-height: 26px !important;
    height: 26px !important;
    max-height: 26px !important;
    font-size: 11px !important;
    line-height: 26px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-search-submit:is(:hover, :focus, :focus-visible, :active) {
    width: 26px !important;
    min-width: 26px !important;
    max-width: 26px !important;
    height: 26px !important;
    min-height: 26px !important;
    max-height: 26px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu {
    top: calc(var(--pgp-ui-header-total) + 8px) !important;
    right: 8px !important;
    left: auto !important;
    width: 60vw !important;
    min-width: 220px !important;
    max-width: 300px !important;
    max-height: calc(100dvh - var(--pgp-ui-header-total) - 24px) !important;
    border-radius: 18px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-header-parts-head {
    min-height: 48px !important;
    padding: 8px 9px 8px 12px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-hemi-title,
  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-hemi-title strong {
    font-size: 12px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-menu {
    gap: 6px !important;
    padding: 8px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page #pgpHeaderPartsMenu .pgp-platform-group > summary {
    min-height: 39px !important;
    padding: 8px 29px 8px 10px !important;
    font-size: 10.5px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
    #home .pgp-most-row,
    #home .product-row,
    #home .pgp-product-row,
    #iq-garages .product-row,
    #iq-garages .pgp-most-row,
    .following-grid,
    .following-wrap .product-row,
    .saved-products-grid,
    .saved-grid,
    .wishlist-products,
    .garage-products,
    .pgp-products
  )[data-pgp-ui-mode="row"] > * {
    flex: 0 0 calc((100% - 16px) / 3) !important;
    width: calc((100% - 16px) / 3) !important;
    min-width: calc((100% - 16px) / 3) !important;
    max-width: calc((100% - 16px) / 3) !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
    #home .pgp-most-row,
    #home .product-row,
    #home .pgp-product-row,
    #iq-garages .product-row,
    #iq-garages .pgp-most-row,
    .following-grid,
    .following-wrap .product-row,
    .saved-products-grid,
    .saved-grid,
    .wishlist-products,
    .garage-products,
    .pgp-products
  )[data-pgp-ui-mode="grid"] {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(
    #home .pgp-most-product,
    #iq-garages .pgp-iq-product-card
  ) {
    min-height: 150px !important;
    height: 150px !important;
    max-height: 150px !important;
    border-radius: 14px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="left"] {
    left: 7px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page [data-pgp-ui-primary-arrow="1"][data-pgp-arrow-dir="right"] {
    right: 7px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page :is(.garage-brand, .pgp-home-identity, .pgp-v74-identity-row, .pgp-v71-mobile-identity-row) {
    column-gap: 16px !important;
    gap: 16px !important;
  }
}

@media (max-width: 359px) {
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-app-header .pgp-app-header-inner {
    grid-template-columns: 44px minmax(0, 1fr) 32px !important;
    gap: 4px !important;
    padding-inline: 5px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-left,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link,
  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-logo-link img {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs {
    gap: 3px !important;
  }

  html.pgp-ui-v907-root body.pgp-ui-v907-page .pgp-header-tabs .pgp-header-tab {
    font-size: 9px !important;
  }
}
