/* Mencconic Premium Product Page v9 */

/* =========================================================
   CHECKOUT — DESKTOP / LAPTOP
   ========================================================= */
body.woocommerce-checkout {
  background:#fafafa;
}

/* Remove narrow theme containers that can squeeze the checkout. */
@media (min-width:768px) {
  body.woocommerce-checkout .site-content,
  body.woocommerce-checkout .site-main,
  body.woocommerce-checkout .content-area,
  body.woocommerce-checkout .woocommerce {
    width:100% !important;
    max-width:none !important;
  }

  body.woocommerce-checkout .site-content .ast-container,
  body.woocommerce-checkout .site-content .container,
  body.woocommerce-checkout .site-main > .container {
    width:100% !important;
    max-width:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  body.woocommerce-checkout .mencconic-checkout-hero {
    width:min(1240px, calc(100% - 64px)) !important;
    max-width:1240px !important;
    margin:0 auto 30px !important;
    padding:42px 0 0 !important;
    box-sizing:border-box;
  }

  body.woocommerce-checkout .mencconic-checkout-hero h1 {
    margin:0 0 8px !important;
    font-size:clamp(34px, 3.3vw, 50px) !important;
    line-height:1.08 !important;
    font-weight:650 !important;
    letter-spacing:-1.2px !important;
    color:#111 !important;
  }

  body.woocommerce-checkout .mencconic-checkout-hero p {
    margin:0 !important;
    max-width:720px !important;
    color:#777 !important;
    font-size:14px !important;
    line-height:1.6 !important;
  }

  body.woocommerce-checkout form.checkout {
    width:min(1240px, calc(100% - 64px)) !important;
    max-width:1240px !important;
    margin:0 auto 70px !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) 440px !important;
    gap:28px !important;
    align-items:start !important;
    box-sizing:border-box !important;
  }

  body.woocommerce-checkout form.checkout > * {
    min-width:0;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review {
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    background:#fff !important;
    border:1px solid #e7e4de !important;
    border-radius:20px !important;
    box-shadow:0 10px 35px rgba(0,0,0,.045) !important;
  }

  body.woocommerce-checkout #customer_details {
    padding:30px !important;
  }

  body.woocommerce-checkout #order_review {
    padding:24px !important;
    position:sticky !important;
    top:20px !important;
  }

  body.woocommerce-checkout #order_review_heading {
    display:none !important;
  }
}

/* =========================================================
   ORDER REVIEW / PRODUCTS
   ========================================================= */
.woocommerce-checkout #order_review table.shop_table {
  border:0!important;
  margin:0!important;
  border-collapse:separate;
  border-spacing:0;
  width:100%;
}
.woocommerce-checkout #order_review table.shop_table thead { display:none; }
.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td {
  border:0!important;
  padding:14px 0;
  vertical-align:top;
}
.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item {
  border-bottom:1px solid #eee;
}
.woocommerce-checkout .mencconic-checkout-product {
  display:flex;
  gap:13px;
  align-items:flex-start;
  min-width:0;
}
.woocommerce-checkout .mencconic-checkout-thumb {
  width:76px!important;
  height:92px!important;
  object-fit:cover;
  border-radius:11px;
  display:block;
  flex:0 0 76px;
  border:1px solid #eee;
}
.woocommerce-checkout .mencconic-checkout-product-info {
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0;
  flex:1 1 auto;
}
.woocommerce-checkout .mencconic-checkout-product-name {
  font-weight:650;
  line-height:1.3;
  font-size:14px;
  color:#171717;
}
.woocommerce-checkout .mencconic-variation-list {
  display:flex;
  flex-wrap:wrap;
  gap:4px 8px;
  font-size:11px;
  color:#777;
}
.woocommerce-checkout .mencconic-variation { display:inline-block; }
.woocommerce-checkout #order_review table.shop_table td.product-total {
  font-weight:650;
  font-size:14px;
  white-space:nowrap;
  text-align:right;
  padding-left:10px;
}

