/* ==========================================================
   VERDOPACK – WOOCOMMERCE STYLES (CLEAN + NO CONFLICTS)
   - One image sizing system (.product-image)
   - One badge system (top-right in the photo)
   - One product title system (2-line clamp)
   - Flex cards => equal height + aligned buttons
   ========================================================== */




/* ----------------------------------------------------------
   1) PRODUCT GRID (Woo default loop)
   ---------------------------------------------------------- */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 1.5rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: calc(25% - 1.5rem) !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  border: none !important;
  background: transparent !important;

  /* make each product column stretch equally */
  display: flex;
  flex-direction: column;
  height: 100%;
}


/* ----------------------------------------------------------
   2) PRODUCT CARD (your custom wrapper)
   - flex column ensures same height
   ---------------------------------------------------------- */
.product-card {
  position: relative;
  padding: 1rem;
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  background: #fff;
  height: 100%;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);

  /* equal-height layout */
  display: flex;
  flex-direction: column;
  flex: 1;
}

.product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  border-color: var(--verdo-light);
}


/* ----------------------------------------------------------
   3) PRODUCT IMAGE (ONE unified system)
   - fixed height => all images same size
   - contain => no cropping for packaging images
   - position:relative => badge can sit inside the photo
   ---------------------------------------------------------- */
.product-image {
  height: 180px;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8f8f8;
  position: relative; /* badge anchor */
}


/* FORCE product images to fill the fixed container */
.product-card .product-image img,
.product-card .product-image img.img-fluid {
  width: 100% !important;
  height: 100% !important;      /* override height:auto */
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
}



.product-card:hover .product-image img {
  transform: scale(1.05);
}

/* Placeholder uses same size as product-image for consistency */
.image-placeholder {
  height: 250px;
  width: 100%;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8f9fa;
  color: #adb5bd;
}


/* ----------------------------------------------------------
   4) BADGES (inside the photo, top-right)
   IMPORTANT:
   - Put badge markup inside .product-image
   - Example:
     <div class="product-image">
       <div class="product-badges">
         <span class="product-badge angebot-badge">Angebot</span>
       </div>
       <img ...>
     </div>
   ---------------------------------------------------------- */

