.elementor-element .elementor-widget-heading .elementor-heading-title {
  font-family: "Poppins", Sans-serif;
  font-size: 55px;
  font-weight: 700;
  color: var(--e-global-color-cf21c4a); }

.woocommerce ul.products li.product .mhp-loop-price-hidden,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .mhp-loop-price-hidden,
.elementor-widget-archive-products .woocommerce ul.products li.product .mhp-loop-price-hidden {
  margin: 0.5em 0; }
  .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message,
  .elementor-widget-woocommerce-products .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message,
  .elementor-widget-archive-products .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message {
    color: #01a17e;
    text-decoration: none;
    font-weight: 600;
    padding: 8px 12px;
    border: 2px solid #01a17e;
    border-radius: 4px;
    display: inline-block;
    transition: 0.3s ease all; }
    .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message:hover,
    .elementor-widget-woocommerce-products .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message:hover,
    .elementor-widget-archive-products .woocommerce ul.products li.product .mhp-loop-price-hidden .mhp-price-hidden-message:hover {
      background: #01a17e;
      color: white;
      text-decoration: none; }
.woocommerce ul.products li.product .mhp-enquire-button,
.elementor-widget-woocommerce-products .woocommerce ul.products li.product .mhp-enquire-button,
.elementor-widget-archive-products .woocommerce ul.products li.product .mhp-enquire-button {
  background: #01a17e !important;
  color: white !important;
  border: none !important;
  padding: 10px 16px !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: 0.3s ease all; }
  .woocommerce ul.products li.product .mhp-enquire-button:hover,
  .elementor-widget-woocommerce-products .woocommerce ul.products li.product .mhp-enquire-button:hover,
  .elementor-widget-archive-products .woocommerce ul.products li.product .mhp-enquire-button:hover {
    background: #016e56 !important;
    color: white !important;
    text-decoration: none !important; }

.category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .add_to_cart_button,
.category-shortcode-container .elementor-shortcode #mhp-af-products .products .product a.add_to_cart_button {
  margin: 0;
  height: 41px; }

.mhp-price-wrapper .mhp-enquire-button {
  background-color: #264cad;
  color: white;
  padding: 8px 25px;
  border-radius: 5px;
  font-family: "Poppins", Sans-serif;
  font-size: 18px;
  font-weight: 700; }
  .mhp-price-wrapper .mhp-enquire-button:hover {
    opacity: 0.8; }
.mhp-price-wrapper .woocommerce-Price-amount {
  color: black;
  font-family: "Poppins", Sans-serif;
  font-size: 24px;
  font-weight: 600; }

