.single-service .icon-wrapper img {
  width: 60px !important;
  height: 60px !important;
  object-fit: contain !important;
}
.single-offer-product.verticle .promo-img {
  width: 100%;
  height: 680px !important;
  object-fit: cover !important;
}
.single-offer-product .promo-img {
  width: 100%;
  height: 328px !important;
  object-fit: cover !important;
}

.gs-footer-section .footer-row .left-info .social-links a i {
  color: black;
  transition: all 0.3s;
}
.gs-footer-section .footer-row .left-info .social-links a:hover i {
  color: white;
}

#cardNumber,
#securityCode,
#expirationDate {
  height: 60px;
  transition: color 0.25s, background-color 0.25s, border-color 0.25s;
  border: 1px solid #e0e0e0;
  border-radius: 5px;
  background-color: #fff;
  color: #505050;
  font-size: 14px;
  padding: 0px 18px;
}

#cardNumber,
#securityCode,
#expirationDate {
  margin-bottom: 18px;
}

@media screen and (max-width: 767px) {
  .single-offer-product .promo-img {
    height: 200px !important;
  }
  .single-offer-product.verticle .promo-img {
    height: 400px !important;
  }
}


.sidebar-active-color {
  color: #ff4c3b!important;
}

/* ==========================================
   PREMIUM PRODUCT CARD REDESIGN (SCREENSHOT 4 STYLE)
   ========================================== */
.single-product {
  position: relative !important;
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-radius: 24px !important;
  padding: 16px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.01) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.single-product:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 40px rgba(0,181,148,0.06) !important;
  border-color: #00B594 !important;
}

.single-product .img-wrapper {
  background: #f8fafc !important;
  border-radius: 20px !important;
  padding: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 220px !important;
  position: relative !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}

.single-product .img-wrapper .product-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  transition: all 0.3s ease !important;
  background: transparent !important;
}

.single-product:hover .img-wrapper .product-img {
  transform: scale(1.05) !important;
}

/* Wishlist Button */
.single-product .add-to-wishlist-btn {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.04) !important;
  transition: all 0.2s ease !important;
}

.single-product .add-to-wishlist-btn:hover {
  background: #ff4f60 !important;
  border-color: #ff4f60 !important;
}

.single-product .add-to-wishlist-btn:hover svg {
  stroke: #ffffff !important;
}

/* Off Percentage Badge */
.single-product .product-badge {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  background: #ff4f60 !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 10px !important;
  border-radius: 100px !important;
  z-index: 10 !important;
}

/* Options overlays reset */
.single-product .img-wrapper .add-to-cart {
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  transform: none !important;
}

.single-product .img-wrapper .add-to-cart a {
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  border: none !important;
}

.single-product .compare_product,
.single-product .details,
.single-product .compare {
  display: none !important;
}

/* Floating Cart icon in bottom right of image wrapper */
.single-product .img-wrapper .add-to-cart .add_cart_click,
.single-product .img-wrapper .add-to-cart .add_to_cart_button {
  position: absolute !important;
  right: 12px !important;
  bottom: 12px !important;
  z-index: 20 !important;
}

.single-product .add-cart {
  background: #00B594 !important;
  color: #ffffff !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0px !important;
  box-shadow: 0 4px 12px rgba(0, 181, 148, 0.2) !important;
  transition: all 0.2s ease !important;
}

.single-product .add-cart::after {
  content: "\f07a" !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  color: #ffffff !important;
}

.single-product .add-cart:hover {
  background: #00967a !important;
  transform: scale(1.05) !important;
  box-shadow: 0 6px 16px rgba(0, 181, 148, 0.3) !important;
}

