/* =========================================================
   Delfee — Single Product Page (ivory / gold design)
   Targets WooCommerce's default markup — no template override needed.
   ========================================================= */

:root{
  --d-ink:#1B1B1A;
  --d-ivory:#F7F3EC;
  --d-gold:#B08D57;
  --d-emerald:#1F3D34;
  --d-blush:#E8DCD3;
  --d-line:#D8CFC2;
  --d-background:#f8f7f8;
  --dark-purple: #571845;
  --font-heading: "Cormorant Garamond", serif;
  --font-body: "DM Sans", sans-serif;
}
.delfee-product-gallery {
    position: relative;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
}


.single-product div.product{
  background:var(--d-background);
  font-family:var(--font-body);
  color:var(--d-ink);
  padding:60px 60px;
}

.single-product div.product .product_title{
  font-family:var(--font-heading);
  font-weight:500;
  font-size:2rem;
  margin:8px 0 6px;
  text-transform: capitalize !important;
}

/* ---------- Price ---------- */
.single-product p.price,
.single-product .woocommerce-Price-amount{
  font-family:var(--font-body);
  font-size:1.4rem;
  color:var(--d-ink);
}
.single-product p.price del .woocommerce-Price-amount{
  font-family:var(--font-body);
  font-size:1rem;
  color:#9a958a;
  opacity:1;
}
.single-product p.price ins{
  text-decoration:none;
}

/* ---------- Gallery -> swipeable slider ---------- */
.single-product .woocommerce-product-gallery{
  position:relative;
}
.single-product .woocommerce-product-gallery__wrapper{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  border-radius:2px;
  background:linear-gradient(180deg,#EFE8DC,#E4DACB);
}
.single-product .woocommerce-product-gallery__wrapper::-webkit-scrollbar{
  display:none;
}
.single-product .woocommerce-product-gallery__image{
  flex:0 0 100%;
  scroll-snap-align:start;
}
.single-product .woocommerce-product-gallery__image img{
  width:100%;
  height:auto;
  object-fit:cover;
}

/* thumbnails Astra/WooCommerce render below the gallery */
.single-product .flex-control-thumbs{
  display:flex !important;
  gap:10px;
  margin-top:12px;
  padding:0;
  list-style:none;
}
.single-product .flex-control-thumbs li{
  width:64px;
}
.single-product .flex-control-thumbs img{
  border:1px solid var(--d-line);
  border-radius:2px;
  opacity:.6;
  cursor:pointer;
  transition:opacity .2s, border-color .2s;
}
.single-product .flex-control-thumbs img.flex-active{
  opacity:1;
  border-color:var(--d-gold);
}

.single-product .woocommerce-product-gallery .onsale{
  position:absolute; top:16px; left:16px; z-index:3;
  background:var(--d-emerald); color:#fff;
  font-size:.68rem; letter-spacing:.12em; text-transform:uppercase;
  padding:6px 12px; border-radius:20px; margin:0;
}
.delfee-slider-count{
  position:absolute; top:16px; right:16px; z-index:3;
  background:rgba(255,255,255,.9); border:1px solid var(--d-line);
  font-size:.68rem; padding:5px 10px; border-radius:20px; color:#6b675f;
}

/* JS-added slider arrows + dots */
.delfee-slider-arrow{
  position:absolute;top:50%;transform:translateY(-50%);
  width:38px;height:38px;border-radius:50%;
  background:var(--dark-purple);
  border:1px solid var(--d-line);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:1.1rem;z-index:3;
  color: #ffffff !important;
}
.delfee-slider-arrow.prev{ left:12px; }
.delfee-slider-arrow.next{ right:12px; }
.delfee-slider-dots{
  position:absolute;
  bottom:-16px; 
  /* left:0;  */
  /* right:0; */
  display:flex; justify-content:center; gap:6px; z-index:3;
}
.delfee-slider-dots span{
  width:7px;height:7px;border-radius:50%;
  background:rgba(27,27,26,.3);
  transition:background .2s, width .2s;
}
.delfee-slider-dots span.active{
  background:var(--d-ink); width:16px; border-radius:4px;
}

/* ---------- Variations -> pill / swatch buttons ---------- */
.single-product table.variations{
  display:block;
  border:none;
  margin-bottom:20px;
}
.single-product table.variations tbody,
.single-product table.variations tr{
  display:block;
}
.single-product table.variations td{
  display:block;
  padding:0;
}
.single-product table.variations label{
  font-size:.85rem;
  font-weight:600;
  display:block;
  margin-bottom:10px;
}

/* Hide native selects visually, keep them in the DOM & functional */
.single-product table.variations select{
  position:absolute;
  width:1px;height:1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
}

.delfee-pill-group{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:6px;
}
.delfee-pill-group button{
  min-width:44px;height:44px;padding:0 12px;
  border:1px solid var(--d-line);
  background:#fff;
  border-radius:2px;
  cursor:pointer;
  font-family:var(--font-body);
  font-size:.85rem;
  transition:all .15s;
}
.delfee-pill-group button.active{
  background:var(--d-ink); color:#fff; border-color:var(--d-ink);
}
.delfee-pill-group button:disabled{
  color:#c6c1b6;
  text-decoration:line-through;
  cursor:not-allowed;
  background:#F1ECE2;
}

.single-product .reset_variations{
  font-size:.78rem;
  color:var(--d-emerald);
  text-decoration:underline;
}

/* ---------- Quantity + Add to cart ---------- */

 .delfee-qty-btn.delfee-qty-minus{
    height: 36px !important;
    padding: 5px 8px !important;
    background: var(--dark-purple) !important;
    border: 1px solid var(--dark-purple) !important;
    border-radius: 2px;
      color: #fff !important;
}

 .delfee-qty-btn.delfee-qty-plus{
   height: 36px;
    padding: 5px 8px;
    background: var(--dark-purple);
   border: 1px solid var(--dark-purple);
   border-radius: 2px;
   color: #fff !important;
}

.single-product .quantity .qty{
  height: 26px;
  border: 1px solid var(--dark-purple);
  text-align:center;
  width:64px;
   border-radius: 2px;
}
.single-product .single_add_to_cart_button{
  background:var(--dark-purple) !important;
  color:#fff !important;
  border:none !important;
  height:52px;
  padding:0 32px !important;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:.82rem !important;
  border-radius:0 !important;

  transition: all 0.3s ease;
    transform: translateY(0);
    box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
}
.single-product .single_add_to_cart_button:hover{
   background: var(--dark-purple) !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);

}