.category-shortcode-container .elementor-shortcode {
  display: flex;
  flex-direction: row;
  width: 100%;
  font-family: "Poppins", Sans-serif; }
  .category-shortcode-container .elementor-shortcode #mhp-shop-filter-form {
    width: 240px; }
  .category-shortcode-container .elementor-shortcode #mhp-af-products {
    width: 940px;
    margin-left: 20px; }
    .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
      display: grid;
      grid-template-columns: repeat(3, 300px);
      gap: 20px;
      justify-content: flex-start; }
      .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product {
        display: flex;
        flex-direction: column;
        width: 300px;
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0;
        position: relative; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .woocommerce-LoopProduct-link {
          display: flex;
          flex-direction: column;
          height: 100%;
          text-decoration: none; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img {
          width: 100%;
          height: auto;
          object-fit: cover;
          display: block;
          min-height: 200px;
          position: relative;
          margin: 0 0 0.5em;
          background: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255, 255, 255, 0.1) 10px, rgba(255, 255, 255, 0.1) 20px), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
          background-size: 100% 100%, 40%, 100% 100%;
          background-repeat: repeat, no-repeat, no-repeat;
          background-position: 0 0, center center, 0 0;
          border: 1px solid #dee2e6; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.coming-soon, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.out-of-stock {
            font-size: 0;
            color: transparent; }
            .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error::before, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error::after, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.coming-soon::before, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.coming-soon::after, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.out-of-stock::before, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.out-of-stock::after {
              font-size: initial;
              color: initial; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error {
            background: url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), radial-gradient(circle at 30% 70%, rgba(38, 76, 173, 0.1) 20%, transparent 20%), radial-gradient(circle at 70% 30%, rgba(1, 161, 126, 0.1) 15%, transparent 15%), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            background-size: 25%, 100% 100%, 100% 100%, 100% 100%;
            background-repeat: no-repeat;
            background-position: top 10px right 10px, 0 0, 0 0, 0 0;
            border: 2px dashed #6c757d;
            min-height: 250px; }
            .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error::before {
              content: "BOX";
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              font-size: 16px;
              opacity: 0.3;
              margin-top: -20px;
              font-weight: bold;
              color: #6c757d; }
            .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.image-error::after {
              content: "Product image\Aunavailable";
              position: absolute;
              bottom: 15px;
              left: 50%;
              transform: translateX(-50%);
              background: #264cad;
              color: white;
              padding: 8px 12px;
              font-size: 11px;
              border-radius: 4px;
              font-family: "Poppins", Sans-serif;
              font-weight: 600;
              text-align: center;
              line-height: 1.2;
              box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.coming-soon {
            background: linear-gradient(45deg, transparent 40%, #01a17e 40%, #01a17e 60%, transparent 60%), linear-gradient(-45deg, transparent 40%, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.1) 60%, transparent 60%), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f1f3f4 0%, #e8eaed 100%);
            background-size: 100% 4px, 100% 4px, 35%, 100% 100%;
            background-repeat: no-repeat;
            background-position: top, bottom, center center, 0 0; }
            .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.coming-soon::after {
              content: "Coming Soon";
              position: absolute;
              bottom: 15px;
              left: 50%;
              transform: translateX(-50%);
              background: #01a17e;
              color: white;
              padding: 6px 16px;
              font-size: 12px;
              border-radius: 15px;
              font-family: "Poppins", Sans-serif;
              font-weight: 700;
              text-transform: uppercase;
              letter-spacing: 0.5px; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.out-of-stock {
            background: repeating-linear-gradient(45deg, transparent, transparent 8px, rgba(220, 53, 69, 0.1) 8px, rgba(220, 53, 69, 0.1) 16px), repeating-linear-gradient(-45deg, transparent, transparent 8px, rgba(220, 53, 69, 0.1) 8px, rgba(220, 53, 69, 0.1) 16px), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
            background-size: 100% 100%, 100% 100%, 30%, 100% 100%;
            background-repeat: repeat, repeat, no-repeat, no-repeat;
            background-position: 0 0, 0 0, center center, 0 0;
            opacity: 0.7;
            filter: grayscale(50%); }
            .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.out-of-stock::after {
              content: "Out of Stock";
              position: absolute;
              bottom: 15px;
              left: 50%;
              transform: translateX(-50%);
              background: #dc3545;
              color: white;
              padding: 6px 16px;
              font-size: 12px;
              border-radius: 4px;
              font-family: "Poppins", Sans-serif;
              font-weight: 700;
              text-transform: uppercase;
              letter-spacing: 0.5px; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[data-src],
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src*="placeholder"],
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src*="loading"],
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src=""],
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img:not([src]) {
          background: url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
          background-size: 35%, 100% 100%;
          background-repeat: no-repeat;
          background-position: center center, 0 0;
          border: 1px solid #dee2e6;
          min-height: 200px; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[data-src]::after,
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src*="placeholder"]::after,
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src*="loading"]::after,
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img[src=""]::after,
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img:not([src])::after {
            content: "Loading...";
            position: absolute;
            bottom: 15px;
            left: 50%;
            transform: translateX(-50%);
            background: rgba(108, 117, 125, 0.8);
            color: white;
            padding: 4px 12px;
            font-size: 11px;
            border-radius: 3px;
            font-family: "Poppins", Sans-serif;
            animation: pulse 1.5s ease-in-out infinite; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.loading {
          opacity: 0.7;
          animation: pulse 1.5s ease-in-out infinite; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product img.loading::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            width: 20px;
            height: 20px;
            margin: -10px 0 0 -10px;
            border: 2px solid #dee2e6;
            border-top: 2px solid #264cad;
            border-radius: 50%;
            animation: spin 1s linear infinite; }
@keyframes pulse {
  0%, 100% {
    opacity: 0.7; }
  50% {
    opacity: 0.5; } }
@keyframes spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product h3, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product h3.woocommerce-loop-product__title {
          color: black;
          font-size: 13px;
          font-weight: 700;
          height: 45px;
          margin: 0 5px 5px 5px;
          padding: 0px;
          display: flex;
          align-items: center;
          background: rgba(255, 255, 255, 0.9);
          box-sizing: border-box;
          overflow: hidden;
          line-height: 1.2;
          text-decoration: none; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .price, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product span.price {
          color: black;
          font-size: 16px;
          font-weight: 800;
          height: 24px;
          margin: 0 5px;
          padding: 0 5px;
          display: flex;
          align-items: center;
          background: rgba(255, 255, 255, 0.95);
          box-sizing: border-box; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .price, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product span.price {
          margin-top: auto; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .add_to_cart_button, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product a.add_to_cart_button {
          background-color: #264cad;
          font-family: "Poppins", Sans-serif;
          color: white;
          text-align: center;
          height: 36px;
          margin: 5px 5px 5px 5px;
          padding: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          text-decoration: none;
          box-sizing: border-box;
          border: none;
          font-size: 14px;
          font-weight: 600; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .add_to_cart_button:hover, .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product a.add_to_cart_button:hover {
            opacity: 0.9; }
        .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .onsale {
          display: flex !important;
          position: absolute !important;
          top: -4px !important;
          right: -4px !important;
          background: #264cad !important;
          border-radius: 50% !important;
          font-size: 11px !important;
          min-width: 58px !important;
          min-height: 58px !important;
          z-index: 15;
          color: white;
          padding: 8px 12px;
          font-weight: 700;
          font-family: "Poppins", Sans-serif;
          text-transform: uppercase;
          letter-spacing: 0.5px;
          line-height: 1;
          align-items: center;
          justify-content: center;
          box-shadow: 0 2px 6px rgba(38, 76, 173, 0.3);
          text-decoration: none;
          transition: transform 0.2s ease, box-shadow 0.2s ease; }
          .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product .onsale:hover {
            transform: scale(1.05);
            box-shadow: 0 3px 8px rgba(38, 76, 173, 0.4); }

.mhp-price-display del {
  color: #888;
  margin-right: 5px; }

.mhp-price-display ins {
  color: #d60000;
  font-weight: bold;
  text-decoration: none; }

.mhp-price-discount {
  color: #007c00;
  margin-left: 8px; }

.mhp-price-hidden-message {
  font-family: "Poppins", Sans-serif;
  padding: .5rem 1rem;
  border: 1px solid #264CAD;
  background: #264cad;
  color: #fff;
  font-weight: bold;
  border-radius: 4px;
  transition: 0.2s ease all;
  display: inline-block; }
  .mhp-price-hidden-message:hover {
    opacity: 0.8;
    color: white; }

#mhp-load-more {
  background-color: black;
  color: white;
  font-family: "Poppins", Sans-serif;
  margin: 30px auto;
  text-align: center;
  display: flex; }
  #mhp-load-more:hover {
    opacity: 0.8; }

.mhp-af-wrapper {
  display: flex;
  margin: 0 auto;
  max-width: 1200px; }

.mhp-af-sidebar {
  width: 260px;
  border: 1px solid #ddd;
  padding: 1rem;
  border-radius: 6px;
  transition: all 0.1s ease;
  align-self: flex-start; }
  .mhp-af-sidebar.sticky-scrollable {
    scroll-behavior: smooth; }
    .mhp-af-sidebar.sticky-scrollable::-webkit-scrollbar {
      width: 6px; }
    .mhp-af-sidebar.sticky-scrollable::-webkit-scrollbar-track {
      background: #f1f1f1;
      border-radius: 3px; }
    .mhp-af-sidebar.sticky-scrollable::-webkit-scrollbar-thumb {
      background: #c1c1c1;
      border-radius: 3px; }
      .mhp-af-sidebar.sticky-scrollable::-webkit-scrollbar-thumb:hover {
        background: #a8a8a8; }

.mhp-af-block + .mhp-af-block {
  margin-top: 1.5rem; }

.mhp-af-block h4 {
  margin: 0 0 0.5rem;
  font-size: 1.1rem; }

.mhp-af-list {
  list-style: none;
  margin: 0;
  padding: 0; }

.mhp-af-list li {
  margin: 0.4rem 0; }
  .mhp-af-list li label {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    cursor: pointer;
    line-height: 1.4; }
    .mhp-af-list li label input[type="checkbox"] {
      margin: 0;
      flex-shrink: 0;
      margin-top: 0.1rem; }

.mhp-af-link {
  margin-left: 0.2rem;
  font-size: 0.8rem;
  text-decoration: none;
  display: none !important; }

.mhp-af-price-inputs {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin-top: 0.8rem; }
  .mhp-af-price-inputs input#mhp_price_min, .mhp-af-price-inputs input#mhp_price_max {
    padding: 2px;
    font-size: 12px; }
  .mhp-af-price-inputs button#mhp_price_apply {
    padding: 5px 12px;
    font-size: 14px;
    background-color: #264cad;
    color: white; }

.mhp-af-products {
  flex: 1; }

.mhp-af-loading {
  opacity: 0.4;
  pointer-events: none;
  position: relative; }

.mhp-af-loading:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.2666666667) url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI2NjYyIgZD0iTTIwIDBBMjAgMjAgMCAxIDAgMjAgNDBBMjAgMjAgMCAwIDAgMjAgMHptMCA2YTUgNSAwIDEgMCAwIDEwIDUgNSAwIDAgMCAwLTEweiIvPjwvc3ZnPg==") center/40px no-repeat;
  border-radius: 6px; }

/* Override WooCommerce pseudo-elements that take up space */
.woocommerce .products ul::after,
.woocommerce .products ul::before,
.woocommerce ul.products::after,
.woocommerce ul.products::before,
.woocommerce-page ul.products::after,
.woocommerce-page ul.products::before {
  content: none !important;
  display: none !important; }

/* Flexible Product Grid - Responsive between 640px and 1200px */
/* Account for sidebar width (~260px) + margins above 640px */
.category-shortcode-container .elementor-shortcode #mhp-af-products .products {
  width: 100% !important;
  grid-template-columns: minmax(280px, 400px) !important;
  gap: 20px !important;
  justify-content: flex-start !important;
  margin: 0 !important; }