/* Quantity controls — buttons are deliberately real <button> elements. */
.woocommerce-checkout .mencconic-checkout-product-actions {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:5px;
}
.woocommerce-checkout .mencconic-qty-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:32px;
  border:1px solid #ddd8cf;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  flex:0 0 auto;
}
.woocommerce-checkout .mencconic-qty-btn {
  width:31px!important;
  height:30px!important;
  min-width:31px!important;
  min-height:30px!important;
  border:0!important;
  background:#f7f6f3!important;
  color:#111!important;
  font-size:18px!important;
  line-height:30px!important;
  padding:0!important;
  margin:0!important;
  cursor:pointer;
  box-shadow:none!important;
}
.woocommerce-checkout .mencconic-qty-btn:hover { background:#eceae5!important; }
.woocommerce-checkout .mencconic-qty-btn:disabled { opacity:.45; cursor:wait; }
.woocommerce-checkout .mencconic-qty-value {
  min-width:29px;
  text-align:center;
  font-size:12px;
  font-weight:600;
}
.woocommerce-checkout .mencconic-remove-item {
  border:0!important;
  background:transparent!important;
  color:#999!important;
  padding:4px 0!important;
  margin:0!important;
  font-size:11px!important;
  cursor:pointer;
  text-decoration:underline;
  box-shadow:none!important;
}
.woocommerce-checkout .mencconic-remove-item:hover { color:#111!important; }
.woocommerce-checkout .mencconic-remove-item:disabled { opacity:.45; cursor:wait; }

/* Totals */
.woocommerce-checkout #order_review table.shop_table tfoot th,
.woocommerce-checkout #order_review table.shop_table tfoot td {
  border:0!important;
  padding:11px 0;
}
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total th,
.woocommerce-checkout #order_review table.shop_table tfoot tr.order-total td {
  font-size:18px;
  padding-top:18px;
  border-top:1px solid #eee!important;
}
.woocommerce-checkout #place_order {
  width:100%;
  min-height:54px;
  border-radius:12px;
  font-weight:700;
  letter-spacing:.3px;
  font-size:15px;
  margin-top:8px;
}
.woocommerce-checkout .mencconic-checkout-trust {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:16px;
  padding-top:15px;
  border-top:1px solid #eee;
  font-size:11px;
  color:#777;
}
.woocommerce-checkout .mencconic-checkout-trust span {
  padding:7px 9px;
  background:#f7f7f7;
  border-radius:999px;
}

/* Inputs */
.woocommerce-checkout #customer_details .form-row label {
  font-size:12px;
  font-weight:600;
  margin-bottom:6px;
}
.woocommerce-checkout #customer_details .input-text,
.woocommerce-checkout #customer_details select,
.woocommerce-checkout #customer_details textarea {
  width:100%;
  box-sizing:border-box;
  border:1px solid #ddd;
  border-radius:10px;
  min-height:46px;
  padding:11px 13px;
  background:#fff;
}
.woocommerce-checkout #customer_details textarea { min-height:100px; }

/* Product page small premium note */
.single-product div.product .summary .mencconic-premium-note {
  margin-top:16px;
  padding:12px 14px;
  border:1px solid #e8e8e8;
  border-radius:12px;
  background:#fafafa;
  font-size:13px;
  line-height:1.5;
}

/* =========================================================
   TABLET
   ========================================================= */
@media (min-width:768px) and (max-width:1100px) {
  body.woocommerce-checkout form.checkout {
    width:calc(100% - 40px) !important;
    grid-template-columns:minmax(0,1fr) 370px !important;
    gap:18px !important;
  }
  body.woocommerce-checkout .mencconic-checkout-hero {
    width:calc(100% - 40px) !important;
  }
  body.woocommerce-checkout #customer_details { padding:22px !important; }
  body.woocommerce-checkout #order_review { padding:19px !important; }
}

/* =========================================================
   MOBILE — keep the existing good phone sizing
   ========================================================= */
