/* =========================
   SINGLE PRODUCT — LAYOUT
   ========================= */
.single-product .product {
  max-width: 1100px;
  margin: 24px auto;
  padding: 0 16px;
  display: flex;
  gap: 96px; /* space between image and summary */
}

/* two-column spacing */
.single-product div.product .images,
.single-product div.product .summary {
  margin-bottom: 0;
}
.single-product div.product .summary {
  padding-left: 0; /* gap handles spacing */
}

/* =========================
   TYPOGRAPHY
   ========================= */
.single-product .product_title {
  font-size: 2rem;
  margin-bottom: 8px;
}
.single-product p.price {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 16px;
}

/* ✅ Bigger short description */
.single-product .product-short-description {
  font-size: 1.125rem; /* ~18px */
  line-height: 1.6;
  color: #333;
  margin-bottom: 20px;
}
.single-product .product-short-description p,
.single-product .product-short-description li {
  font-size: 1.125rem; /* match parent */
  line-height: 1.6;
}

/* hide sku/category line */
.single-product .product_meta {
  display: none;
}

/* =========================
   CART / FORMS / BUTTONS
   ========================= */
.single-product form.cart {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 24px;
}
.single-product .quantity .qty {
  height: 40px;
}
.single-product .single_add_to_cart_button {
  background: #ff7a45;
  border: 0;
  border-radius: 10px;
  padding: 10px 18px;
  font-weight: 700;
}

/* express checkout spacing */
.wc-block-components-express-checkout,
.wc-stripe-express-checkout-container {
  margin-top: 20px;
}
/* space between individual express buttons */
.wc-block-components-express-checkout > div,
.wc-stripe-express-checkout-container > div {
  margin-bottom: 12px;
}

/* =========================
   GALLERY
   ========================= */
/* prevent numbered list on Woo thumbnails if theme selectors miss */
.woocommerce div.product .flex-control-thumbs,
.flex-control-thumbs {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* custom thumb strip under short description */
.product-gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin: 8px 0 12px;
}
.product-gallery-thumbs .gallery-thumb-link {
  display: block;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: 1px solid #eee;
  border-radius: 6px;
}
.product-gallery-thumbs img.gallery-thumb {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* =========================
   HIDE 3P WIDGETS / BADGES
   ========================= */
.wc-block-components-product-badges,
.wc-block-components-payment-methods,
.wc-block-components-product-additional-information,
.price .wc-block-components-product-price__badge,
.single-product .payment-options,
.single-product .wc-block-components-product-promotion {
  display: none !important;
}

/* =========================
   RESPONSIVE
   ========================= */
/* stack columns on smaller screens; tune breakpoint as needed */
@media (max-width: 900px) {
  .single-product .product {
    flex-direction: column;
    gap: 24px;
  }
  .product-gallery-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