/* Container for badges */
.product-badges {
  position: absolute;
  top: 12px;
  right: 12px;  /* top-right */
  left: auto;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

/* Base badge look */
.product-badge {
  padding: 0.35rem 0.75rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

/* Angebot badge (red) */
.angebot-badge {
  background: linear-gradient(135deg, #dc3545, #ff4d6d);
  box-shadow: 0 8px 20px rgba(220, 53, 69, 0.35);
}

/* Optional badges you might use elsewhere */
.sale-badge {
  background: linear-gradient(135deg, #ff5722, #ff9800);
}

.bestseller-badge {
  background: linear-gradient(135deg, var(--verdo-dark), var(--verdo-light));
}

.outofstock-badge {
  background: linear-gradient(135deg, #757575, #9e9e9e);
}

/* Subtle hover polish */
.product-card:hover .product-badge {
  transform: scale(1.05);
}


/* ----------------------------------------------------------
   5) PRODUCT TITLE (2-line clamp)
   - keeps all cards same size even with long titles
   ---------------------------------------------------------- */
.product-title {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--verdo-neutral);
  margin-bottom: 0.25rem;
  line-height: 1.3;

  /* 2-line clamp */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  
}

.product-title a:hover {
  color: var(--verdo-dark) !important;
}


/* ----------------------------------------------------------
   6) PRODUCT DESCRIPTION / FEATURES (optional sections)
   ---------------------------------------------------------- */
.product-description {
  font-size: 0.9rem;
  line-height: 1.5;
  color: #666;
  min-height: 40px;
}

.product-features {
  list-style: none;
  padding: 0;
  margin: 0 0 1rem 0;
  color: #6c757d;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.product-features li {
  padding: 0.2rem 0;
  color: #555;
  font-size: 0.9rem;
  display: flex;
  align-items: center;
}

.product-features i {
  margin-right: 0.5rem;
  font-size: 1rem;
}


.product-short-desc {
  font-size: 0.9rem;
  color: #6c757d;
  margin-bottom: 0.5rem;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.5;
  
}


/* ----------------------------------------------------------
   7) PRICE BLOCK (your custom price layout)
   - if you want equal heights even with sale prices, set min-height
   ---------------------------------------------------------- */
.product-price {
  padding: 0.75rem 0;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;

  /* optional: keep price area same height (sale vs non-sale) */
  /* min-height: 4.5rem; */
}

.price-main {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--verdo-dark);
  margin-bottom: 0.25rem;
}

.price-main .woocommerce-Price-amount {
  color: inherit;
  font-weight: inherit;
}

.price-info {
  color: #666;
  font-size: 0.85rem;
}

.vat-info {
  color: #666;
  font-size: 0.8rem;
  font-weight: normal;
}


/* ----------------------------------------------------------
   8) BUTTONS / ACTIONS
   - margin-top:auto pushes button to bottom => aligned buttons
   ---------------------------------------------------------- */
.product-actions {
  margin-top: auto;
}

/* If you don't wrap actions in .product-actions, this helps too */
.product-card .btn {
  margin-top: auto;
}

.btn-product {
  background: linear-gradient(135deg, var(--verdo-dark), var(--verdo-light));
  color: #fff;
  border: none;
  padding: 0.55rem;
  font-size: 0.9rem
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
  width: 100%;
}

.btn-product:hover {
  background: linear-gradient(135deg, var(--verdo-light), var(--verdo-dark));
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(46, 139, 87, 0.3);
  color: #fff;
}

.btn-product:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none !important;
}

.btn-outline-verdo {
  border: 2px solid var(--verdo-dark);
  color: var(--verdo-dark);
  background: transparent;
  padding: 0.75rem;
  font-weight: 600;
  border-radius: 8px;
  transition: all 0.3s ease;
  width: 100%;
}

.btn-outline-verdo:hover {
  background: var(--verdo-dark);
  color: #fff;
}

/* =========================================
   BUTTON STATES – btn-product + btn-hero
   ========================================= */

.btn-product,
.btn-hero,
.btn-product:visited,
.btn-hero:visited,
.btn-product:focus,
.btn-hero:focus,
.btn-product:focus-visible,
.btn-hero:focus-visible,
.btn-product:active,
.btn-hero:active {
  background: linear-gradient(135deg, var(--verdo-dark), var(--verdo-light)) !important;
  color: #fff !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Hover stays special */
.btn-product:hover,
.btn-hero:hover {
  background: linear-gradient(135deg, var(--verdo-light), var(--verdo-dark)) !important;
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(46, 139, 87, 0.3);
  color: #fff !important;
}

/* Remove mobile tap highlight */
.btn-product,
.btn-hero {
  -webkit-tap-highlight-color: transparent;
}



/* ----------------------------------------------------------
   9) STOCK STATUS
   ---------------------------------------------------------- */
.stock {
  font-size: 0.9rem;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 0.5rem;
}

.stock.in-stock {
  background-color: rgba(76, 175, 80, 0.1);
  color: var(--verdo-dark);
}

.stock.out-of-stock {
  background-color: rgba(244, 67, 54, 0.1);
  color: #f44336;
}


/* ----------------------------------------------------------
   10) PAGINATION
   ---------------------------------------------------------- */
.woocommerce-pagination {
  margin-top: 3rem;
  text-align: center;
}

.woocommerce-pagination ul {
  display: inline-flex;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.woocommerce-pagination ul li {
  margin: 0;
}

.woocommerce-pagination .page-numbers {
  padding: 0.5rem 1rem;
  border: 1px solid #ddd;
  border-radius: 6px;
  text-decoration: none;
  color: var(--verdo-dark);
  transition: all 0.3s ease;
}

.woocommerce-pagination .page-numbers:hover {
  background-color: rgba(76, 175, 80, 0.1);
  border-color: var(--verdo-light);
}

.woocommerce-pagination .page-numbers.current {
  background: linear-gradient(135deg, var(--verdo-dark), var(--verdo-light));
  color: #fff;
  border-color: var(--verdo-dark);
}

.woocommerce-pagination .page-numbers.next,
.woocommerce-pagination .page-numbers.prev {
  font-weight: 600;
}


/* ----------------------------------------------------------
   11) RESPONSIVE GRID
   ---------------------------------------------------------- */
@media (max-width: 1200px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: calc(33.333% - 1.5rem) !important;
  }
}

@media (max-width: 768px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: calc(50% - 1.5rem) !important;
  }

  .product-image,
  .image-placeholder {
    height: 160px;
  }
}

@media (max-width: 576px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: 100% !important;
  }

  .product-card {
    padding: 0.75rem;
  }

  .product-title {
    font-size: 1.1rem;
  }

  .price-main {
    font-size: 1.3rem;
  }
}


/* ----------------------------------------------------------
   12) HIDE DEFAULT WOO ELEMENTS YOU REPLACED
   ---------------------------------------------------------- */
.woocommerce .products .star-rating,
.woocommerce .products .woocommerce-loop-product__title {
  display: block ! important;
}



/* ----------------------------------------------------------
   13) GERMAN-SPECIFIC
   ---------------------------------------------------------- */
.woocommerce-Price-currencySymbol {
  margin-left: 0.1rem;
}


/* ==========================================================
   CATEGORY PATH / BREADCRUMB (LEFT)
   ========================================================== */
.category-path nav {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  overflow-x: auto;
  padding: 0.75rem 0;
  gap: 0;
  scrollbar-width: thin;
  scrollbar-color: var(--verdo-light) #f1f1f1;
  justify-content: flex-start;
}

.category-path-item {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.8rem;
  font-size: 0.9rem;
  color: var(--verdo-dark);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  border-radius: 6px;
  transition: all 0.2s ease;
  background: transparent;
  font-weight: 500;
  line-height: 1.2;
}

.category-path-item:hover {
  background-color: rgba(76, 175, 80, 0.08);
  color: var(--verdo-dark);
  transform: translateY(-1px);
}

.category-path-item.active {
  background: linear-gradient(135deg, var(--verdo-dark), var(--verdo-light));
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0 2px 5px rgba(46, 139, 87, 0.2);
}

.category-separator {
  color: #aaa;
  font-size: 1rem;
  font-weight: 300;
  padding: 0 0.3rem;
  flex-shrink: 0;
  user-select: none;
}

.category-path nav::-webkit-scrollbar {
  height: 4px;
}

.category-path nav::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 2px;
}

