:root {
        --apex-p6-card-bg: #090a13;
        --apex-p6-card-bg-soft: #0d0f1c;
        --apex-p6-border: rgba(150, 170, 220, .18);
        --apex-p6-border-strong: rgba(145, 205, 238, .36);
        --apex-p6-text: #f1f4ff;
        --apex-p6-muted: #a9b2cc;
        --apex-p6-subtle: #7f8aa8;
        --apex-p6-action: #2f67e8;
        --apex-p6-action-hover: #3c78ff;
        --apex-p6-safe: #25d366;
      }

      .woocommerce ul.products,
      .woocommerce-page ul.products,
      .ast-woocommerce-container ul.products {
        align-items: stretch !important;
        gap: clamp(18px, 2vw, 28px) !important;
        overflow: visible !important;
      }

      .woocommerce ul.products li.product,
      .woocommerce-page ul.products li.product,
      .ast-woocommerce ul.products li.product,
      .woocommerce ul.products[class*="columns-"] li.product,
      .woocommerce-page ul.products[class*="columns-"] li.product {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
        min-height: 100% !important;
        overflow: hidden !important;
        isolation: isolate;
        background: var(--apex-p6-card-bg) !important;
        border: 1px solid var(--apex-p6-border) !important;
        border-radius: 8px !important;
        box-shadow: 0 16px 40px rgba(0, 0, 0, .34) !important;
        transform: none !important;
        transition:
          border-color .22s cubic-bezier(.16, 1, .3, 1),
          box-shadow .22s cubic-bezier(.16, 1, .3, 1),
          transform .22s cubic-bezier(.16, 1, .3, 1) !important;
      }

      .woocommerce ul.products li.product::before,
      .woocommerce-page ul.products li.product::before {
        content: none !important;
      }

      .woocommerce ul.products li.product::after,
      .woocommerce-page ul.products li.product::after {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        left: 0 !important;
        z-index: 3 !important;
        height: 1px !important;
        background: rgba(170, 195, 235, .28) !important;
        opacity: 1 !important;
        transform: none !important;
        border-radius: 8px 8px 0 0 !important;
      }

      .woocommerce ul.products li.product:hover,
      .woocommerce-page ul.products li.product:hover {
        border-color: var(--apex-p6-border-strong) !important;
        box-shadow: 0 22px 48px rgba(0, 0, 0, .42) !important;
        transform: translateY(-2px) !important;
      }

      .woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
        position: relative !important;
        flex: 0 0 auto !important;
        overflow: hidden !important;
        background: var(--apex-p6-card-bg-soft) !important;
        border-radius: 8px 8px 0 0 !important;
      }

      .woocommerce ul.products li.product .woocommerce-LoopProduct-link {
        display: block !important;
        position: relative !important;
        flex: none !important;
        min-width: 0 !important;
        overflow: visible !important;
        text-decoration: none !important;
      }

      .woocommerce ul.products li.product .woocommerce-LoopProduct-link::after {
        content: none !important;
      }

      .woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
      .woocommerce ul.products li.product a img,
      .woocommerce ul.products li.product img:first-of-type,
      .woocommerce-page ul.products li.product img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: contain !important;
        object-position: center !important;
        padding: clamp(18px, 2.2vw, 26px) !important;
        background: #101322 !important;
        border-bottom: 1px solid rgba(150, 170, 220, .12) !important;
        filter: none !important;
        transform: none !important;
        transition:
          transform .22s cubic-bezier(.16, 1, .3, 1),
          background-color .22s cubic-bezier(.16, 1, .3, 1) !important;
      }

      .woocommerce ul.products li.product:hover img:first-of-type {
        filter: none !important;
        transform: scale(1.025) !important;
      }

      .woocommerce ul.products li.product .astra-shop-thumbnail-wrap .ast-on-card-button,
      .woocommerce ul.products li.product .ast-on-card-button,
      .woocommerce ul.products li.product .ast-card-action-tooltip {
        display: none !important;
      }

      .woocommerce ul.products li.product .apex-grid-cat {
        display: block !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 12px 18px 0 !important;
        color: #9bdcff !important;
        font-family: var(--apex-font-heading, 'Orbitron', sans-serif) !important;
        font-size: .66rem !important;
        font-weight: 700 !important;
        letter-spacing: .08em !important;
        line-height: 1.25 !important;
        opacity: 1 !important;
        text-transform: uppercase !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
      }

      .woocommerce ul.products li.product .apex-card-help {
        display: none !important;
      }

      .woocommerce ul.products li.product .astra-shop-summary-wrap {
        display: flex !important;
        flex: 1 1 auto !important;
        flex-direction: column !important;
        min-width: 0 !important;
        min-height: 0 !important;
        padding: 14px 18px 18px !important;
      }

      .woocommerce ul.products li.product .ast-woo-product-category {
        display: none !important;
      }

      .woocommerce ul.products li.product .ast-loop-product__link {
        display: block !important;
        min-width: 0 !important;
        text-decoration: none !important;
      }

      .woocommerce ul.products li.product .woocommerce-loop-product__title,
      .woocommerce ul.products li.product h2 {
        display: -webkit-box !important;
        min-height: 4.15em !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        color: var(--apex-p6-text) !important;
        font-family: var(--apex-font-body, 'Outfit', sans-serif) !important;
        font-size: clamp(.9rem, .9vw, .98rem) !important;
        font-weight: 700 !important;
        letter-spacing: 0 !important;
        line-height: 1.34 !important;
        text-transform: none !important;
        overflow-wrap: anywhere !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 3 !important;
      }

      .woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
        color: #f7f9ff !important;
      }

      .woocommerce ul.products li.product .price,
      .woocommerce ul.products li.product .price ins,
      .woocommerce ul.products li.product .price .amount {
        display: block !important;
        margin: 0 !important;
        padding: 12px 0 0 !important;
        color: var(--apex-p6-text) !important;
        font-family: var(--apex-font-heading, 'Orbitron', sans-serif) !important;
        font-size: clamp(1.02rem, 1.2vw, 1.18rem) !important;
        font-weight: 800 !important;
        letter-spacing: 0 !important;
        line-height: 1.18 !important;
      }

      .woocommerce ul.products li.product .price del,
      .woocommerce ul.products li.product .price del .amount {
        color: var(--apex-p6-subtle) !important;
        font-size: .84rem !important;
      }

      .woocommerce ul.products li.product .button,
      .woocommerce ul.products li.product a.button,
      .woocommerce ul.products li.product .added_to_cart {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 48px !important;
        margin: auto 0 0 !important;
        padding: 10px 14px !important;
        overflow: visible !important;
        border: 1px solid rgba(130, 170, 245, .48) !important;
        border-radius: 8px !important;
        background: var(--apex-p6-action) !important;
        box-shadow: none !important;
        color: #f7f9ff !important;
        font-family: var(--apex-font-heading, 'Orbitron', sans-serif) !important;
        font-size: .74rem !important;
        font-weight: 800 !important;
        letter-spacing: .04em !important;
        line-height: 1.15 !important;
        text-align: center !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
      }

      .woocommerce ul.products li.product .button::before,
      .woocommerce ul.products li.product a.button::before,
      .woocommerce ul.products li.product .added_to_cart::before {
        content: none !important;
      }

      .woocommerce ul.products li.product .button:hover,
      .woocommerce ul.products li.product a.button:hover,
      .woocommerce ul.products li.product .added_to_cart:hover {
        background: var(--apex-p6-action-hover) !important;
        border-color: rgba(185, 210, 255, .72) !important;
        color: #f7f9ff !important;
        transform: none !important;
      }

      .woocommerce ul.products li.product .button:focus-visible,
      .woocommerce ul.products li.product a.button:focus-visible,
      .woocommerce ul.products li.product .woocommerce-LoopProduct-link:focus-visible,
      .woocommerce ul.products li.product .ast-loop-product__link:focus-visible {
        outline: 2px solid #9bdcff !important;
        outline-offset: 3px !important;
      }

      .woocommerce span.onsale,
      .woocommerce ul.products li.product .onsale {
        top: 12px !important;
        right: 12px !important;
        left: auto !important;
        max-width: calc(100% - 24px) !important;
        min-width: 0 !important;
        min-height: 0 !important;
        padding: 7px 10px !important;
        border: 1px solid rgba(255, 175, 180, .36) !important;
        border-radius: 7px !important;
        background: #b82b36 !important;
        box-shadow: 0 8px 18px rgba(0, 0, 0, .28) !important;
        color: #fff7f8 !important;
        font-family: var(--apex-font-heading, 'Orbitron', sans-serif) !important;
        font-size: .64rem !important;
        font-weight: 800 !important;
        letter-spacing: .06em !important;
        line-height: 1.15 !important;
        text-align: center !important;
        text-transform: uppercase !important;
        white-space: normal !important;
      }

      .woocommerce ul.products li.product .ast-shop-product-out-of-stock {
        margin: 12px 0 0 !important;
        padding: 10px 12px !important;
        border: 1px solid rgba(255, 120, 130, .34) !important;
        border-radius: 8px !important;
        background: rgba(140, 32, 42, .22) !important;
        color: #ffd4d8 !important;
        font-weight: 800 !important;
        line-height: 1.25 !important;
      }

      .woocommerce ul.products li.product.apex-product-price-on-request .button.apex-enquiry-button {
        border-color: rgba(37, 211, 102, .52) !important;
        background: #17964b !important;
        color: #f1fff7 !important;
      }

      .woocommerce ul.products li.product.apex-product-price-on-request .button.apex-enquiry-button:hover {
        background: var(--apex-p6-safe) !important;
        color: #031208 !important;
      }

      .woocommerce ul.products li.product .apex-price-on-request {
        width: 100% !important;
        max-width: 100% !important;
        margin: 12px 0 0 !important;
        padding: 9px 10px !important;
        border-color: rgba(255, 207, 122, .38) !important;
        background: rgba(255, 207, 122, .1) !important;
        color: #ffdf9a !important;
        font-size: .82rem !important;
        line-height: 1.25 !important;
        text-align: center !important;
      }

      .woocommerce ul.products li.product.apex-product-no-exact-image .woocommerce-placeholder {
        opacity: 0 !important;
        filter: none !important;
      }

      .woocommerce ul.products li.product.apex-product-no-exact-image .woocommerce-LoopProduct-link::before {
        content: "Exact photo pending" !important;
        position: absolute !important;
        top: 20px !important;
        right: 20px !important;
        left: 20px !important;
        z-index: 4 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 150px !important;
        height: calc(100% - 84px) !important;
        max-height: 245px !important;
        padding: 18px !important;
        border: 1px dashed rgba(155, 220, 255, .44) !important;
        border-radius: 8px !important;
        background: #101522 !important;
        color: #dff4ff !important;
        font-family: var(--apex-font-heading, 'Orbitron', sans-serif) !important;
        font-size: .72rem !important;
        font-weight: 800 !important;
        letter-spacing: .06em !important;
        line-height: 1.25 !important;
        text-align: center !important;
        text-transform: uppercase !important;
        pointer-events: none !important;
      }

      .woocommerce ul.products li.product.apex-product-no-exact-image .woocommerce-LoopProduct-link::after {
        content: "Product info is still available below" !important;
        position: absolute !important;
        right: 28px !important;
        left: 28px !important;
        top: min(214px, calc(100% - 96px)) !important;
        z-index: 5 !important;
        display: block !important;
        color: var(--apex-p6-muted) !important;
        font-family: var(--apex-font-body, 'Outfit', sans-serif) !important;
        font-size: .82rem !important;
        font-weight: 600 !important;
        line-height: 1.3 !important;
        text-align: center !important;
        pointer-events: none !important;
      }

      .woocommerce ul.products li.product-category a,
      .woocommerce-page ul.products li.product-category a {
        min-height: 100% !important;
        background: var(--apex-p6-card-bg) !important;
      }

      .woocommerce ul.products li.product-category h2,
      .woocommerce ul.products li.product-category .woocommerce-loop-category__title {
        padding: 14px 18px 18px !important;
        color: var(--apex-p6-text) !important;
        font-size: .98rem !important;
        line-height: 1.25 !important;
      }

      .woocommerce ul.products li.product-category mark.count {
        color: var(--apex-p6-muted) !important;
        background: transparent !important;
      }

      @media (max-width: 1040px) {
        .woocommerce ul.products,
        .woocommerce-page ul.products,
        .ast-woocommerce-container ul.products {
          gap: 24px 18px !important;
        }
      }

      @media (max-width: 760px) {
        .woocommerce ul.products li.product .astra-shop-summary-wrap {
          padding: 14px 16px 16px !important;
        }

        .woocommerce ul.products li.product .apex-grid-cat {
          padding-right: 16px !important;
          padding-left: 16px !important;
        }

        .woocommerce ul.products li.product .woocommerce-loop-product__title,
        .woocommerce ul.products li.product h2 {
          min-height: auto !important;
          font-size: .96rem !important;
          -webkit-line-clamp: 3 !important;
        }

        .woocommerce ul.products li.product .button,
        .woocommerce ul.products li.product a.button,
        .woocommerce ul.products li.product .added_to_cart {
          min-height: 50px !important;
          font-size: .76rem !important;
        }
      }

      @media (max-width: 640px) {
        body.woocommerce-shop ul.products,
        body.tax-product_cat ul.products,
        body.post-type-archive-product ul.products,
        body.woocommerce-shop .woocommerce ul.products,
        body.tax-product_cat .woocommerce ul.products,
        body.post-type-archive-product .woocommerce ul.products,
        body.woocommerce-shop .ast-woocommerce-container ul.products,
        body.tax-product_cat .ast-woocommerce-container ul.products,
        body.post-type-archive-product .ast-woocommerce-container ul.products {
          display: grid !important;
          grid-template-columns: minmax(0, 1fr) !important;
          gap: 18px !important;
          width: min(100%, 390px) !important;
        }

        body.woocommerce-shop ul.products li.product,
        body.tax-product_cat ul.products li.product,
        body.post-type-archive-product ul.products li.product,
        body.woocommerce-shop ul.products[class*="columns-"] li.product,
        body.tax-product_cat ul.products[class*="columns-"] li.product,
        body.post-type-archive-product ul.products[class*="columns-"] li.product {
          max-width: 390px !important;
        }

        .woocommerce ul.products li.product .woocommerce-LoopProduct-link img,
        .woocommerce ul.products li.product a img,
        .woocommerce ul.products li.product img:first-of-type {
          aspect-ratio: 4 / 3 !important;
          padding: 20px !important;
        }

        .woocommerce ul.products li.product.apex-product-no-exact-image .woocommerce-LoopProduct-link::before {
          top: 18px !important;
          right: 18px !important;
          left: 18px !important;
          min-height: 130px !important;
          height: calc(100% - 78px) !important;
          max-height: 210px !important;
          font-size: .68rem !important;
        }

        .woocommerce ul.products li.product.apex-product-no-exact-image .woocommerce-LoopProduct-link::after {
          right: 24px !important;
          left: 24px !important;
          top: min(184px, calc(100% - 90px)) !important;
          font-size: .78rem !important;
        }
      }

      @media (prefers-reduced-motion: reduce) {
        .woocommerce ul.products li.product,
        .woocommerce ul.products li.product img:first-of-type,
        .woocommerce ul.products li.product .button,
        .woocommerce ul.products li.product a.button {
          transition: none !important;
        }

        .woocommerce ul.products li.product:hover,
        .woocommerce ul.products li.product:hover img:first-of-type {
          transform: none !important;
        }
      }
