/* PEXURA TECH - Mobile storefront v46
   A single final mobile layer loaded after the legacy Journal/marketplace styles. */

@media (max-width: 767px) {
  :root {
    --pxm-ink: #111827;
    --pxm-muted: #64748b;
    --pxm-line: #e5e7eb;
    --pxm-soft: #f7f8fa;
    --pxm-blue: #0877ee;
    --pxm-orange: #f97316;
    --pxm-radius: 12px;
    --pxm-nav-height: 62px;
  }

  html.px-marketplace-v43,
  html.px-marketplace-v43 body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: clip !important;
    background: #fff !important;
  }

  html.px-marketplace-v43 body {
    padding-bottom: calc(var(--pxm-nav-height) + env(safe-area-inset-bottom)) !important;
  }

  html.px-marketplace-v43 body.px-mobile-drawer-open {
    overflow: hidden !important;
    touch-action: none !important;
  }

  html.px-marketplace-v43 .site-wrapper,
  html.px-marketplace-v43 .container,
  html.px-marketplace-v43 .container-fluid,
  html.px-marketplace-v43 #content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* Clean two-row mobile header */
  html.px-marketplace-v43 .mobile-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 100300 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--pxm-line) !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, .07) !important;
    backdrop-filter: blur(12px) !important;
  }

  html.px-marketplace-v43 .mobile-header .mobile-top-bar {
    display: none !important;
  }

  html.px-marketplace-v43 .mobile-header .mobile-bar {
    display: grid !important;
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    grid-template-columns: 42px minmax(0, 1fr) 46px 62px !important;
    align-items: center !important;
    gap: 5px !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    background: #fff !important;
  }

  html.px-marketplace-v43 .mobile-header .menu-trigger,
  html.px-marketplace-v43 .mobile-header .mobile-logo-wrapper,
  html.px-marketplace-v43 .mobile-header .mobile-cart-wrapper,
  html.px-marketplace-v43 .mobile-header .px-mobile-language {
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  html.px-marketplace-v43 .mobile-header .menu-trigger button {
    position: relative !important;
    display: block !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    border: 1px solid #dbe2ea !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: transparent !important;
    box-shadow: none !important;
  }

  html.px-marketplace-v43 .mobile-header .menu-trigger button::before,
  html.px-marketplace-v43 .mobile-header .menu-trigger button::after,
  html.px-marketplace-v43 .mobile-header .menu-trigger button span::before {
    position: absolute !important;
    left: 11px !important;
    width: 17px !important;
    height: 2px !important;
    border-radius: 2px !important;
    background: var(--pxm-ink) !important;
    content: "" !important;
  }

  html.px-marketplace-v43 .mobile-header .menu-trigger button::before { top: 12px !important; }
  html.px-marketplace-v43 .mobile-header .menu-trigger button span::before { top: 18px !important; }
  html.px-marketplace-v43 .mobile-header .menu-trigger button::after { top: 24px !important; }

  html.px-marketplace-v43 .mobile-header .mobile-logo-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-logo {
    display: flex !important;
    width: 100% !important;
    max-width: 142px !important;
    height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-logo img,
  html.px-marketplace-v43 .mobile-header .px-mobile-logo svg {
    display: block !important;
    width: 100% !important;
    max-width: 138px !important;
    height: 40px !important;
    max-height: 40px !important;
    object-fit: contain !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-cart {
    position: relative !important;
    display: flex !important;
    width: 42px !important;
    height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--pxm-ink) !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-cart__icon,
  html.px-marketplace-v43 .mobile-header .px-mobile-cart__icon svg {
    width: 25px !important;
    height: 25px !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-cart__label {
    display: none !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-cart__count {
    position: absolute !important;
    top: 1px !important;
    right: 0 !important;
    display: flex !important;
    min-width: 17px !important;
    height: 17px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 4px !important;
    border: 2px solid #fff !important;
    border-radius: 999px !important;
    background: var(--pxm-orange) !important;
    color: #fff !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-language select {
    display: block !important;
    width: 62px !important;
    height: 38px !important;
    padding: 0 5px !important;
    border: 1px solid #dbe2ea !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: var(--pxm-ink) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
  }

  html.px-marketplace-v43 .mobile-header .mobile-bar-group.mobile-search-group {
    display: block !important;
    width: 100% !important;
    height: 50px !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 10px 8px !important;
    background: #fff !important;
  }

  html.px-marketplace-v43 .mobile-header .mobile-search-wrapper {
    display: block !important;
    width: 100% !important;
    height: 42px !important;
    margin: 0 !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-search-form {
    display: grid !important;
    width: 100% !important;
    height: 42px !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid #cfd8e3 !important;
    border-radius: 10px !important;
    background: #f8fafc !important;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, .03) !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-search-form:focus-within {
    border-color: var(--pxm-blue) !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(8, 119, 238, .12) !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-search-form input {
    width: 100% !important;
    min-width: 0 !important;
    height: 40px !important;
    padding: 0 13px !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--pxm-ink) !important;
    font-size: 13px !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-search-form button {
    display: flex !important;
    width: 44px !important;
    height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    background: var(--pxm-ink) !important;
    color: #fff !important;
    font-size: 22px !important;
  }

  /* Journal drawers must remain above the sticky storefront chrome. */
  html.px-marketplace-v43 .mobile-container,
  html.px-marketplace-v43 .mobile-filter-container,
  html.px-marketplace-v43 .mobile-cart-content-container {
    z-index: 100500 !important;
  }

  html.px-marketplace-v43 .mobile-main-menu-container {
    display: none !important;
  }

  html.px-marketplace-v43 .mobile-filter-container,
  html.px-marketplace-v43 .mobile-cart-content-container {
    top: 0 !important;
    bottom: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    background: #fff !important;
  }

  html.px-marketplace-v43 .mobile-filter-wrapper,
  html.px-marketplace-v43 .mobile-cart-content-wrapper {
    max-height: calc(100dvh - 58px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  /* Purpose-built category drawer */
  html.px-marketplace-v43 .px-mobile-category-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100600 !important;
    display: block !important;
    visibility: hidden !important;
    opacity: 0 !important;
    background: rgba(15, 23, 42, .48) !important;
    transition: opacity .22s ease, visibility .22s ease !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer {
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 100700 !important;
    display: flex !important;
    visibility: hidden !important;
    width: min(88vw, 360px) !important;
    height: 100dvh !important;
    flex-direction: column !important;
    overflow: hidden !important;
    transform: translateX(-104%) !important;
    border-radius: 0 18px 18px 0 !important;
    background: #fff !important;
    box-shadow: 20px 0 60px rgba(15, 23, 42, .2) !important;
    transition: transform .24s ease, visibility .24s ease !important;
  }

  html.px-marketplace-v43 body.px-mobile-drawer-open .px-mobile-category-backdrop {
    visibility: visible !important;
    opacity: 1 !important;
  }

  html.px-marketplace-v43 body.px-mobile-drawer-open .px-mobile-category-drawer {
    visibility: visible !important;
    transform: translateX(0) !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer__head {
    display: grid !important;
    min-height: 64px !important;
    grid-template-columns: minmax(0, 1fr) 42px !important;
    align-items: center !important;
    gap: 8px !important;
    padding: max(10px, env(safe-area-inset-top)) 12px 10px 18px !important;
    border-bottom: 1px solid var(--pxm-line) !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer__head strong {
    color: var(--pxm-ink) !important;
    font-size: 18px !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer__close {
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--pxm-soft) !important;
    color: var(--pxm-ink) !important;
    font-size: 24px !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer__body {
    flex: 1 !important;
    padding: 14px 12px calc(22px + env(safe-area-inset-bottom)) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
  }

  html.px-marketplace-v43 .px-mobile-category-drawer__label {
    display: block !important;
    margin: 2px 6px 10px !important;
    color: var(--pxm-muted) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }

  html.px-marketplace-v43 .px-mobile-category-link {
    display: grid !important;
    min-height: 58px !important;
    grid-template-columns: 42px minmax(0, 1fr) 20px !important;
    align-items: center !important;
    gap: 11px !important;
    margin-bottom: 8px !important;
    padding: 8px 10px !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: var(--pxm-ink) !important;
  }

  html.px-marketplace-v43 .px-mobile-category-link__icon {
    display: flex !important;
    width: 42px !important;
    height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 11px !important;
    background: #eff6ff !important;
    color: var(--pxm-blue) !important;
    font-size: 18px !important;
  }

  html.px-marketplace-v43 .px-mobile-category-link strong {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  html.px-marketplace-v43 .px-mobile-category-link small {
    display: block !important;
    margin-top: 3px !important;
    color: var(--pxm-muted) !important;
    font-size: 10px !important;
  }

  /* Compact trust strip */
  html.px-marketplace-v43 .px-benefit-grid {
    display: grid !important;
    width: auto !important;
    max-width: none !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 10px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  html.px-marketplace-v43 .px-benefit-grid .px-benefit {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 9px !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 5px 16px rgba(15, 23, 42, .04) !important;
  }

  html.px-marketplace-v43 .px-benefit-grid .px-benefit-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 9px !important;
    background: #eff6ff !important;
    color: var(--pxm-blue) !important;
    font-size: 13px !important;
  }

  html.px-marketplace-v43 .px-benefit-grid strong {
    font-size: 10px !important;
    line-height: 1.25 !important;
  }

  html.px-marketplace-v43 .px-benefit-grid small {
    display: block !important;
    margin-top: 2px !important;
    color: var(--pxm-muted) !important;
    font-size: 8px !important;
    line-height: 1.2 !important;
  }

  /* Category discovery: compact, swipeable and unclipped. */
  html.px-marketplace-v43 .px-marketplace-discovery {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 10px !important;
    margin: 8px 0 10px !important;
    padding: 3px 10px 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-padding-left: 10px !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
  }

  html.px-marketplace-v43 .px-marketplace-discovery::-webkit-scrollbar { display: none !important; }

  html.px-marketplace-v43 .px-marketplace-discovery a {
    display: flex !important;
    width: 78px !important;
    min-width: 78px !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 2px !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
    scroll-snap-align: start !important;
  }

  html.px-marketplace-v43 .px-marketplace-discovery__icon {
    width: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    border: 2px solid #e5e7eb !important;
    border-radius: 50% !important;
    background: #fff !important;
    color: var(--pxm-ink) !important;
    box-shadow: 0 4px 13px rgba(15, 23, 42, .05) !important;
    font-size: 19px !important;
  }

  html.px-marketplace-v43 .px-marketplace-discovery strong {
    font-size: 9px !important;
    line-height: 1.2 !important;
  }

  html.px-marketplace-v43 .px-marketplace-discovery small { display: none !important; }

  /* Genuine two-column product grids */
  html.px-marketplace-v43.route-common-home .module-products,
  html.px-marketplace-v43.route-common-home .module-blocks,
  html.px-marketplace-v43.route-common-home .module-banners,
  html.px-marketplace-v43.route-product-category .main-products,
  html.px-marketplace-v43.route-product-search .main-products {
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  html.px-marketplace-v43.route-common-home .grid-col,
  html.px-marketplace-v43.route-common-home .grid-item,
  html.px-marketplace-v43.route-common-home .grid-items {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html.px-marketplace-v43.route-common-home .grid-col {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }

  html.px-marketplace-v43.route-common-home .module-products {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  html.px-marketplace-v43 .module-products .product-grid,
  html.px-marketplace-v43.route-product-category .main-products.product-grid,
  html.px-marketplace-v43.route-product-search .main-products.product-grid,
  html.px-marketplace-v43.route-product-category .main-products .product-grid,
  html.px-marketplace-v43.route-product-search .main-products .product-grid {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  html.px-marketplace-v43 .module-products .product-grid > .product-layout,
  html.px-marketplace-v43.route-product-category .main-products.product-grid > .product-layout,
  html.px-marketplace-v43.route-product-search .main-products.product-grid > .product-layout,
  html.px-marketplace-v43.route-product-category .main-products .product-grid > .product-layout,
  html.px-marketplace-v43.route-product-search .main-products .product-grid > .product-layout,
  html.px-marketplace-v43 .module-products .product-grid > .swiper-slide {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
  }

  html.px-marketplace-v43 .product-thumb {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .045) !important;
  }

  html.px-marketplace-v43 .product-thumb .image {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    height: 168px !important;
    min-height: 168px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 9px !important;
    overflow: hidden !important;
    border: 0 !important;
    border-bottom: 1px solid #f0f2f5 !important;
    border-radius: 0 !important;
    background: #fafbfc !important;
  }

  html.px-marketplace-v43 .product-thumb .image .product-img,
  html.px-marketplace-v43 .product-thumb .image .product-img > div {
    display: flex !important;
    width: 100% !important;
    height: 150px !important;
    min-height: 150px !important;
    align-items: center !important;
    justify-content: center !important;
  }

  html.px-marketplace-v43 .product-thumb .image img {
    display: block !important;
    width: 100% !important;
    max-width: 150px !important;
    height: 150px !important;
    max-height: 150px !important;
    object-fit: contain !important;
  }

  html.px-marketplace-v43 .product-thumb .caption {
    display: flex !important;
    min-height: 164px !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    padding: 10px !important;
  }

  html.px-marketplace-v43 .product-thumb .name {
    display: -webkit-box !important;
    min-height: 36px !important;
    max-height: 36px !important;
    margin: 0 0 6px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  html.px-marketplace-v43 .product-thumb .name a {
    color: var(--pxm-ink) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
  }

  html.px-marketplace-v43 .product-thumb .rating {
    min-height: 14px !important;
    margin: 0 0 3px !important;
    font-size: 10px !important;
  }

  html.px-marketplace-v43 .product-thumb .price {
    min-height: 24px !important;
    margin: 0 0 8px !important;
  }

  html.px-marketplace-v43 .product-thumb .price-normal,
  html.px-marketplace-v43 .product-thumb .price-new {
    color: var(--pxm-ink) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
  }

  html.px-marketplace-v43 .product-thumb .button-group,
  html.px-marketplace-v43 .product-thumb .buttons-wrapper {
    width: 100% !important;
    margin-top: auto !important;
  }

  html.px-marketplace-v43 .product-thumb .stepper,
  html.px-marketplace-v43 .product-thumb .btn-compare,
  html.px-marketplace-v43 .product-thumb .compare-btn {
    display: none !important;
  }

  html.px-marketplace-v43 .product-thumb .btn-cart {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 7px 5px !important;
    border-radius: 8px !important;
    background: var(--pxm-orange) !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
  }

  html.px-marketplace-v43 .product-thumb .px-wish-on-image,
  html.px-marketplace-v43 .product-thumb .px-quick-on-image {
    right: 7px !important;
    display: flex !important;
    width: 32px !important;
    height: 32px !important;
  }

  html.px-marketplace-v43 .product-thumb .px-wish-on-image { top: 7px !important; }
  html.px-marketplace-v43 .product-thumb .px-quick-on-image { top: 44px !important; }

  html.px-marketplace-v43 .product-thumb .px-marketplace-shipping {
    right: auto !important;
    bottom: 7px !important;
    left: 7px !important;
    max-width: calc(100% - 14px) !important;
    font-size: 7px !important;
  }

  /* Category/search layout and useful mobile filter entry point. */
  html.px-marketplace-v43.route-product-category .main-products-wrapper,
  html.px-marketplace-v43.route-product-search .main-products-wrapper {
    display: block !important;
    width: 100% !important;
  }

  html.px-marketplace-v43.route-product-category #column-left,
  html.px-marketplace-v43.route-product-category .side-column,
  html.px-marketplace-v43.route-product-search #column-left,
  html.px-marketplace-v43.route-product-search .side-column {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
  }

  html.px-marketplace-v43 .mobile-filter-trigger,
  html.px-marketplace-v43 .btn-filter {
    min-height: 42px !important;
    border-radius: 9px !important;
    background: var(--pxm-ink) !important;
    color: #fff !important;
    font-weight: 800 !important;
  }

  /* Product detail: media first, compact information, no covered controls. */
  html.px-marketplace-v43.route-product-product body {
    padding-bottom: calc(124px + env(safe-area-inset-bottom)) !important;
  }

  html.px-marketplace-v43.route-product-product .product-info {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
  }

  html.px-marketplace-v43.route-product-product .product-left,
  html.px-marketplace-v43.route-product-product .product-right {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 10px !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .product-image {
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 8px !important;
    overflow: hidden !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .06) !important;
  }

  /* v47: one native swipe rail for every photo and video. */
  html.px-marketplace-v43.route-product-product .product-image.pxm47-gallery-ready .main-image {
    display: none !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-carousel {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: min(92vw, 390px) !important;
    min-height: 320px !important;
    max-height: 390px !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #fff !important;
    touch-action: pan-x pan-y pinch-zoom !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-track {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x mandatory !important;
    scrollbar-width: none !important;
    overscroll-behavior-x: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-track::-webkit-scrollbar {
    display: none !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-slide {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    flex: 0 0 100% !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px !important;
    overflow: hidden !important;
    background: #fff !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-slide-video {
    padding: 0 !important;
    background: #0b0f17 !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-slide img,
  html.px-marketplace-v43.route-product-product .pxm47-slide video,
  html.px-marketplace-v43.route-product-product .pxm47-slide iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    object-fit: contain !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-video {
    background: #0b0f17 !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-counter {
    position: absolute !important;
    right: 12px !important;
    bottom: 12px !important;
    z-index: 4 !important;
    display: flex !important;
    min-width: 48px !important;
    height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(17, 24, 39, .86) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    backdrop-filter: blur(8px) !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-nav {
    position: absolute !important;
    top: 50% !important;
    z-index: 4 !important;
    display: flex !important;
    width: 38px !important;
    height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 0 3px !important;
    transform: translateY(-50%) !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(17, 24, 39, .82) !important;
    color: #fff !important;
    font-size: 27px !important;
    line-height: 1 !important;
    box-shadow: 0 5px 14px rgba(15, 23, 42, .18) !important;
  }

  html.px-marketplace-v43.route-product-product .pxm47-prev { left: 10px !important; }
  html.px-marketplace-v43.route-product-product .pxm47-next { right: 10px !important; }

  html.px-marketplace-v43.route-product-product .pxm47-video-badge {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    z-index: 3 !important;
    display: flex !important;
    height: 28px !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(249, 115, 22, .92) !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 900 !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .additional-image.pxm47-active {
    border: 2px solid var(--pxm-orange) !important;
    box-shadow: 0 0 0 2px rgba(249, 115, 22, .12) !important;
  }

  html.pxm48-lightbox-open,
  body.pxm48-lightbox-open {
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }

  html.px-marketplace-v43.route-product-product .pxm48-zoomable {
    cursor: zoom-in !important;
  }

  .pxm48-lightbox {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: none !important;
    width: 100vw !important;
    height: 100dvh !important;
    flex-direction: column !important;
    overflow: hidden !important;
    background: rgba(5, 8, 14, .97) !important;
    color: #fff !important;
  }

  .pxm48-lightbox.pxm48-open {
    display: flex !important;
  }

  .pxm48-lightbox-head {
    position: relative !important;
    z-index: 3 !important;
    display: flex !important;
    min-height: 58px !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: max(10px, env(safe-area-inset-top)) 14px 8px !important;
  }

  .pxm48-lightbox-counter {
    display: inline-flex !important;
    min-width: 52px !important;
    height: 32px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .09) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }

  .pxm48-lightbox-close {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 0 3px !important;
    border: 1px solid rgba(255, 255, 255, .16) !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    font-size: 30px !important;
    line-height: 1 !important;
  }

  .pxm48-lightbox-stage {
    position: relative !important;
    display: flex !important;
    min-height: 0 !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }

  .pxm48-lightbox-media {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 18px !important;
    overflow: hidden !important;
    touch-action: pan-y pinch-zoom !important;
  }

  .pxm48-lightbox-media img,
  .pxm48-lightbox-media video,
  .pxm48-lightbox-media iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    object-fit: contain !important;
  }

  .pxm48-lightbox-media-video {
    padding: 8px 12px !important;
    background: #05080e !important;
  }

  .pxm48-lightbox-nav {
    position: absolute !important;
    top: 50% !important;
    z-index: 4 !important;
    display: flex !important;
    width: 44px !important;
    height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 0 4px !important;
    transform: translateY(-50%) !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 50% !important;
    background: rgba(17, 24, 39, .88) !important;
    color: #fff !important;
    font-size: 31px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .28) !important;
  }

  .pxm48-lightbox-prev { left: 10px !important; }
  .pxm48-lightbox-next { right: 10px !important; }
  .pxm48-lightbox-nav:disabled { opacity: .22 !important; }

  .pxm48-lightbox-thumbs {
    display: flex !important;
    min-height: 86px !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px max(10px, env(safe-area-inset-bottom)) !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-top: 1px solid rgba(255, 255, 255, .1) !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .pxm48-lightbox-thumbs::-webkit-scrollbar { display: none !important; }

  .pxm48-lightbox-thumb {
    position: relative !important;
    display: flex !important;
    width: 62px !important;
    min-width: 62px !important;
    height: 62px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 3px !important;
    overflow: hidden !important;
    border: 2px solid rgba(255, 255, 255, .18) !important;
    border-radius: 9px !important;
    background: #fff !important;
  }

  .pxm48-lightbox-thumb.pxm48-active {
    border-color: var(--pxm-orange) !important;
    box-shadow: 0 0 0 2px rgba(249, 115, 22, .3) !important;
  }

  .pxm48-lightbox-thumb img,
  .pxm48-lightbox-thumb video {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    object-fit: contain !important;
  }

  .pxm47-video.pxm49-preview-ready,
  .pxm48-lightbox-media video.pxm49-preview-ready,
  .pxm48-lightbox-thumb video.pxm49-preview-ready {
    background: #111827 !important;
  }

  .pxm48-lightbox-play {
    position: absolute !important;
    display: flex !important;
    width: 28px !important;
    height: 28px !important;
    align-items: center !important;
    justify-content: center !important;
    padding-left: 2px !important;
    border-radius: 50% !important;
    background: var(--pxm-blue) !important;
    color: #fff !important;
    font-size: 12px !important;
  }

  html.px-marketplace-v43.route-product-product .product-image.pxm47-gallery-ready .px-inline-gallery-nav {
    display: none !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .main-image,
  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-container,
  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-wrapper,
  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-slide {
    width: 100% !important;
    height: min(92vw, 390px) !important;
    min-height: 0 !important;
    max-height: 390px !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-slide {
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 11px !important;
    background: #fff !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-slide.px-gallery-active,
  html.px-marketplace-v43.route-product-product .product-left .main-image .swiper-slide.swiper-slide-active {
    display: flex !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .main-image img,
  html.px-marketplace-v43.route-product-product .product-left .main-image video,
  html.px-marketplace-v43.route-product-product .product-left .main-image iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    border: 0 !important;
    object-fit: contain !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .additional-images {
    display: flex !important;
    width: 100% !important;
    gap: 8px !important;
    margin: 9px 0 0 !important;
    padding: 2px 1px 4px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .additional-images::-webkit-scrollbar { display: none !important; }

  html.px-marketplace-v43.route-product-product .product-left .additional-image {
    display: flex !important;
    width: 64px !important;
    min-width: 64px !important;
    height: 64px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 4px !important;
    overflow: hidden !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 9px !important;
    background: #fff !important;
    scroll-snap-align: start !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .additional-image.px-gallery-active,
  html.px-marketplace-v43.route-product-product .product-left .additional-image.swiper-slide-active {
    border: 2px solid var(--pxm-orange) !important;
  }

  html.px-marketplace-v43.route-product-product .product-image.pxm47-gallery-ready .additional-image.px-gallery-active:not(.pxm47-active),
  html.px-marketplace-v43.route-product-product .product-image.pxm47-gallery-ready .additional-image.swiper-slide-active:not(.pxm47-active) {
    border: 1px solid #dbe2ea !important;
    box-shadow: none !important;
  }

  html.px-marketplace-v43.route-product-product .product-left .additional-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
  }

  html.px-marketplace-v43.route-product-product .product-right {
    position: static !important;
  }

  html.px-marketplace-v43.route-product-product .product-right #product {
    display: flex !important;
    width: 100% !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px !important;
    border: 1px solid var(--pxm-line) !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .055) !important;
  }

  html.px-marketplace-v43.route-product-product #product .title.page-title,
  html.px-marketplace-v43.route-product-product #product .title.page-title h1,
  html.px-marketplace-v43.route-product-product .product-title {
    margin: 0 !important;
    color: var(--pxm-ink) !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
  }

  html.px-marketplace-v43.route-product-product #product .product-price {
    margin: 0 !important;
    padding: 9px 0 !important;
    border-top: 1px solid #f0f2f5 !important;
    border-bottom: 1px solid #f0f2f5 !important;
  }

  html.px-marketplace-v43.route-product-product #product .product-price .price-new,
  html.px-marketplace-v43.route-product-product #product .product-price .price-normal {
    color: var(--pxm-orange) !important;
    font-size: 25px !important;
    font-weight: 900 !important;
  }

  html.px-marketplace-v43.route-product-product .px-product-assurance {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px !important;
    margin: 0 !important;
  }

  html.px-marketplace-v43.route-product-product .px-assurance-item {
    min-height: 52px !important;
    padding: 8px !important;
    border-radius: 9px !important;
  }

  html.px-marketplace-v43.route-product-product .px-product-market-sidebar {
    display: none !important;
  }

  html.px-marketplace-v43.route-product-product .px-product-market-extras,
  html.px-marketplace-v43.route-product-product .px-product-market-notes {
    width: 100% !important;
    margin: 0 !important;
  }

  /* Bottom application navigation */
  html.px-marketplace-v43 .px-marketplace-mobile-nav {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 100350 !important;
    display: grid !important;
    width: 100% !important;
    height: calc(var(--pxm-nav-height) + env(safe-area-inset-bottom)) !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    padding: 4px 4px max(4px, env(safe-area-inset-bottom)) !important;
    border-top: 1px solid var(--pxm-line) !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 -5px 20px rgba(15, 23, 42, .09) !important;
    backdrop-filter: blur(12px) !important;
  }

  html.px-marketplace-v43 .px-marketplace-mobile-nav a {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    padding: 2px !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: #475569 !important;
  }

  html.px-marketplace-v43 .px-marketplace-mobile-nav a.is-active,
  html.px-marketplace-v43 .px-marketplace-mobile-nav a:focus {
    background: #fff7ed !important;
    color: var(--pxm-orange) !important;
  }

  html.px-marketplace-v43 .px-marketplace-mobile-nav span {
    font-size: 19px !important;
    line-height: 1 !important;
  }

  html.px-marketplace-v43 .px-marketplace-mobile-nav strong {
    overflow: hidden !important;
    max-width: 100% !important;
    color: inherit !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html.px-marketplace-v43 .px-mobile-buybar {
    position: fixed !important;
    right: 0 !important;
    bottom: calc(var(--pxm-nav-height) + env(safe-area-inset-bottom)) !important;
    left: 0 !important;
    z-index: 100340 !important;
    display: grid !important;
    min-height: 62px !important;
    grid-template-columns: minmax(92px, .75fr) minmax(170px, 1.25fr) !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 10px !important;
    border-top: 1px solid var(--pxm-line) !important;
    background: rgba(255, 255, 255, .98) !important;
    box-shadow: 0 -5px 20px rgba(15, 23, 42, .08) !important;
  }

  html.px-marketplace-v43 .px-mobile-buybar__price {
    overflow: hidden !important;
    color: var(--pxm-ink) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html.px-marketplace-v43 .px-mobile-buybar__button {
    width: 100% !important;
    min-height: 46px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--pxm-orange) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    box-shadow: 0 7px 18px rgba(249, 115, 22, .24) !important;
  }

  /* Footer: centered, readable and safely above bottom navigation. */
  html.px-marketplace-v43 footer {
    width: 100% !important;
    margin-bottom: 0 !important;
    padding-bottom: 24px !important;
    overflow: hidden !important;
  }

  html.px-marketplace-v43 footer .grid-rows,
  html.px-marketplace-v43 footer .grid-row,
  html.px-marketplace-v43 footer .grid-cols {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Hide desktop-only decorative controls that collide with mobile cards. */
  html.px-marketplace-v43 .swiper-button-prev,
  html.px-marketplace-v43 .swiper-button-next {
    max-width: 38px !important;
    max-height: 38px !important;
  }
}

@media (max-width: 374px) {
  html.px-marketplace-v43 .mobile-header .mobile-bar {
    grid-template-columns: 40px minmax(0, 1fr) 42px 58px !important;
    gap: 3px !important;
    padding-right: 7px !important;
    padding-left: 7px !important;
  }

  html.px-marketplace-v43 .mobile-header .px-mobile-logo {
    max-width: 120px !important;
  }

  html.px-marketplace-v43 .product-thumb .image {
    height: 148px !important;
    min-height: 148px !important;
  }

  html.px-marketplace-v43 .product-thumb .image .product-img,
  html.px-marketplace-v43 .product-thumb .image .product-img > div,
  html.px-marketplace-v43 .product-thumb .image img {
    height: 132px !important;
    min-height: 132px !important;
    max-height: 132px !important;
  }

  html.px-marketplace-v43 .product-thumb .caption {
    padding: 8px !important;
  }
}
