/**
 * Heaven Four - Single Product Page Override (Kadence Theme)
 * Targets Kadence's specific product template structure
 */

/* Product Content Wrapper - Main Container */
body.single-product .product-content-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 50px !important;
  max-width: 1200px !important;
  margin: 40px auto 60px !important;
  padding: 50px !important;
  background: #fff !important;
  border-radius: 24px !important;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.06) !important;
}

/* Gallery Section */
body.single-product .product-images-section {
  flex: 0 0 48% !important;
  max-width: 48% !important;
  width: 48% !important;
}

/* Main Product Image */
body.single-product .woocommerce-product-gallery__image img,
body.single-product .woocommerce-product-gallery__image--placeholder img {
  width: 100% !important;
  height: auto !important;
  max-height: 500px !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  background: #FAF8F5 !important;
  padding: 15px !important;
}

/* Gallery Thumbnails - Force Horizontal */
body.single-product .flex-control-thumbs,
body.single-product .woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 15px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .flex-control-thumbs li {
  width: 70px !important;
  height: 70px !important;
  flex: 0 0 70px !important;
  margin: 0 !important;
}

body.single-product .flex-control-thumbs li img {
  width: 70px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  opacity: 0.5 !important;
  transition: all 0.3s ease !important;
  border: 2px solid transparent !important;
}

body.single-product .flex-control-thumbs li img:hover,
body.single-product .flex-control-thumbs li img.flex-active {
  opacity: 1 !important;
  border-color: #E3967E !important;
}

/* Summary/Details Section */
body.single-product .summary.entry-summary,
body.single-product .product-content-wrapper > .summary {
  flex: 1 !important;
  min-width: 300px !important;
}

/* Product Title */
body.single-product .product_title,
body.single-product .summary h1 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 2.2rem !important;
  font-weight: 500 !important;
  color: #2D2D2D !important;
  margin: 0 0 20px !important;
  line-height: 1.25 !important;
}

/* Price */
body.single-product .summary .price,
body.single-product p.price,
body.single-product .woocommerce-Price-amount {
  font-family: 'Inter', sans-serif !important;
  font-size: 1.8rem !important;
  font-weight: 600 !important;
  color: #E3967E !important;
}

body.single-product .summary > .price {
  margin: 0 0 25px !important;
  display: block !important;
}

/* Short Description Box */
body.single-product .woocommerce-product-details__short-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: #555 !important;
  margin-bottom: 25px !important;
  padding: 20px !important;
  background: #FAF8F5 !important;
  border-radius: 12px !important;
  border-left: 4px solid #E3967E !important;
}

body.single-product .woocommerce-product-details__short-description p {
  margin: 0 !important;
}

/* Full Description (if visible on page) */
body.single-product .summary .product-single-full-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: #666 !important;
  margin-bottom: 20px !important;
}

/* Cart Form */
body.single-product form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 15px !important;
  margin: 25px 0 !important;
  flex-wrap: wrap !important;
}

/* Quantity Input */
body.single-product .quantity .qty {
  width: 75px !important;
  padding: 14px !important;
  border: 2px solid #E8E8E8 !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  text-align: center !important;
  font-weight: 500 !important;
  background: #fff !important;
}

body.single-product .quantity .qty:focus {
  border-color: #E3967E !important;
  outline: none !important;
}

/* Add to Cart Button */
body.single-product .single_add_to_cart_button,
body.single-product form.cart button[type="submit"] {
  background: #E3967E !important;
  color: #fff !important;
  padding: 16px 45px !important;
  border-radius: 35px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  letter-spacing: 0.15em !important;
  font-weight: 600 !important;
  border: none !important;
  cursor: pointer !important;
  transition: all 0.35s ease !important;
  box-shadow: 0 6px 25px rgba(227, 150, 126, 0.35) !important;
}

body.single-product .single_add_to_cart_button:hover {
  background: #D4856D !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 35px rgba(227, 150, 126, 0.45) !important;
}

/* Product Meta */
body.single-product .product_meta {
  margin-top: 30px !important;
  padding-top: 20px !important;
  border-top: 1px solid #f0f0f0 !important;
  font-size: 13px !important;
  color: #888 !important;
}

body.single-product .product_meta > span {
  display: block !important;
  margin-bottom: 6px !important;
}

body.single-product .product_meta a {
  color: #E3967E !important;
  text-decoration: none !important;
}

body.single-product .product_meta a:hover {
  text-decoration: underline !important;
}

/* Tabs Section */
body.single-product .woocommerce-tabs,
body.single-product .kadence-woo-product-tabs {
  width: 100% !important;
  margin-top: 50px !important;
  padding: 0 5% !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.single-product .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: 5px !important;
  padding: 0 !important;
  margin: 0 0 25px !important;
  border-bottom: 2px solid #f0f0f0 !important;
  list-style: none !important;
  background: none !important;
}

body.single-product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce-tabs ul.tabs::after {
  display: none !important;
}

body.single-product .woocommerce-tabs ul.tabs li {
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs ul.tabs li a {
  display: block !important;
  padding: 12px 25px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #888 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  border-bottom: 3px solid transparent !important;
  margin-bottom: -2px !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li a:hover {
  color: #E3967E !important;
  border-bottom-color: #E3967E !important;
}

/* Tab Panels */
body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-Tabs-panel {
  padding: 30px !important;
  background: #FAF8F5 !important;
  border-radius: 16px !important;
}

body.single-product .woocommerce-tabs .panel h2 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  color: #2D2D2D !important;
  margin: 0 0 20px !important;
}

body.single-product .woocommerce-tabs .panel p {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.9 !important;
  color: #555 !important;
}

/* Related Products */
body.single-product .related.products,
body.single-product section.related {
  max-width: 1200px !important;
  margin: 60px auto !important;
  padding: 0 5% !important;
}

body.single-product .related.products > h2,
body.single-product section.related > h2 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 2rem !important;
  font-weight: 400 !important;
  color: #2D2D2D !important;
  text-align: center !important;
  margin-bottom: 40px !important;
}

/* Mobile Responsive */
@media (max-width: 991px) {
  body.single-product .product-content-wrapper {
    flex-direction: column !important;
    padding: 30px !important;
    gap: 30px !important;
    margin: 20px 15px !important;
  }
  
  body.single-product .product-images-section,
  body.single-product .summary.entry-summary {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  
  body.single-product .product_title {
    font-size: 1.8rem !important;
  }
  
  body.single-product .summary .price {
    font-size: 1.5rem !important;
  }
}

@media (max-width: 600px) {
  body.single-product .product-content-wrapper {
    padding: 20px !important;
    border-radius: 16px !important;
  }
  
  body.single-product .product_title {
    font-size: 1.5rem !important;
  }
  
  body.single-product form.cart {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  
  body.single-product .single_add_to_cart_button {
    width: 100% !important;
    text-align: center !important;
  }
  
  body.single-product .flex-control-thumbs li {
    width: 55px !important;
    height: 55px !important;
    flex: 0 0 55px !important;
  }
  
  body.single-product .flex-control-thumbs li img {
    width: 55px !important;
    height: 55px !important;
  }
}