/* Content details section */
.single-product .content-wrapper {
  padding: 4px 8px 8px 8px !important;
  text-align: left !important;
  flex-grow: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

.single-product .content-wrapper::before {
  content: "PRODUCT" !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: #8c9ba5 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 6px !important;
  display: block !important;
}

.single-product .product-title {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a2b36 !important;
  line-height: 1.4 !important;
  margin-bottom: 8px !important;
  height: 38px !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

.single-product .price-wrapper {
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
  margin-top: auto !important;
}

.single-product .price-wrapper h6 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1a2b36 !important;
  margin: 0 !important;
}

.single-product .price-wrapper h6 del {
  font-size: 12px !important;
  color: #8c9ba5 !important;
  font-weight: 500 !important;
}

.single-product .ratings-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.single-product .ratings-wrapper .rating-title {
  font-size: 12px !important;
  color: #8c9ba5 !important;
  font-weight: 600 !important;
}

/* ==========================================
   PREMIUM CATEGORIES SIDEBAR REDESIGN
   ========================================== */
#woocommerce_product_categories-4.widget {
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-radius: 20px !important;
  padding: 24px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.01) !important;
  margin-bottom: 24px !important;
}

#woocommerce_product_categories-4 .widget-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1a2b36 !important;
  margin-bottom: 16px !important;
  border-bottom: 1px solid #eef2f6 !important;
  padding-bottom: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.product-categories {
  padding-left: 0 !important;
  list-style: none !important;
  margin-bottom: 0 !important;
}

.product-categories .cat-item {
  position: relative !important;
  margin-bottom: 6px !important;
}

.product-categories .cat-item a {
  color: #556870 !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  padding: 10px 16px !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.product-categories .cat-item a:hover {
  background: #f8fafc !important;
  color: #00B594 !important;
}

.product-categories .cat-item a:hover::before {
  color: #00B594 !important;
}

/* Icons mapping based on child position for high-end aesthetic matching the mockup */
.product-categories > .cat-item > a::before {
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  margin-right: 10px !important;
  color: #8c9ba5 !important;
  font-size: 14px !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
  width: 16px !important;
  text-align: center !important;
}

.product-categories > .cat-item:nth-child(5n+1) > a::before { content: "\f10b" !important; } /* Mobile */
.product-categories > .cat-item:nth-child(5n+2) > a::before { content: "\f390" !important; } /* Keyboard/Devices */
.product-categories > .cat-item:nth-child(5n+3) > a::before { content: "\f025" !important; } /* Headphones/Music */
.product-categories > .cat-item:nth-child(5n+4) > a::before { content: "\f0a0" !important; } /* Storage/HDD */
.product-categories > .cat-item:nth-child(5n+5) > a::before { content: "\f109" !important; } /* Laptop */

/* Highlight Active category link matching mockup */
.product-categories .cat-item a.active,
.product-categories .cat-item.current-cat > a {
  background: rgba(0, 181, 148, 0.08) !important;
  color: #00B594 !important;
  font-weight: 600 !important;
}

.product-categories .cat-item a.active::before,
.product-categories .cat-item.current-cat > a::before {
  color: #00B594 !important;
}

/* Child lists (Subcategories indentation) */
.product-categories .children {
  padding-left: 16px !important;
  margin-top: 4px !important;
  margin-bottom: 4px !important;
  list-style: none !important;
  border-left: 1px dashed #eef2f6 !important;
}

.product-categories .children .cat-item a {
  padding: 8px 12px !important;
  font-size: 13px !important;
  border-radius: 8px !important;
}

.product-categories .children .cat-item a::before {
  content: "\f0da" !important; /* Arrow icon for subcategories */
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  margin-right: 8px !important;
  font-size: 11px !important;
  color: #cdd6db !important;
}

/* Collapsible toggle +/- buttons custom styling matching mockup */
.product-categories .has-child {
  position: absolute !important;
  right: 12px !important;
  top: 10px !important;
  width: 24px !important;
  height: 24px !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

.product-categories .has-child::after {
  content: "\f067" !important; /* Plus sign */
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  font-size: 11px !important;
  color: #8c9ba5 !important;
  transition: all 0.2s ease !important;
}

.product-categories .cat-parent.open > .has-child::after {
  content: "\f068" !important; /* Minus sign */
  color: #00B594 !important;
}