/**
* Theme Name: Ziggy Child - Verow Pro
* Description: Child theme for Verow Store. Performance + SEO + WooCommerce optimized. Parent Ziggy by ThemeLexus.
* Author: Verow
* Template: ziggy
 * Version: 1.5.9
* Text Domain: ziggy-child
* Requires PHP: 7.4
*/

/* ============ VEROW PRO: lightweight store layer (<10KB) ============ */

:root{
  --verow-primary:#FF782C;
  --verow-dark:#1b1b1b;
  --verow-muted:#6b7280;
  --verow-border:#ececec;
  --verow-radius:14px;
}

/* Prevent layout shift: reserve ratio for product + content images.
   v1.5.2: width/height constraints FIRST (Woo core safety), ratio second. */
.woocommerce ul.products li.product img,
.single-product .woocommerce-product-gallery img,
.woocommerce div.product img,
.elementor-widget-woocommerce-products img{max-width:100%;height:auto}
.woocommerce ul.products li.product a img,
.single-product .woocommerce-product-gallery__image img{aspect-ratio:auto}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:cover;border-radius:var(--verow-radius)}

/* Product cards: professional hover, no heavy shadow */
.woocommerce ul.products li.product{
  border:1px solid var(--verow-border);
  border-radius:var(--verow-radius);
  padding:12px;
  background:#fff;
  transition:transform .25s ease,box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
}
.woocommerce ul.products li.product .button{
  border-radius:10px;
  width:100%;
  text-align:center;
}

/* Sticky ATC mobile: smooth, not janky */
.ziggy-sticky-add-to-cart{
  transform:translateY(110%);
  transition:transform .3s ease;
}
.ziggy-sticky-add-to-cart.is-visible{transform:translateY(0)}

/* Trust badges (shortcode) */
.verow-trust{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin:18px 0;
}
.verow-trust-item{
  display:flex;gap:10px;align-items:center;
  border:1px solid var(--verow-border);
  border-radius:12px;padding:10px 12px;background:#fff;
}
.verow-trust-icon{font-size:22px;line-height:1}
.verow-trust-item strong{display:block;font-size:13px;color:var(--verow-dark)}
.verow-trust-item small{color:var(--verow-muted);font-size:12px}
@media(max-width:768px){.verow-trust{grid-template-columns:repeat(2,1fr)}}

/* Buttons: faster perceived performance */
.button,.woocommerce .button,.elementor-button{
  transition:transform .15s ease,background .15s ease;
}
.button:active{transform:scale(.98)}

/* Back to top */
.verow-to-top{
  position:fixed;bottom:18px;right:18px;z-index:999;
  width:42px;height:42px;border-radius:50%;
  border:1px solid var(--verow-border);background:#fff;
  opacity:0;pointer-events:none;transition:opacity .25s ease;
}
.verow-to-top.show{opacity:1;pointer-events:auto}

/* Hide empty breadcrumb noise on homepage (SEO) */
.home .ziggy-breadcrumb{display:none}

/* Reduce CLS for Elementor hero */
.elementor-section-height-full{min-height:70vh}

/* Wishlist / Quickview: keep light */
.woosw-btn,.woosq-btn{border-radius:10px}

/* FOUC guard for theme carousels (v1.5.3): render a clean static row until
    slick initializes, instead of grey stacked placeholders that vanish. */
.ziggy-theme-carousel ul:not(.slick-initialized){display:flex;gap:20px;overflow:hidden;margin:0;padding:0}
.ziggy-theme-carousel ul:not(.slick-initialized) > li{flex:0 0 calc(25% - 15px);max-width:calc(25% - 15px);list-style:none}
@media(max-width:1024px){.ziggy-theme-carousel ul:not(.slick-initialized) > li{flex-basis:calc(33.333% - 14px);max-width:calc(33.333% - 14px)}}
@media(max-width:767px){.ziggy-theme-carousel ul:not(.slick-initialized) > li{flex-basis:calc(50% - 10px);max-width:calc(50% - 10px)}}
.slick-slider:not(.slick-initialized){overflow:hidden}

/* ============ VEROW HERO FIX v1.5.7: padding / alignment / transparent PNG ============ */
/* Hero section 52db340: vertically center columns, balanced padding, transparent image */
.elementor-122 .elementor-element.elementor-element-52db340 > .elementor-container{
  align-items:center;
}
.elementor-122 .elementor-element.elementor-element-52db340 .elementor-column{
  display:flex;flex-direction:column;justify-content:center;
}
/* Hero image: must be transparent PNG (id 6540). Force no background, keep within column */
.elementor-122 .elementor-element.elementor-element-204e15f img,
.verow-hero-img img{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  border:none !important;
  max-width:100%;
  height:auto;
  object-fit:contain;
  display:block;
  margin:0 auto;
}
/* Remove any checkerboard leftover: Elementor sometimes adds placeholder bg for lazy */
.elementor-122 .elementor-element.elementor-element-204e15f .elementor-widget-container,
.elementor-122 .elementor-element.elementor-element-a1949e4 .elementor-widget-wrap{
  background:transparent !important;
}
/* Ensure hero has correct spacing - no double gap from old margin-bottom 50 */
.elementor-122 .elementor-element.elementor-element-52db340{
  margin-bottom:0 !important;
  overflow:visible;
}
/* Intermediate Best Selling section 058bbbd: clean white card, no shape divider overflow */
.elementor-122 .elementor-element.elementor-element-058bbbd{
  margin-top:0 !important;
  padding-top:40px !important;
  padding-bottom:40px !important;
  overflow:visible;
}
.elementor-122 .elementor-element.elementor-element-058bbbd .elementor-shape{
  display:none !important;
}
/* Fix shape dividers on pinkish sections: hide double divider causing messy brush line */
.elementor-122 .elementor-element.elementor-element-374ef60 .elementor-shape-top,
.elementor-122 .elementor-element.elementor-element-374ef60 .elementor-shape-bottom{
  overflow:hidden;
}
.elementor-122 .elementor-element.elementor-element-374ef60 .elementor-shape svg{
  height:40px;
}
/* Mobile: hero stacks, reduce heading size already handled, ensure image scales */
@media(max-width:767px){
  .elementor-122 .elementor-element.elementor-element-52db340{
    padding:30px 15px 30px 15px !important;
  }
  .elementor-122 .elementor-element.elementor-element-52db340 > .elementor-container{
    flex-direction:column;
  }
  .elementor-122 .elementor-element.elementor-element-204e15f img{
    max-width:85%;
  }
}
