/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 3.4.5
*/

/* =========================
   GLOBAL RESET
   ========================= */
html, body{
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* =========================
   MINI CART RESET
   ========================= */
.woocommerce-mini-cart,
.woocommerce-mini-cart ul,
.woocommerce-mini-cart li{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-mini-cart{
  width: 100% !important;
  box-sizing: border-box !important;
}

/* =========================
   PRODUCT CARD
   ========================= */
.woocommerce-mini-cart li.woocommerce-mini-cart-item{
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 2px !important;
  padding: 16px !important;
  margin: 14px 0 !important;
  position: relative !important;
  text-align: left !important;
}

/* =========================
   IMAGE + TEXT LAYOUT
   ========================= */
.woocommerce-mini-cart li.woocommerce-mini-cart-item > a:not(.remove){
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  text-decoration: none !important;
  color: #111 !important;
}

.woocommerce-mini-cart li.woocommerce-mini-cart-item > a:not(.remove) img{
  width: 96px !important;
  height: 110px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  margin: 0 !important;
}

/* =========================
   TITLE + PRICE
   ========================= */
.sk-item-title,
.woocommerce-mini-cart li.woocommerce-mini-cart-item > a:not(.remove),
.woocommerce-mini-cart li.woocommerce-mini-cart-item > a:not(.remove) *{
  font-weight: 400 !important;
}

.sk-item-title{
  font-size: 16px !important;
  margin: 0 !important;
  color: #111 !important;
}

.sk-mini-price,
.woocommerce-mini-cart li.woocommerce-mini-cart-item .amount{
  font-size: 15px !important;
  color: #111 !important;
}

/* =========================
   REMOVE (X)
   ========================= */
.woocommerce-mini-cart a.remove{
  position: absolute !important;
  top: 10px !important;
  right: 12px !important;
  font-size: 18px !important;
  color: #111 !important;
  background: none !important;
  border: 0 !important;
  padding: 2px 6px !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

/* =========================
   QTY ROW (NEW DESIGN)
   - and + are bold text (no boxes)
   qty is the only boxed element
   ========================= */
.sk-qty-remove-row{
  margin-left: 112px !important;
  margin-top: 6px !important;

  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
}

/* - and + (clean text buttons) */
.woocommerce-mini-cart .sk-qty-remove-row .mini-qty-btn{
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;

  height: auto !important;
  min-width: 0 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1 !important;

  cursor: pointer !important;
  color: #111 !important;

  box-shadow: none !important;
  outline: none !important;
}

/* qty (single boxed field) */
.woocommerce-mini-cart .sk-qty-remove-row .mini-cart-qty{
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;

  height: 30px !important;

  border: 1px solid rgba(0,0,0,.25) !important;
  border-radius: 6px !important;
  background: #fff !important;

  text-align: center !important;
  font-size: 14px !important;
  font-weight: 600 !important;

  padding: 0 !important;
  line-height: 30px !important;

  box-sizing: border-box !important;
  box-shadow: none !important;
  outline: none !important;

  -moz-appearance: textfield !important;
}

.woocommerce-mini-cart .sk-qty-remove-row .mini-cart-qty::-webkit-outer-spin-button,
.woocommerce-mini-cart .sk-qty-remove-row .mini-cart-qty::-webkit-inner-spin-button{
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* =========================
   SUBTOTAL
   ========================= */
.woocommerce-mini-cart__total{
  margin-top: 12px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}

/* =========================
   BUTTONS (SINGLE CHECKOUT ONLY)
   ========================= */
.woocommerce-mini-cart__buttons,
.widget_shopping_cart_content .buttons,
.elementor-menu-cart__footer-buttons{
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-top: 14px !important;
}

/* hide view cart everywhere in mini-cart footer */
.woocommerce-mini-cart__buttons a.wc-forward:not(.checkout),
.widget_shopping_cart_content .buttons a.wc-forward:not(.checkout),
.elementor-menu-cart__footer-buttons a.wc-forward:not(.checkout){
  display: none !important;
}

/* checkout = one full-width button */
.woocommerce-mini-cart__buttons a.checkout,
.widget_shopping_cart_content .buttons a.checkout,
.elementor-menu-cart__footer-buttons a.checkout{
  width: 100% !important;
  display: block !important;

  background: #572a2a !important;
  color: #fff !important;

  border: 0 !important;               /* ✅ remove white outline/border */
  outline: none !important;           /* ✅ */
  box-shadow: none !important;        /* ✅ */

  border-radius: 2px !important;
  padding: 12px 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-align: center !important;

  margin: 0 !important;
}

.woocommerce-mini-cart__buttons a.checkout:hover,
.widget_shopping_cart_content .buttons a.checkout:hover,
.elementor-menu-cart__footer-buttons a.checkout:hover{
  background: #8b6060 !important;
}

/* kill focus ring/glow */
.woocommerce-mini-cart__buttons a.checkout:focus,
.woocommerce-mini-cart__buttons a.checkout:focus-visible,
.widget_shopping_cart_content .buttons a.checkout:focus,
.widget_shopping_cart_content .buttons a.checkout:focus-visible,
.elementor-menu-cart__footer-buttons a.checkout:focus,
.elementor-menu-cart__footer-buttons a.checkout:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

/* =========================
   ONE CART-LEVEL GIFT SECTION
   ========================= */
.sk-cart-gift-wrap{
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}

.sk-cart-gift-wrap .sk-gift-check{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #111 !important;
  font-size: 14px !important;
}

.sk-cart-gift-wrap .sk-gift-box{
  margin-top: 8px !important;
  background: #F3F3F3 !important;
  padding: 10px !important;
  border-radius: 6px !important;
}

.sk-cart-gift-wrap textarea{
  width: 100% !important;
  min-height: 56px !important;
  resize: none !important;
  background: #F3F3F3 !important;
  color: #000 !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  border-radius: 6px !important;
  padding: 8px 10px !important;
  font-size: 14px !important;
}

/* =========================
   YOU MAY ALSO LIKE (desktop)
   ========================= */
.sk-upsell{
  margin-top: 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.sk-upsell-title{
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #111 !important;
  margin: 12px 0 10px 0 !important;
}

.sk-upsell-grid{
  display: block !important;
}

.sk-upsell-card{
  background: #d1b7b7 !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 16px !important;
  margin: 12px 0 !important;
  box-sizing: border-box !important;

  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.sk-upsell-thumb{
  display: block !important;
  flex: 0 0 auto !important;
  text-decoration: none !important;
}

.sk-upsell-thumb img{
  width: 78px !important;
  height: 78px !important;
  object-fit: cover !important;
  border-radius: 0 !important;
  display: block !important;
  margin: 0 !important;
}

.sk-upsell-info{
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.sk-upsell-name{
  font-family: "Aboreto", serif !important;
  color: #000 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  margin: 0 0 8px 0 !important;
}

.sk-upsell-price{
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #000 !important;
  margin: 0 !important;
}

.sk-upsell-add{
  flex: 0 0 auto !important;

  background: #572a2a !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 2px !important;

  height: 30px !important;
  min-width: 92px !important;
  padding: 0 16px !important;

  font-size: 13px !important;
  font-weight: 700 !important;
  cursor: pointer !important;

  margin: 0 !important;
}

.sk-upsell-add:hover{
  background: #8b6060 !important;
}

.sk-upsell-add:disabled{
  opacity: .65 !important;
  cursor: not-allowed !important;
}

/* =========================
   FREE SHIPPING (LIGHT WINE TRACK like before)
   ========================= */
#sk-mini-cart-root .sk-free-ship{
  width: 100% !important;
  margin: 6px 0 10px 0 !important;
  box-sizing: border-box !important;
}

#sk-mini-cart-root .sk-free-ship-text{
  text-align: center !important;
  color: #834444 !important;
  font-size: 13px !important;
  margin: 6px 0 5px 0 !important;

  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#sk-mini-cart-root .sk-free-ship-bar{
  display: block !important;
  width: 100% !important;

  height: 8px !important;
  min-height: 8px !important;

  background: #d1b7b7 !important;
  border: 1px solid rgba(87,42,42,.25) !important;
  border-radius: 999px !important;

  overflow: hidden !important;
  box-sizing: border-box !important;
}

#sk-mini-cart-root .sk-free-ship-fill{
  display: block !important;
  height: 100% !important;
  background: #572a2a !important;
  border-radius: 999px !important;
}

/* =========================
   COUPON UI (BACK TO THE ORIGINAL "BUBBLE" VERSION)
   ========================= */
#sk-mini-cart-root .sk-coupon-wrap{
  margin-top: 12px !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}

#sk-mini-cart-root .sk-coupon-row{
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
}

#sk-mini-cart-root .sk-coupon-input{
  flex: 1 !important;
  height: 34px !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  border-radius: 6px !important;
  padding: 0 10px !important;
  font-size: 14px !important;
  outline: none !important;
}

#sk-mini-cart-root .sk-coupon-apply{
  height: 30px !important;
  min-width: 92px !important;
  padding: 0 16px !important;

  font-size: 13px !important;
  font-weight: 700 !important;

  background: #572a2a !important;
  color: #fff !important;

  border: 0 !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  box-shadow: none !important;
  outline: none !important;
}