.category-shortcode-container .elementor-shortcode #mhp-af-products .products .product {
  width: 100% !important;
  margin: 0 0 20px 0 !important;
  flex-grow: 0 !important;
  flex-shrink: 0 !important; }

/* Remove the nth-child margin override since we're using CSS Grid gap */
.category-shortcode-container .elementor-shortcode #mhp-af-products .products .product:nth-child(3n) {
  margin-right: 0 !important; }

/* Responsive grid adjustments based on available space after sidebar */
/* 1 product per row until 890px */
@media (min-width: 641px) and (max-width: 889px) {
  .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
    grid-template-columns: minmax(280px, 400px) !important;
    justify-content: start; } }
/* 2 products per row from 890px to 1140px */
@media (min-width: 890px) and (max-width: 1139px) {
  .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
    grid-template-columns: repeat(2, minmax(280px, 350px)) !important;
    justify-content: start; } }
/* 3 products per row from 1140px and up */
@media (min-width: 1140px) {
  .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
    grid-template-columns: repeat(3, minmax(280px, 320px)) !important;
    justify-content: start; } }
/* Related Products Grid Layout - Apply same styling as main product grid */
section.related.products ul.products.elementor-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 20px !important;
  justify-content: flex-start !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important; }
  section.related.products ul.products.elementor-grid.columns-4 {
    grid-template-columns: repeat(4, 1fr) !important; }
    @media (max-width: 1200px) {
      section.related.products ul.products.elementor-grid.columns-4 {
        grid-template-columns: repeat(3, 1fr) !important; } }
    @media (max-width: 900px) {
      section.related.products ul.products.elementor-grid.columns-4 {
        grid-template-columns: repeat(2, 1fr) !important; } }
    @media (max-width: 600px) {
      section.related.products ul.products.elementor-grid.columns-4 {
        grid-template-columns: 1fr !important; } }
  section.related.products ul.products.elementor-grid li.product {
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    position: relative !important;
    min-height: 400px; }
    section.related.products ul.products.elementor-grid li.product .woocommerce-LoopProduct-link {
      display: flex !important;
      flex-direction: column !important;
      height: 100% !important;
      text-decoration: none !important; }
    section.related.products ul.products.elementor-grid li.product img {
      width: 100% !important;
      height: auto !important;
      object-fit: cover !important;
      display: block !important;
      min-height: 200px !important;
      position: relative !important;
      background: repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255, 255, 255, 0.1) 10px, rgba(255, 255, 255, 0.1) 20px), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
      background-size: 100% 100%, 40%, 100% 100%;
      background-repeat: repeat, no-repeat, no-repeat;
      background-position: 0 0, center center, 0 0;
      border: 1px solid #dee2e6; }
      section.related.products ul.products.elementor-grid li.product img.image-error, section.related.products ul.products.elementor-grid li.product img.coming-soon, section.related.products ul.products.elementor-grid li.product img.out-of-stock {
        font-size: 0;
        color: transparent; }
        section.related.products ul.products.elementor-grid li.product img.image-error::before, section.related.products ul.products.elementor-grid li.product img.image-error::after, section.related.products ul.products.elementor-grid li.product img.coming-soon::before, section.related.products ul.products.elementor-grid li.product img.coming-soon::after, section.related.products ul.products.elementor-grid li.product img.out-of-stock::before, section.related.products ul.products.elementor-grid li.product img.out-of-stock::after {
          font-size: initial;
          color: initial; }
      section.related.products ul.products.elementor-grid li.product img.image-error {
        background: url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), radial-gradient(circle at 30% 70%, rgba(38, 76, 173, 0.1) 20%, transparent 20%), radial-gradient(circle at 70% 30%, rgba(1, 161, 126, 0.1) 15%, transparent 15%), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        background-size: 25%, 100% 100%, 100% 100%, 100% 100%;
        background-repeat: no-repeat;
        background-position: top 10px right 10px, 0 0, 0 0, 0 0;
        border: 2px dashed #6c757d;
        min-height: 250px; }
        section.related.products ul.products.elementor-grid li.product img.image-error::before {
          content: "BOX";
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          font-size: 48px;
          opacity: 0.3;
          margin-top: -20px; }
        section.related.products ul.products.elementor-grid li.product img.image-error::after {
          content: "Product image\Aunavailable";
          position: absolute;
          bottom: 15px;
          left: 50%;
          transform: translateX(-50%);
          background: #264cad;
          color: white;
          padding: 8px 12px;
          font-size: 11px;
          border-radius: 4px;
          font-family: "Poppins", Sans-serif;
          font-weight: 600;
          text-align: center;
          line-height: 1.2;
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); }
      section.related.products ul.products.elementor-grid li.product img.coming-soon {
        background: linear-gradient(45deg, transparent 40%, #01a17e 40%, #01a17e 60%, transparent 60%), linear-gradient(-45deg, transparent 40%, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.1) 60%, transparent 60%), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f1f3f4 0%, #e8eaed 100%);
        background-size: 100% 4px, 100% 4px, 35%, 100% 100%;
        background-repeat: no-repeat;
        background-position: top, bottom, center center, 0 0; }
        section.related.products ul.products.elementor-grid li.product img.coming-soon::after {
          content: "Coming Soon";
          position: absolute;
          bottom: 15px;
          left: 50%;
          transform: translateX(-50%);
          background: #01a17e;
          color: white;
          padding: 6px 16px;
          font-size: 12px;
          border-radius: 15px;
          font-family: "Poppins", Sans-serif;
          font-weight: 700;
          text-transform: uppercase;
          letter-spacing: 0.5px; }
      section.related.products ul.products.elementor-grid li.product img.out-of-stock {
        background: repeating-linear-gradient(45deg, transparent, transparent 8px, rgba(220, 53, 69, 0.1) 8px, rgba(220, 53, 69, 0.1) 16px), repeating-linear-gradient(-45deg, transparent, transparent 8px, rgba(220, 53, 69, 0.1) 8px, rgba(220, 53, 69, 0.1) 16px), url("https://strouds.co.nz/wp-content/uploads/2025/04/Strouds-logo-new-e1745295114636.png"), linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
        background-size: 100% 100%, 100% 100%, 30%, 100% 100%;
        background-repeat: repeat, repeat, no-repeat, no-repeat;
        background-position: 0 0, 0 0, center center, 0 0;
        opacity: 0.7;
        filter: grayscale(50%); }
        section.related.products ul.products.elementor-grid li.product img.out-of-stock::after {
          content: "Out of Stock";
          position: absolute;
          bottom: 15px;
          left: 50%;
          transform: translateX(-50%);
          background: #dc3545;
          color: white;
          padding: 6px 16px;
          font-size: 12px;
          border-radius: 4px;
          font-family: "Poppins", Sans-serif;
          font-weight: 700;
          text-transform: uppercase;
          letter-spacing: 0.5px; }
    section.related.products ul.products.elementor-grid li.product h3, section.related.products ul.products.elementor-grid li.product h3.woocommerce-loop-product__title {
      color: black !important;
      font-size: 13px !important;
      font-weight: 700 !important;
      height: 45px !important;
      margin: 5px !important;
      padding: 5px !important;
      display: flex !important;
      align-items: center !important;
      background: rgba(255, 255, 255, 0.9) !important;
      box-sizing: border-box !important;
      overflow: hidden !important;
      line-height: 1.2 !important;
      text-decoration: none !important;
      font-family: "Poppins", Sans-serif !important; }
    section.related.products ul.products.elementor-grid li.product .price, section.related.products ul.products.elementor-grid li.product span.price {
      color: black !important;
      font-size: 16px !important;
      font-weight: 800 !important;
      height: 24px !important;
      margin: 0 5px !important;
      padding: 0 5px !important;
      display: flex !important;
      align-items: center !important;
      background: rgba(255, 255, 255, 0.95) !important;
      box-sizing: border-box !important;
      font-family: "Poppins", Sans-serif !important; }
    section.related.products ul.products.elementor-grid li.product .price, section.related.products ul.products.elementor-grid li.product span.price {
      margin-top: auto !important; }
    section.related.products ul.products.elementor-grid li.product .add_to_cart_button,
    section.related.products ul.products.elementor-grid li.product a.add_to_cart_button,
    section.related.products ul.products.elementor-grid li.product .button.product_type_simple,
    section.related.products ul.products.elementor-grid li.product .button.product_type_variable {
      background-color: #264cad !important;
      font-family: "Poppins", Sans-serif !important;
      color: white !important;
      text-align: center !important;
      height: 36px !important;
      margin: 0 5px 5px 5px !important;
      padding: 0 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      text-decoration: none !important;
      box-sizing: border-box !important;
      border: none !important;
      font-size: 14px !important;
      font-weight: 600 !important; }
      section.related.products ul.products.elementor-grid li.product .add_to_cart_button:hover,
      section.related.products ul.products.elementor-grid li.product a.add_to_cart_button:hover,
      section.related.products ul.products.elementor-grid li.product .button.product_type_simple:hover,
      section.related.products ul.products.elementor-grid li.product .button.product_type_variable:hover {
        opacity: 0.9 !important; }
    section.related.products ul.products.elementor-grid li.product .onsale {
      display: flex !important;
      position: absolute !important;
      top: -4px !important;
      right: -4px !important;
      background: #264cad !important;
      border-radius: 50% !important;
      font-size: 11px !important;
      min-width: 58px !important;
      min-height: 58px !important;
      z-index: 15;
      color: white;
      padding: 8px 12px;
      font-weight: 700;
      font-family: "Poppins", Sans-serif;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      line-height: 1;
      align-items: center;
      justify-content: center;
      box-shadow: 0 2px 6px rgba(38, 76, 173, 0.3);
      text-decoration: none;
      transition: transform 0.2s ease, box-shadow 0.2s ease; }
      section.related.products ul.products.elementor-grid li.product .onsale:hover {
        transform: scale(1.05);
        box-shadow: 0 3px 8px rgba(38, 76, 173, 0.4); }

.onsale,
span.onsale {
  display: flex !important;
  position: absolute !important;
  top: -4px !important;
  right: -4px !important;
  background: #264cad !important;
  border-radius: 50% !important;
  font-size: 11px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  z-index: 15;
  color: white;
  padding: 8px 12px;
  font-weight: 700;
  font-family: "Poppins", Sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 6px rgba(38, 76, 173, 0.3);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease; }
  .onsale:hover,
  span.onsale:hover {
    transform: scale(1.05);
    box-shadow: 0 3px 8px rgba(38, 76, 173, 0.4); }

/* ================================================================== */
/* Responsive Product Layout */
/* ================================================================== */
/* ================================================================== */
/* Mobile Product Filter Styles - Up to 640px */
/* ================================================================== */
/* Mobile Filter Toggle Button */
.mhp-af-mobile-toggle {
  display: none;
  background: #264cad;
  color: white;
  border: none;
  padding: 12px 20px;
  border-radius: 6px;
  font-family: "Poppins", Sans-serif;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 15px;
  align-items: center;
  gap: 8px;
  transition: all 0.2s ease; }
  .mhp-af-mobile-toggle:hover {
    background: #1d3a83;
    transform: translateY(-1px); }
  .mhp-af-mobile-toggle-icon {
    font-size: 16px; }

/* Mobile Filter Overlay */
.mhp-af-mobile-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  backdrop-filter: blur(2px); }

