/* =========================================================
   ZIPVRN THEME 2.0 — sales + SEO improvements
   ocStore 2.3
   ========================================================= */

/* Category description */
.zipvrn-category-description {
  margin: 0 0 28px;
  color: #333;
  line-height: 1.65;
}
.zipvrn-category-description .category-description-content {
  position: relative;
  max-height: 170px;
  overflow: hidden;
  transition: max-height .45s ease;
}
.zipvrn-category-description .category-description-content:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 70px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
.zipvrn-category-description.is-open .category-description-content {
  max-height: 10000px;
}
.zipvrn-category-description.is-open .category-description-content:after {
  display: none;
}

/* Sales-oriented category/product cards */
.zipvrn-product-card {
  position: relative;
}
.zipvrn-product-card .price {
  margin-top: 8px;
}
.zipvrn-stock {
  display: inline-block;
  margin: 4px 0 8px;
  font-size: 13px;
  line-height: 1.4;
}
.zipvrn-stock--in {
  color: #2f7d32;
}
.zipvrn-stock--out {
  color: #777;
}
.zipvrn-buy-hint {
  margin-top: 6px;
  color: #666;
  font-size: 12px;
}

/* Long text in listings */
.zipvrn-list-description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  line-height: 1.5;
}

/* Product page */
.zipvrn-product-meta {
  margin: 8px 0 14px;
  font-size: 13px;
  color: #666;
}
.zipvrn-product-meta strong {
  color: #333;
}
.zipvrn-fitment {
  margin: 18px 0;
  padding: 15px 18px;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  background: #fafafa;
}
.zipvrn-fitment-title {
  margin: 0 0 8px;
  font-weight: 600;
}
.zipvrn-compatibility {
  margin-top: 16px;
}
.zipvrn-compatibility ul {
  margin-bottom: 0;
}

/* Better FAQ/details blocks */
.zipvrn-faq details {
  margin: 0 0 8px;
  padding: 0;
  border-bottom: 1px solid #eee;
}
.zipvrn-faq summary {
  padding: 12px 4px;
  cursor: pointer;
  font-weight: 600;
}
.zipvrn-faq details > div {
  padding: 0 4px 12px;
  line-height: 1.6;
}

/* Hide legacy tag presentation without affecting the data */
.zipvrn-legacy-tags {
  display: none !important;
}

/* Mobile */
@media (max-width: 767px) {
  .zipvrn-category-description .category-description-content {
    max-height: 185px;
  }
  .zipvrn-product-meta {
    font-size: 12px;
  }
  .zipvrn-fitment {
    padding: 12px;
  }
}