#sk-mini-cart-root .sk-coupon-apply:hover{
  background: #8b6060 !important;
}

#sk-mini-cart-root .sk-coupon-apply:disabled{
  opacity: .7 !important;
  cursor: not-allowed !important;
}

#sk-mini-cart-root .sk-coupon-msg{
  margin-top: 8px !important;
  padding: 8px 10px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#sk-mini-cart-root .sk-coupon-msg.is-ok{
  background: rgba(87,42,42,.10) !important;
  border: 1px solid rgba(87,42,42,.25) !important;
  color: #572a2a !important;
}

#sk-mini-cart-root .sk-coupon-msg.is-bad{
  background: rgba(0,0,0,.06) !important;
  border: 1px solid rgba(0,0,0,.14) !important;
  color: #111 !important;
}

#sk-mini-cart-root .sk-coupon-list{
  margin-top: 8px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

#sk-mini-cart-root .sk-coupon-chip{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #d1b7b7 !important;
  color: #000 !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#sk-mini-cart-root .sk-coupon-remove{
  text-decoration: none !important;
  color: #572a2a !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

/* =========================
   MOBILE: stop giant upsell images + keep wine background
   ========================= */
@media (max-width: 820px){

  #sk-mini-cart-root .sk-upsell-card{
    background: #d1b7b7 !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px !important;
  }

  #sk-mini-cart-root .sk-upsell-thumb img{
    width: 60px !important;
    height: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    object-fit: cover !important;
    display: block !important;
  }

  #sk-mini-cart-root .sk-upsell-add{
    height: 28px !important;
    min-width: 80px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
  }