/* Mobile Close Button */
.mhp-af-mobile-close {
  display: none;
  position: absolute;
  top: 34px;
  right: 10px;
  background: #264cad;
  color: white;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 16px;
  cursor: pointer;
  z-index: 10001;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease; }
  .mhp-af-mobile-close:hover {
    background: #1d3a83;
    transform: scale(1.1); }

/* Mobile Responsive Styles */
@media (max-width: 640px) {
  /* Prevent body scroll when mobile filter is open */
  body.mhp-af-mobile-open {
    overflow: hidden !important; }

  /* Show mobile toggle button */
  .mhp-af-mobile-toggle {
    display: flex; }

  /* Hide sidebar by default on mobile */
  .mhp-af-sidebar {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    z-index: 9999;
    overflow-y: auto;
    padding: 50px 20px 20px;
    box-sizing: border-box;
    border: none;
    border-radius: 0; }
    .mhp-af-sidebar.active {
      display: block; }
    .mhp-af-sidebar .mhp-af-mobile-close {
      display: flex; }

  /* Adjust main layout for mobile */
  .mhp-af-wrapper {
    flex-direction: column;
    width: 100% !important; }

  /* Full width products on mobile */
  .mhp-af-products {
    width: 100%;
    margin-left: 0; }

  /* Override fixed width container on mobile */
  .category-shortcode-container .elementor-shortcode #mhp-af-products {
    width: 100% !important;
    margin-left: 0 !important; }

  /* Adjust product grid for mobile */
  .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 15px !important;
    margin: 0 !important; }
    .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product {
      width: 100% !important;
      flex-basis: 100% !important;
      margin-right: 0 !important;
      margin-bottom: 15px !important; }
      .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product:nth-child(3n) {
        margin-right: 0 !important; }

  /* Adjust filter blocks for mobile */
  .mhp-af-block {
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 2px solid #e0e0e0; }
    .mhp-af-block:last-child {
      border-bottom: none; }
    .mhp-af-block h4 {
      font-size: 18px;
      margin-bottom: 15px;
      color: #264cad;
      border-bottom: 2px solid #264cad;
      padding-bottom: 8px; }

  /* Improve checkbox styling on mobile - more compact */
  .mhp-af-list li {
    margin: 4px 0;
    padding: 2px 0;
    border-bottom: none; }
    .mhp-af-list li:last-child {
      border-bottom: none; }
    .mhp-af-list li label {
      font-size: 14px;
      padding: 2px 0;
      gap: 10px; }
      .mhp-af-list li label input[type="checkbox"] {
        transform: scale(1.2);
        margin-top: 0; }

  /* Keep price inputs side by side on mobile */
  .mhp-af-price-inputs {
    flex-direction: row;
    gap: 8px;
    align-items: center;
    margin-top: 0.8rem; }
    .mhp-af-price-inputs input {
      padding: 8px !important;
      font-size: 14px !important;
      border: 1px solid #ddd;
      border-radius: 4px;
      flex: 1; }
    .mhp-af-price-inputs span {
      font-size: 14px;
      color: #666; }
    .mhp-af-price-inputs button {
      padding: 8px 12px !important;
      font-size: 14px !important;
      margin-top: 0;
      white-space: nowrap; }

  /* Ensure overlay is shown when sidebar is active */
  .mhp-af-sidebar.active ~ .mhp-af-mobile-overlay,
  .mhp-af-mobile-overlay.active {
    display: block; }

  /* Improve mobile product layout */
  .category-shortcode-container .elementor-shortcode {
    padding: 0 10px; }

  /* Adjust pagination for mobile */
  .woocommerce-pagination {
    text-align: center;
    margin-top: 20px; }
    .woocommerce-pagination .page-numbers {
      display: inline-block;
      padding: 8px 12px;
      margin: 2px;
      background: #f8f9fa;
      border: 1px solid #dee2e6;
      border-radius: 4px;
      text-decoration: none;
      font-size: 14px; }
      .woocommerce-pagination .page-numbers.current {
        background: #264cad;
        color: white;
        border-color: #264cad; } }
/* Single column layout for very small screens */
@media (max-width: 500px) {
  /* Remove the 10px padding from the main container */
  .category-shortcode-container .elementor-shortcode {
    padding: 0 !important; }

  /* Add 5px margin to the products grid container */
  .category-shortcode-container .elementor-shortcode #mhp-af-products .products {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 0 5px !important; }
    .category-shortcode-container .elementor-shortcode #mhp-af-products .products .product {
      width: 100% !important;
      margin: 0 0 20px 0 !important; } }

/*# sourceMappingURL=mhp-utilities-custom.css.map */