/* ---------- Tabs ---------- */
.single-product .woocommerce-tabs ul.tabs{
  border-bottom:1px solid var(--d-line);
  padding-left:0;
}
.single-product .woocommerce-tabs ul.tabs li{
  font-family:var(--font-heading);
  font-size:.95rem;
}
.single-product .woocommerce-tabs ul.tabs li a{
  color:var(--d-ink);
}
.single-product .woocommerce-tabs ul.tabs li.active{
  border-bottom:2px solid var(--d-gold);
}

.single-product-category a{
    color: var(--dark-purple);
    border: 1px solid var(--dark-purple);
    padding: 3px 12px;
    border-radius: 50px;
}

/* number of products */
.single-product .quantity input[type="number"]::-webkit-inner-spin-button,
.single-product .quantity input[type="number"]::-webkit-outer-spin-button {
    opacity: 1;
    -webkit-appearance: inner-spin-button;
    margin: 0;
}

.delfee-video-thumb-text{
  display: none;
}

/* Delfee Tabs */
.woocommerce-tabs .wc-tabs {
    display: flex !important;
    gap: 8px;
    margin-bottom: 25px !important;
    padding-bottom: 0 !important;
    border-bottom: 1px solid #ddd6d2 !important;
}

/* Buttons */
.woocommerce-tabs .wc-tabs li a {
    display: block;
    padding: 10px 18px !important;
    border: 1px solid #ddd6d2 !important;
    border-bottom: none !important;
    border-radius: 6px 6px 0 0 !important;
    background: #fff !important;
    color: #571845 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    transition: all 0.2s ease;
}

/* Active tab */
.woocommerce-tabs .wc-tabs li.active a {
    background: #571845 !important;
    border-color: #571845 !important;
    color: #fff !important;
    position: relative;
    z-index: 2;
}

/* Remove WooCommerce active bottom border */
.woocommerce-tabs .wc-tabs li.active {
    border-bottom: 0 !important;
}

/* Remove default pseudo elements */
.woocommerce-tabs .wc-tabs li::before,
.woocommerce-tabs .wc-tabs li::after {
    display: none !important;
}

/*discription-tab */

/* Product Details Table */
.woocommerce-tabs table.shop_attributes {
    width: 100%;
    border-collapse: collapse !important;
    border: 1px solid #e8e1df !important;
    border-radius: 10px;
    overflow: hidden;
}

/* Table rows */
.woocommerce-tabs table.shop_attributes tr:nth-child(odd) {
    background: #f8f3f5 !important;
}

.woocommerce-tabs table.shop_attributes tr:nth-child(even) {
    background: #ffffff !important;
}

/* Cells */
.woocommerce-tabs table.shop_attributes th,
.woocommerce-tabs table.shop_attributes td {
    padding: 18px 20px !important;
    border: 0 !important;
    text-align: left;
}

/* Labels */
.woocommerce-tabs table.shop_attributes th {
    width: 50%;
    color: #571845 !important;
    font-weight: 600 !important;
}

/* Values */
.woocommerce-tabs table.shop_attributes td {
    color: #55515a !important;
    font-weight: 500 !important;
}

/* Remove paragraph margin */
.woocommerce-tabs table.shop_attributes td p {
    margin: 0 !important;
}

.woocommerce-js table.shop_table thead, .woocommerce-page table.shop_table thead {
 background-color: transparent !important
}

