
/*
 Crafty Corner v0.4.152 — visual refinement for single WooCommerce products.
 No WooCommerce form or provider widget markup is replaced.
*/
body.single-product.woocommerce,
body.single-product.woocommerce-page {
  --cc152-column-gap:clamp(24px,3.2vw,52px);
  --cc152-thumb-gap:8px;
  --cc152-gallery-thumb-fit:cover;
  --cc152-select-height:52px;
  --cc152-section-space:clamp(30px,4.5vw,64px);
  --cc152-thumb-radius:8px;
}

/* Keep the main gallery and purchasing panel in a coherent two-column rhythm.
   Avoid floats bleeding into the tabs and related products below. */
@media(min-width:900px) {
  body.single-product.woocommerce div.product::after {
    content:"";
    display:table;
    clear:both;
  }
  body.single-product.woocommerce div.product .woocommerce-product-gallery,
  body.single-product.woocommerce div.product div.images {
    width:calc(51% - var(--cc152-column-gap) / 2)!important;
    max-width:calc(51% - var(--cc152-column-gap) / 2);
    margin:0 0 var(--cc152-section-space)!important;
    min-width:0;
  }
  body.single-product.woocommerce div.product .summary,
  body.single-product.woocommerce div.product div.summary {
    width:calc(49% - var(--cc152-column-gap) / 2)!important;
    max-width:calc(49% - var(--cc152-column-gap) / 2);
    margin:0 0 var(--cc152-section-space)!important;
    min-width:0;
  }
}
@media(max-width:899px) {
  body.single-product.woocommerce div.product div.images,
  body.single-product.woocommerce div.product .woocommerce-product-gallery,
  body.single-product.woocommerce div.product .summary {
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.single-product.woocommerce div.product .summary {
    margin-top:clamp(16px,3vw,30px)!important;
  }
}
/* Main product art: display on a dark neutral frame, keep original image visible. */
body.single-product.woocommerce div.product .woocommerce-product-gallery__wrapper {
  background:#0B1119!important;
  border:1px solid rgba(214,178,124,.45);
  border-radius:var(--cc151-radius,14px);
  overflow:hidden;
}
body.single-product.woocommerce div.product .woocommerce-product-gallery__image {
  background:#0B1119!important;
}
body.single-product.woocommerce div.product .woocommerce-product-gallery__image img {
  display:block;
  max-width:100%;
  margin:0 auto!important;
}
/* Responsive, consistent thumb tiles, with no white framing added by CSS. */
body.single-product.woocommerce div.product .flex-control-thumbs {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--cc152-thumb-gap)!important;
  margin:10px 0 0!important;
  padding:0!important;
  list-style:none;
}
body.single-product.woocommerce div.product .flex-control-thumbs li {
  float:none!important;
  width:auto!important;
  min-width:0;
  margin:0!important;
  border-radius:var(--cc152-thumb-radius)!important;
  background:#0B1119!important;
  aspect-ratio:1/1;
}
body.single-product.woocommerce div.product .flex-control-thumbs li img {
  width:100%!important;
  height:100%!important;
  aspect-ratio:1/1;
  object-fit:var(--cc152-gallery-thumb-fit)!important;
  background:#0B1119!important;
}
body.single-product.woocommerce div.product .flex-control-thumbs li:has(img.flex-active) {
  border-color:#D6B27C!important;
  box-shadow:inset 0 0 0 2px #D6B27C!important;
}
body.single-product.woocommerce div.product .summary .product_title {
  margin:0 0 14px!important;
  text-wrap:balance;
}
body.single-product.woocommerce div.product .summary .price {
  margin:16px 0 20px!important;
  line-height:1.25!important;
  font-variant-numeric:tabular-nums;
}
body.single-product.woocommerce div.product .summary .woocommerce-product-details__short-description {
  margin:12px 0 18px!important;
  max-width:66ch;
}
/* Variation selection: keep real WooCommerce selects and AJAX behavior intact. */
body.single-product.woocommerce div.product form.cart table.variations {
  border-collapse:separate!important;
  border-spacing:0 10px!important;
  table-layout:fixed;
}
body.single-product.woocommerce div.product form.cart table.variations tr {
  display:grid;
  grid-template-columns:minmax(100px,120px) minmax(0,1fr);
  align-items:center;
  gap:12px;
}
body.single-product.woocommerce div.product form.cart table.variations th.label {
  padding:0!important;
  text-align:left!important;
  width:auto!important;
}
body.single-product.woocommerce div.product form.cart table.variations td.value {
  padding:0!important;
  width:auto!important;
  min-width:0;
}
body.single-product.woocommerce div.product form.cart table.variations td.value select {
  display:block;
  width:100%!important;
  min-width:0;
  max-width:100%;
  min-height:var(--cc152-select-height)!important;
  font-size:1rem;
  line-height:1.3;
  padding:10px 40px 10px 14px!important;
}
body.single-product.woocommerce div.product form.cart .single_variation_wrap {
  margin-top:14px!important;
}
body.single-product.woocommerce div.product form.cart .woocommerce-variation {
  margin:8px 0 12px;
  color:#F5EBD9;
}
body.single-product.woocommerce div.product form.cart .woocommerce-variation-price .price {
  font-size:1.4rem!important;
}
body.single-product.woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:stretch;
}
body.single-product.woocommerce div.product form.cart .quantity {
  margin:0!important;
  float:none!important;
}
body.single-product.woocommerce div.product form.cart input.qty {
  width:78px!important;
  text-align:center;
  height:var(--cc152-select-height)!important;
}
body.single-product.woocommerce div.product form.cart .single_add_to_cart_button {
  min-height:var(--cc152-select-height)!important;
  min-width:160px;
  padding:12px 22px!important;
  float:none!important;
  transition:background-color .15s ease;
}
body.single-product.woocommerce div.product form.cart .reset_variations {
  display:inline-block;
  margin-top:8px;
  padding:4px 0;
  text-underline-offset:3px;
}
body.single-product.woocommerce div.product .woocommerce-tabs {
  padding-top:var(--cc152-section-space)!important;
  margin-top:0;
}
body.single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  text-decoration:none;
  text-align:center;
  white-space:normal;
}
body.single-product.woocommerce div.product .woocommerce-tabs .panel {
  overflow-wrap:anywhere;
}
body.single-product.woocommerce div.product .woocommerce-tabs .panel p {
  max-width:85ch;
}
body.single-product.woocommerce div.product .related.products,
body.single-product.woocommerce div.product .upsells.products {
  padding-top:var(--cc152-section-space)!important;
}
body.single-product.woocommerce div.product .related.products ul.products,
body.single-product.woocommerce div.product .upsells.products ul.products {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(12px,2vw,24px)!important;
}
body.single-product.woocommerce div.product .related.products ul.products li.product,
body.single-product.woocommerce div.product .upsells.products ul.products li.product {
  width:100%!important;
  float:none!important;
  margin:0!important;
  min-width:0;
  display:flex;
  flex-direction:column;
}
body.single-product.woocommerce div.product .related.products ul.products li.product img,
body.single-product.woocommerce div.product .upsells.products ul.products li.product img {
  width:100%!important;
  display:block;
  border:0!important;
  padding:0!important;
}
body.single-product.woocommerce div.product .related.products ul.products li.product a.button,
body.single-product.woocommerce div.product .upsells.products ul.products li.product a.button {
  align-self:flex-start;
  margin-top:auto!important;
}
/* Never force express payment provider buttons or embedded payment iframes. */
@media(max-width:1150px) {
  body.single-product.woocommerce div.product .related.products ul.products,
  body.single-product.woocommerce div.product .upsells.products ul.products {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:767px) {
  body.single-product.woocommerce div.product .flex-control-thumbs {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  body.single-product.woocommerce div.product form.cart table.variations tr {
    grid-template-columns:1fr;
    gap:6px;
    margin-bottom:14px;
  }
  body.single-product.woocommerce div.product form.cart .single_add_to_cart_button {
    flex:1 1 160px;
  }
  body.single-product.woocommerce div.product .related.products ul.products,
  body.single-product.woocommerce div.product .upsells.products ul.products {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:420px) {
  body.single-product.woocommerce div.product .flex-control-thumbs {
    gap:6px!important;
  }
  body.single-product.woocommerce div.product .related.products ul.products,
  body.single-product.woocommerce div.product .upsells.products ul.products {
    gap:12px!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body.single-product.woocommerce div.product .single_add_to_cart_button {
    transition:none!important;
  }
}