.category-path nav::-webkit-scrollbar-thumb {
  background: var(--verdo-light);
  border-radius: 2px;
}

.category-path nav::-webkit-scrollbar-thumb:hover {
  background: var(--verdo-dark);
}

@media (max-width: 768px) {
  .category-path nav {
    padding: 0.5rem 0;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .category-path-item {
    padding: 0.3rem 0.6rem;
    font-size: 0.85rem;
  }

  .category-separator {
    font-size: 0.9rem;
    padding: 0 0.2rem;
  }

  .category-path nav::-webkit-scrollbar {
    display: none;
  }
}


/* ==========================================================
   SINGLE PRODUCT GALLERY – 
   ========================================================== */

/* Keep layout simple, don’t force flex on slides */
.single-product .woocommerce-product-gallery {
  max-width: 100%;
}

/* Style the viewport (the visible area) */
.single-product .woocommerce-product-gallery .flex-viewport {
  background: #f8f8f8;
  border-radius: 12px;
  overflow: hidden;
}



/* Image behavior */
.single-product .woocommerce-product-gallery__image img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain;
  display: block;
}

/* ================================
   THUMBNAILS – MODERN STRIP (BOTTOM)
   ================================ */

.single-product .woocommerce-product-gallery .flex-control-thumbs{
  display: flex !important;
  gap: 4px;
  margin: 6px 0 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li{
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Inactive thumbs */
.single-product .woocommerce-product-gallery .flex-control-thumbs li img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  padding: 6px;
  box-sizing: border-box;
  
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

/* Hover */
.single-product .woocommerce-product-gallery .flex-control-thumbs li img:hover{
  border-color: var(--verdo-dark);
  box-shadow: 0 4px 14px rgba(0,0,0,.08);
}

/* Active */
.single-product .woocommerce-product-gallery .flex-control-thumbs li.flex-active img{
  opacity: 1 !important;
  border: 2px solid var(--verdo-dark) !important;
}




/* =========================================
   SINGLE PRODUCT – FIXED GALLERY FRAME (SAFE)
   ========================================= */

/* Fixed viewport height (frame stays same) */
.single-product .woocommerce-product-gallery .flex-viewport{
  height: 420px !important;         /* change size here */
  background: #f8f8f8;
  border-radius: 12px;
  overflow: hidden;
}

/* Center the image inside each slide WITHOUT touching the slide container */
.single-product .woocommerce-product-gallery__image > a{
  height: 420px;                    /* must match viewport */
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Make image fit inside frame */
.single-product .woocommerce-product-gallery__image img{
  max-height: 100%;
  max-width: 100%;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
  display: block;
}

/* Mobile */
@media (max-width: 768px){
  .single-product .woocommerce-product-gallery .flex-viewport{ height: 360px !important; }
  .single-product .woocommerce-product-gallery__image > a{ height: 360px; }
}




/* ==========================================================
   B2B NOTE – AFTER PRICE
   ========================================================== */
.verdopack-b2b-note {
  margin-top: 4px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.3;
  color: #6c757d;
}


/* ==========================================================
   PRICE SIZE – GLOBAL (SHOP + PRODUCT)
   NOTE: If you see odd price sizing, these two rules can conflict:
         .woocommerce ul.products .price  vs .woocommerce .price
   Keep them only if you really need them.
   ========================================================== */
.woocommerce-Price-amount.amount {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.3;
}

.woocommerce ul.products .price {
  font-size: 1.5rem;
}

.single-product .woocommerce-Price-amount.amount {
  font-size: 1.7rem;
}

/* variable product "Ab" text – very broad selector */
.woocommerce .price {
  font-weight: 500;
  font-size: 0.9rem;
}
/* FINAL OVERRIDE: force equal product image sizing (overrides Bootstrap img-fluid) */
.product-card .product-image img,
.product-card .product-image img.img-fluid {
  width: 100% !important;
  height: 100% !important;     /* overrides img-fluid height:auto */
  object-fit: contain !important;
  display: block !important;
}
/* Shop/Category: make images fill the box like homepage (uniform cards) */
.woocommerce .product-card .product-image img,
.woocommerce-page .product-card .product-image img {
  width: 100% !important;
  height: 100% !important;      /* override Bootstrap img-fluid height:auto */
  object-fit: cover !important; /* uniform thumbnails */
  object-position: center !important;
  display: block !important;
}


/* Angebot page uses .offers-thumb instead of .product-image — match sizing */
.offers-card .offers-thumb {
  height: 190px;            /* same as your product-image */
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f8f8f8;
  position: relative;
}

.offers-card .offers-thumb img,
.offers-card .offers-thumb img.img-fluid {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;      /* or contain if you prefer */
  object-position: center !important;
  display: block !important;
}

/* Make Angebot cards padding match your smaller cards */
.offers-card.product-card {
  padding: 0.75rem;         /* same value you used */
}
@media (max-width: 576px) {
  .product-image {
    height: 160px;
  }

  .angebot-price {
    font-size: 1.8rem;
  }

  .btn-product {
    padding: 0.5rem;
    font-size: 0.85rem;
  }
}
/* === SALE PRICE FIX: remove double/gray line === */

/* Hide the screen reader "Sale price" text */
.price .screen-reader-text { 
  display: none !important; 
}

/* Old price container: do NOT add any strike here */
.price del{
  color:#999;
  font-size:0.9rem;
  font-weight:500;
  margin-right:.4rem;
  text-decoration: none !important;      /* IMPORTANT */
}

/* Put the strike ONLY on the amount */
.price del .woocommerce-Price-amount{
  text-decoration: line-through !important;
  text-decoration-thickness: 1px;
  text-decoration-color: #999;
}

/* New price */
.price ins{
  background:none !important;
  text-decoration:none !important;
  font-size:1.4rem;
  font-weight:800;
  color:#dc3545;
}

/* Sometimes themes add extra line via pseudo elements */
.price del::before,
.price del::after{
  content:none !important;
}

/* Mobile */
@media (max-width:576px){
  .price del{ font-size:.85rem; }
  .price ins{ font-size:1.25rem; }
}

/* =========================
   WooCommerce pages: compact header
   Products, Cart, Checkout
   ========================= */

body.woocommerce .verdopack-logo{
  height: 75px !important;   /* try 50–56px */
}

/* Adjust navbar height */
body.woocommerce .navbar{
  min-height: 72px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

/* =========================
   WooCommerce pages: smaller logo
   Cart / Checkout / Account
   ========================= */

body.woocommerce-cart .verdopack-logo,
body.woocommerce-checkout .verdopack-logo,
body.woocommerce-account .verdopack-logo{
  height: 75px !important;   /* adjust: 48–56px */
}

/* Adjust navbar height accordingly */
body.woocommerce-cart .navbar,
body.woocommerce-checkout .navbar,
body.woocommerce-account .navbar{
  min-height: 70px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
/* Single product page: force py-5 to behave like py-3 */
body.single-product div.container.py-5{
  padding-top: 0rem !important;     /* py-3 */
  padding-bottom: 0rem !important;  /* py-3 */
}

.woocommerce-cart img,
.page-template-page-favoritenliste img {
  border-radius: 10px;
}

/* Required field highlight */
.wpcf7 .field-error {
  border-color: #dc3545 !important;
  background-color: #fff5f5;
}

.wpcf7 .field-error:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* ==========================================================
   RELATED PRODUCTS – COMPACT & CLEAN (BUTTON KEPT)
   ========================================================== */
.astra-shop-thumbnail-wrap img{
  max-height: 200px; /* try 140–160 */
  object-fit: contain;
}



.astra-shop-thumbnail-wrap {
  position: relative;
  padding: 1rem;
  border: 1px solid #e0e0e0;
  border-radius: 12px;
  background: #fff;
  height: 100%;
  width:100%;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  /* equal-height layout */
  display: flex;
  flex-direction: column;
  flex: 1;
}

.astra-shop-thumbnail-wrap:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  border-color: var(--verdo-light);
}

/* Section spacing */
.related.products {
  margin-top: 1.5rem;
}

/* Grid: closer items */
.related.products ul.products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: .8rem; /* closer */
}

@media (max-width: 991px) {
  .related.products ul.products {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 575px) {
  .related.products ul.products {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Product card */
.related.products li.product {
  background: #f9fafb;
  border-radius: 14px;
  padding: .75rem;
  margin: 0;
  display: flex;
  flex-direction: column;
}

/* Image frame (THIS fixes the ugly image spacing) */
.related.products li.product a img {
  width: 100%;
  height: 150px;                 /* fixed frame */
  object-fit: cover;             /* fill frame nicely */
  border-radius: 10px;
  margin-bottom: .5rem;
  background: #fff;
}

/* Title */
.related.products li.product .woocommerce-loop-product__title {
  font-size: .85rem;
  font-weight: 500;
  line-height: 1.25;
  margin-bottom: .35rem;
  color: var(--verdo-dark);
  text-align: Center;
}


/* Category text (Angebot, To Go Verpackungen) */
.related.products li.product .posted_in,
.related.products li.product .woocommerce-product-details__short-description {
  font-size: .7rem;
  color: #6b7280;
  margin-bottom: .4rem;
}

/* Button – keep it, but tighter */
.related.products li.product .button {
  margin-top: auto;              /* push button to bottom */
  padding: .45rem .6rem;
  font-size: .75rem;
  border-radius: 10px;
}

/* Sale badge aligned */
.related.products li.product .onsale {
  top: 10px;
  left: 10px;
  font-size: .65rem;
  padding: .25rem .4rem;
  border-radius: 999px;
}

/* Remove rating clutter */
.related.products .star-rating {
  display: none;
}

/* Remove clutter */
.related.products .star-rating,
.related.products .button {
  display: none;
}

.related.products li.product:hover {
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  transform: translateY(-2px);
}

/* Tighten product tabs spacing */
.woocommerce-tabs.wc-tabs-wrapper {
  margin-top: .6rem !important;
  padding-top: 0 !important;
}

.woocommerce-tabs ul.tabs {
  margin-bottom: .4rem !important;
}

.woocommerce-tabs .panel {
  padding-top: .4rem !important;
}



/* Magnifier cursor on hover*/
.woocommerce-product-gallery__image a,
.woocommerce-product-gallery__image img {
  cursor: zoom-in !important;
}
.woocommerce-product-gallery__image {
  position: relative;
}
/* Astra Sale badge – hide in RELATED products only */
.related.products .ast-onsale-card,
.related.products .ast-on-card-button.ast-onsale-card {
  display: none !important;
}

.product-text-header {
    font-size:1.5rem;
    font-weight: 500;   
    margin-bottom: 2rem;
    color: #0D8B81;
	}
	
	
/* product page header mobile*/

@media (max-width: 768px) {

.product-text-header {
    width: 80%;
  max-width: 900px;
  font-size: 1rem;
    font-weight: 500;   
    margin-bottom: 2rem;
    color: #0D8B81;
	}
.search-form-mobile{
	margin:0 ! important;
	width: 100% ! important;
	}

}