/* Zi Vital final polish — ratings, home store, cart and checkout spacing */

/* ---------- STORE REVIEWS + PRICE EMPHASIS ---------- */
.zv9-rating{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:18px;
  margin:7px 0 4px;
}
.zv9-rating__stars{
  --zv-rating-pct:0%;
  position:relative;
  display:inline-block;
  color:#d9d1c5;
  font:700 13px/1 "Manrope",sans-serif;
  letter-spacing:2px;
  white-space:nowrap;
}
.zv9-rating__stars::before{
  content:"★★★★★";
  position:absolute;
  inset:0 auto 0 0;
  width:var(--zv-rating-pct);
  overflow:hidden;
  color:#c49335;
  white-space:nowrap;
}
.zv9-rating small{
  color:#93867a;
  font:600 8px/1 "Manrope",sans-serif;
}
.zv-store-product__price{
  font-size:15px!important;
  line-height:1.2!important;
}
.zv-store-category.is-v8-top-pair .zv-store-product__price{
  font-size:16px!important;
}
.zv-store-product__price del{
  font-size:9px!important;
}
.zv-store-product.is-zv9-sale .zv-store-product__price ins,
.zv-store-product.is-zv9-sale .zv-store-product__price ins .woocommerce-Price-amount{
  color:#9b6049!important;
}
.zv-store-product.is-zv9-sale .zv-store-product__badges span:first-child{
  border-color:rgba(155,96,73,.2)!important;
  background:#fff7f3!important;
  color:#9b6049!important;
}
.zv-store-modal__body>.zv9-rating{
  margin:8px 0 12px!important;
}
.zv-store-modal__body>.zv9-rating .zv9-rating__stars{
  font-size:15px;
  letter-spacing:2.5px;
}
.zv-store-modal__body>.zv9-rating small{
  font-size:9px;
}

/* ---------- HOME: IMAGE + 2 x 2 PRODUCTS ---------- */
@media(min-width:721px){
  body.home .zv6-home-store__product-grid,
  body.home .zv6-home-store__product-grid.is-zv-final-four-up{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(0,1fr))!important;
    min-height:430px!important;
    gap:12px!important;
  }
  body.home .zv6-home-product,
  body.home .zv6-home-product.is-featured{
    grid-row:auto!important;
    min-height:0!important;
    height:100%!important;
  }
  body.home .zv6-home-product__media,
  body.home .zv6-home-product.is-featured .zv6-home-product__media{
    min-height:125px!important;
    height:125px!important;
    padding:12px!important;
  }
  body.home .zv6-home-product__media img,
  body.home .zv6-home-product.is-featured .zv6-home-product__media img{
    max-width:78%!important;
    max-height:108px!important;
  }
  body.home .zv6-home-product__body{
    gap:5px!important;
    padding:11px 14px 13px!important;
  }
  body.home .zv6-home-product__body h3,
  body.home .zv6-home-product.is-featured .zv6-home-product__body h3{
    font-size:16px!important;
    line-height:1.08!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
  body.home .zv6-home-product__price{
    font-size:11px!important;
  }
}

/* ---------- CART: KEEP RECOMMENDATIONS BELOW THE TWO-COLUMN CART ---------- */
body.woocommerce-cart .act-wc__main{
  position:relative!important;
}
body.woocommerce-cart .cart-collaterals{
  position:sticky!important;
  z-index:4!important;
}
body.woocommerce-cart .zv-commerce-recos{
  clear:both!important;
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  margin:44px 0 0!important;
  padding:34px 0 4px!important;
  position:relative!important;
  z-index:1!important;
  background:transparent!important;
  border-top:1px solid rgba(184,141,51,.12)!important;
}
body.woocommerce-cart .zv-commerce-recos__head,
body.woocommerce-cart .zv-commerce-recos__rail{
  position:relative!important;
  z-index:1!important;
}
body.woocommerce-cart .act-wc__main::after{
  content:"";
  display:table;
  clear:both;
}

/* ---------- CHECKOUT GEO: SHIPPING OWNS DEPARTMENT + DISTRICT ---------- */
.woocommerce-checkout .zv-final-country-source,
.woocommerce-checkout #billing_country_field.zv-final-country-source,
.woocommerce-checkout #shipping_country_field.zv-final-country-source,
.woocommerce-checkout #billing_department_field,
.woocommerce-checkout #billing_city_field,
.woocommerce-checkout #billing_state_field,
.woocommerce-checkout #shipping_city_field{
  display:none!important;
}
.woocommerce-checkout #shipping_department_field,
.woocommerce-checkout #shipping_state_field{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:calc(50% - 7px)!important;
  margin-bottom:16px!important;
}
.woocommerce-checkout #shipping_department_field{
  float:left!important;
  clear:left!important;
}
.woocommerce-checkout #shipping_state_field{
  float:right!important;
  clear:right!important;
}
.woocommerce-checkout #shipping_department,
.woocommerce-checkout #shipping_state{
  opacity:1!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
.woocommerce-checkout #shipping_department_field label::before,
.woocommerce-checkout #shipping_state_field label::before{
  content:"Ubicación · ";
  color:#a28d69;
  font-weight:500;
}
.woocommerce-checkout .zv-final-geo-field .select2-container--disabled .select2-selection--single{
  opacity:1!important;
  cursor:pointer!important;
  background:#fff!important;
}
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper::after{
  content:"";
  display:table;
  clear:both;
}

/* ---------- CHECKOUT PAYMENT: MORE BREATHING ROOM ---------- */
@media(min-width:1101px){
  .woocommerce-checkout .zv6-checkout-shell{
    grid-template-columns:minmax(0,1.06fr) minmax(440px,.94fr)!important;
    gap:28px!important;
  }
  .woocommerce-checkout .zv6-checkout-aside__sticky{
    padding:30px!important;
  }
}
.woocommerce-checkout #payment{
  padding:20px!important;
  border-radius:24px!important;
}
.woocommerce-checkout #payment .wc_payment_method{
  padding:17px!important;
  border-radius:18px!important;
}
.woocommerce-checkout #payment .payment_box{
  width:100%!important;
  max-width:none!important;
  padding:18px!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout #payment .payment_box>div,
.woocommerce-checkout #payment .payment_box iframe{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.woocommerce-checkout #payment [class*="mercadopago"],
.woocommerce-checkout #payment [id*="mercadopago"],
.woocommerce-checkout #payment [class*="mp-"],
.woocommerce-checkout #payment [id*="mp-"]{
  max-width:100%!important;
  box-sizing:border-box!important;
}

@media(max-width:720px){
  .zv-store-product__price{font-size:14px!important}
  .zv9-rating__stars{font-size:12px}
  body.home .zv6-home-store__product-grid{grid-template-columns:1fr!important;grid-template-rows:auto!important}
  .woocommerce-checkout #shipping_department_field,
  .woocommerce-checkout #shipping_state_field{
    width:100%!important;
    float:none!important;
    clear:both!important;
  }
  .woocommerce-checkout #payment{padding:15px!important}
  .woocommerce-checkout #payment .wc_payment_method{padding:14px!important}
  .woocommerce-checkout #payment .payment_box{padding:14px!important}
}