@media (max-width:767px) {
  body.woocommerce-checkout .mencconic-checkout-hero {
    width:calc(100% - 28px)!important;
    max-width:none!important;
    padding:22px 0 4px!important;
    margin:0 auto 18px!important;
  }
  body.woocommerce-checkout .mencconic-checkout-hero h1 {
    font-size:31px!important;
    line-height:1.08!important;
  }
  body.woocommerce-checkout .mencconic-checkout-hero p { font-size:13px!important; }

  body.woocommerce-checkout form.checkout {
    width:calc(100% - 28px)!important;
    max-width:none!important;
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
    margin:0 auto 35px!important;
    padding:0!important;
  }
  body.woocommerce-checkout #customer_details {
    order:1!important;
    width:100%!important;
    padding:18px!important;
    border-radius:16px!important;
    position:static!important;
  }
  body.woocommerce-checkout #order_review {
    order:2!important;
    width:100%!important;
    padding:17px!important;
    border-radius:16px!important;
    position:static!important;
  }
  .woocommerce-checkout .mencconic-checkout-thumb {
    width:64px!important;
    height:78px!important;
    flex-basis:64px;
  }
  .woocommerce-checkout .mencconic-checkout-product { gap:10px; }
  .woocommerce-checkout .mencconic-checkout-product-name { font-size:13px; }
  .woocommerce-checkout .mencconic-variation-list { font-size:10px; }
  .woocommerce-checkout .mencconic-checkout-product-actions { gap:8px; }
  .woocommerce-checkout #order_review table.shop_table td.product-total { font-size:13px; }
}

@media (max-width:400px) {
  .woocommerce-checkout .mencconic-checkout-hero h1 { font-size:28px!important; }
  .woocommerce-checkout .mencconic-checkout-thumb {
    width:58px!important;
    height:70px!important;
    flex-basis:58px;
  }
}


/* =========================================================
   PRODUCT PAGE — PREMIUM LIQUID BUY NOW BUTTON
   ========================================================= */
.single-product form.cart .single_add_to_cart_button,
.single-product .single_add_to_cart_button {
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:56px !important;
  min-width:220px !important;
  padding:0 34px !important;
  margin-top:14px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(110deg,#151515 0%,#252525 42%,#111 100%) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:750 !important;
  letter-spacing:.8px !important;
  text-transform:uppercase !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.14) !important;
  cursor:pointer !important;
  transition:transform .25s ease, box-shadow .25s ease, opacity .25s ease !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}

/* Animated liquid/gloss layer. */
.single-product form.cart .single_add_to_cart_button::before,
.single-product .single_add_to_cart_button::before {
  content:"" !important;
  position:absolute !important;
  z-index:-1 !important;
  left:-22% !important;
  top:-95% !important;
  width:145% !important;
  height:235% !important;
  border-radius:46% !important;
  background:linear-gradient(125deg,rgba(255,255,255,0) 28%,rgba(255,255,255,.24) 43%,rgba(226,196,108,.72) 51%,rgba(255,255,255,.08) 60%,rgba(255,255,255,0) 72%) !important;
  transform:translateX(-55%) rotate(-8deg) !important;
  animation:mencconicLiquidFlow 4.2s ease-in-out infinite !important;
  pointer-events:none !important;
}

.single-product form.cart .single_add_to_cart_button::after,
.single-product .single_add_to_cart_button::after {
  content:"" !important;
  position:absolute !important;
  inset:2px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.13) !important;
  pointer-events:none !important;
}

.single-product form.cart .single_add_to_cart_button:hover,
.single-product .single_add_to_cart_button:hover {
  transform:translateY(-2px) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.single-product form.cart .single_add_to_cart_button:active,
.single-product .single_add_to_cart_button:active {
  transform:translateY(0) scale(.985) !important;
}

/* WooCommerce disables variable-product buttons until a valid size/variation is selected. */
.single-product form.cart .single_add_to_cart_button.disabled,
.single-product form.cart .single_add_to_cart_button.wc-variation-selection-needed,
.single-product form.cart .single_add_to_cart_button:disabled {
  opacity:.48 !important;
  cursor:not-allowed !important;
  transform:none !important;
  box-shadow:0 7px 18px rgba(0,0,0,.08), inset 0 1px 0 rgba(255,255,255,.10) !important;
}

@keyframes mencconicLiquidFlow {
  0%,100% { transform:translateX(-58%) rotate(-8deg); }
  50% { transform:translateX(42%) rotate(-8deg); }
}

@media (prefers-reduced-motion:reduce) {
  .single-product form.cart .single_add_to_cart_button::before,
  .single-product .single_add_to_cart_button::before {
    animation:none !important;
  }
}

@media (max-width:767px) {
  .single-product form.cart .single_add_to_cart_button,
  .single-product .single_add_to_cart_button {
    width:100% !important;
    min-width:0 !important;
    min-height:58px !important;
    margin-top:16px !important;
    font-size:15px !important;
  }
}
