.elementor-370 .elementor-element.elementor-element-c58c9c6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:32px;--padding-right:32px;}.elementor-370 .elementor-element.elementor-element-ed1f270{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:24px;}.elementor-370 .elementor-element.elementor-element-ed1f270.e-con{--flex-grow:0;--flex-shrink:0;}.woocommerce .elementor-370 .elementor-element.elementor-element-06d9228 .flex-viewport:not(:last-child){margin-bottom:8px;}.elementor-370 .elementor-element.elementor-element-aa73db2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:0px;}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.woocommerce .elementor-widget-woocommerce-product-price .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-370 .elementor-element.elementor-element-b7ef91e .cart button, .elementor-370 .elementor-element.elementor-element-b7ef91e .cart .button{transition:all 0.2s;}.elementor-370 .elementor-element.elementor-element-b7ef91e .quantity .qty{transition:all 0.2s;}.elementor-370 .elementor-element.elementor-element-a298810{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-a298810:not(.elementor-motion-effects-element-type-background), .elementor-370 .elementor-element.elementor-element-a298810 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5EFE5;}.elementor-370 .elementor-element.elementor-element-1b58896{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#E5DDD0;--border-color:#E5DDD0;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-3193424{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#E5DDD0;--border-color:#E5DDD0;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-3193424:not(.elementor-motion-effects-element-type-background), .elementor-370 .elementor-element.elementor-element-3193424 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAF7F2;}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products{--products-title-color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.products-heading-show .related-products > h2, .elementor-widget-woocommerce-products.products-heading-show .upsells > h2, .elementor-widget-woocommerce-products.products-heading-show .cross-sells > h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-products.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-370 .elementor-element.elementor-element-4b8bb0a > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-370 .elementor-element.elementor-element-4b8bb0a.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-370 .elementor-element.elementor-element-4b8bb0a.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(max-width:1024px){.elementor-370 .elementor-element.elementor-element-4b8bb0a.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(min-width:768px){.elementor-370 .elementor-element.elementor-element-c58c9c6{--content-width:1320px;}.elementor-370 .elementor-element.elementor-element-ed1f270{--width:55%;}.elementor-370 .elementor-element.elementor-element-aa73db2{--width:45%;}.elementor-370 .elementor-element.elementor-element-1b58896{--content-width:1320px;}.elementor-370 .elementor-element.elementor-element-3193424{--content-width:1320px;}}@media(max-width:767px){.elementor-370 .elementor-element.elementor-element-c58c9c6{--padding-top:015px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-370 .elementor-element.elementor-element-ed1f270{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-aa73db2{--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-3193424{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-370 .elementor-element.elementor-element-4b8bb0a.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS for container, class: .elementor-element-ed1f270 *//* ============================================
   LEFT COLUMN: PERFECT 1:1 SQUARE MAIN IMAGE
   ============================================ */

/* 1. Elementor Widget Full Width Reset */
.elementor-370 .elementor-element.elementor-element-ed1f270 .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 > .elementor-widget-wrap {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 60px !important;
  height: max-content !important;
  z-index: 10 !important;
  width: 100% !important;
}

/* 2. Flex Container */
.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery {
  display: flex !important;
  flex-direction: row-reverse !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important; /* Keeps everything locked to the top */
  width: 100% !important;
  max-width: 100% !important;
  gap: 15px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* 3. Thumbnails (Left side) */
.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs {
  display: flex !important;
  flex-direction: column !important;
  width: 85px !important;
  min-width: 85px !important;
  flex: 0 0 85px !important; 
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: calc(100vh - 120px);
  scrollbar-width: none; 
  position: relative !important;
  z-index: 2 !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs::-webkit-scrollbar {
  display: none !important; 
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs li {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs li img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 4 !important; /* Keeps the thumbnails vertical */
  object-fit: cover !important;
  opacity: 0.55 !important;
  border: 1.5px solid transparent !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  transition: opacity 0.3s ease, border-color 0.3s ease !important;
  display: block !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs li img:hover,
.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs li img.flex-active {
  opacity: 1 !important;
  border-color: #A8745A !important;
}

/* 4. Main Image Viewport (FORCED TO 1:1 PERFECT SQUARE) */
.elementor-370 .elementor-element.elementor-element-ed1f270 .flex-viewport,
.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__wrapper:not(.flex-viewport .woocommerce-product-gallery__wrapper) {
  width: calc(100% - 100px) !important;
  min-width: calc(100% - 100px) !important; 
  height: auto !important; /* Defeats WooCommerce's inline javascript height */
  aspect-ratio: 1 / 1 !important; /* CRITICAL: Forces the box into a perfect square */
  background: transparent !important;
  border: none !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  border-radius: 2px !important;
}

/* 5. Force Images inside slider to Cover the Square */
.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__image {
  height: 100% !important;
  background: transparent !important;
  margin: 0 !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__image a {
  display: block !important;
  width: 100% !important;
  height: 100% !important; 
  margin: 0 !important;
}

.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__image a img {
  width: 100% !important;
  height: 100% !important; 
  object-fit: cover !important; /* CRITICAL: Crops the image to fit the square without distortion */
  object-position: center top !important; /* Keeps the model's face in the frame */
  display: block !important;
  margin: 0 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}

/* 6. KILL ZOOM ICON & GHOST IMAGE */
.elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__trigger,
.elementor-370 .elementor-element.elementor-element-ed1f270 .zoomImg {
  display: none !important;
}

/* Mobile Layout Fix */
@media (max-width: 600px) {
  .elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery {
    flex-direction: column !important;
  }
  .elementor-370 .elementor-element.elementor-element-ed1f270 .flex-viewport,
  .elementor-370 .elementor-element.elementor-element-ed1f270 .woocommerce-product-gallery__wrapper:not(.flex-viewport .woocommerce-product-gallery__wrapper) {
    width: 100% !important;
    min-width: 100% !important;
    margin-bottom: 10px !important;
  }
  .elementor-370 .elementor-element.elementor-element-ed1f270 .flex-control-thumbs {
    flex-direction: row !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c58c9c6 *//* ============================================================================
   CHAFA — Single Product Page · RIGHT COLUMN & TYPOGRAPHY
   ============================================================================ */

/* Overflow Fixes */
.chafa-spp,
.chafa-spp > .elementor-container,
.chafa-spp .elementor-container,
.chafa-spp .spp-gallery-col,
.chafa-spp .spp-details-col {
  overflow: visible !important;
}

.chafa-spp .spp-details-col > .elementor-widget-wrap > .elementor-widget,
.chafa-spp .spp-details-col .elementor-widget { margin: 0 !important; }
.chafa-spp .spp-details-col .elementor-widget-container { margin: 0 !important; padding: 0 !important; }

/* Breadcrumb */
.chafa-spp .spp-breadcrumb { margin-bottom: 18px !important; }
.chafa-spp .woocommerce-breadcrumb { font-family: 'Inter', sans-serif !important; font-size: 10px !important; letter-spacing: 2px !important; text-transform: uppercase !important; color: #8A7A6A !important; font-weight: 400 !important; margin: 0 !important; padding: 0 !important; }
.chafa-spp .woocommerce-breadcrumb a { color: #8A7A6A !important; text-decoration: none !important; transition: color 0.3s ease !important; }
.chafa-spp .woocommerce-breadcrumb a:hover { color: #A8745A !important; }

/* Product Title */
.chafa-spp .spp-title-widget { margin-bottom: 6px !important; }
.chafa-spp .spp-title-widget .product_title, .chafa-spp .spp-title-widget h1, .chafa-spp h1.product_title { font-family: 'Cormorant Garamond', serif !important; font-size: 34px !important; font-weight: 400 !important; line-height: 1.15 !important; color: #1F1A17 !important; letter-spacing: 0.3px !important; margin: 0 !important; padding: 0 !important; }

/* Tagline */
.chafa-spp .spp-tagline-widget { margin-bottom: 14px !important; }
.chafa-spp .spp-tagline { font-family: 'Cormorant Garamond', serif !important; font-style: italic; font-size: 14px; color: #A8745A; margin: 0 !important; letter-spacing: 0.3px; }

/* Review Strip */
.chafa-spp .spp-reviews-widget { margin-bottom: 18px !important; padding-bottom: 16px !important; border-bottom: 0.5px solid #E5DDD0; }
.chafa-spp .spp-reviews { display: flex; align-items: center; gap: 10px; }
.chafa-spp .spp-stars { color: #A8745A; font-size: 12px; letter-spacing: 1px; }
.chafa-spp .spp-review-count { font-family: 'Inter', sans-serif; font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; color: #8A7A6A; font-weight: 400; }
.chafa-spp .spp-review-link { margin-left: auto; font-family: 'Inter', sans-serif; font-size: 9px; color: #A8745A; letter-spacing: 1.5px; text-transform: uppercase; text-decoration: underline; text-decoration-color: rgba(168, 116, 90, 0.3); text-underline-offset: 3px; transition: text-decoration-color 0.3s ease; }
.chafa-spp .spp-review-link:hover { text-decoration-color: #A8745A; }

/* Product Price */
.chafa-spp .spp-price-widget { margin-bottom: 6px !important; }
.chafa-spp .spp-price-widget .price, .chafa-spp .spp-price-widget p.price { font-family: 'Inter', sans-serif !important; display: flex !important; align-items: baseline !important; flex-wrap: wrap !important; gap: 12px !important; margin: 0 !important; padding: 0 !important; }
.chafa-spp .spp-price-widget .price ins { background: transparent !important; text-decoration: none !important; font-size: 26px !important; font-weight: 500 !important; color: #1F1A17 !important; letter-spacing: 0.3px !important; order: 1 !important; }
.chafa-spp .spp-price-widget .price del { text-decoration: none !important; font-size: 14px !important; font-weight: 300 !important; color: #8A7A6A !important; background: transparent !important; order: 2 !important; opacity: 1 !important; }
.chafa-spp .spp-price-widget .price del::before { content: "Was "; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 13px; margin-right: 2px; }
.chafa-spp .spp-price-widget .price > .woocommerce-Price-amount { font-size: 26px !important; font-weight: 500 !important; color: #1F1A17 !important; }
.chafa-spp .spp-price-widget .woocommerce-Price-amount, .chafa-spp .spp-price-widget .woocommerce-Price-amount bdi { background: transparent !important; color: inherit !important; }

/* Tax Note */
.chafa-spp .spp-tax-widget { margin-bottom: 20px !important; }
.chafa-spp .spp-tax-note { font-family: 'Inter', sans-serif; font-size: 10.5px; color: #8A7A6A; letter-spacing: 0.3px; font-weight: 300; margin: 0 !important; }

/* Offer Box */
.chafa-spp .spp-offer-widget { margin-bottom: 24px !important; }
.chafa-spp .spp-offer { padding: 12px 14px; border: 0.5px dashed #A8745A; border-radius: 2px; background: #FAF5EE; display: flex; align-items: center; gap: 12px; }
.chafa-spp .spp-offer-icon { width: 34px; height: 34px; background: rgba(168, 116, 90, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #A8745A; flex-shrink: 0; }
.chafa-spp .spp-offer-icon svg { width: 16px; height: 16px; }
.chafa-spp .spp-offer-text { flex: 1; min-width: 0; }
.chafa-spp .spp-offer-title { font-family: 'Inter', sans-serif; font-size: 10.5px; letter-spacing: 1.5px; text-transform: uppercase; color: #1F1A17; font-weight: 500; margin-bottom: 2px; line-height: 1.3; }
.chafa-spp .spp-offer-desc { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 13px; color: #5A4F45; letter-spacing: 0.2px; line-height: 1.4; }
.chafa-spp .spp-offer-code { background: #fff; border: 0.5px solid #A8745A; padding: 6px 10px; font-family: 'Inter', sans-serif; font-size: 9.5px; letter-spacing: 2px; color: #A8745A; font-weight: 600; border-radius: 1px; flex-shrink: 0; cursor: pointer; transition: background 0.3s ease, color 0.3s ease; white-space: nowrap; }
.chafa-spp .spp-offer-code:hover { background: #A8745A; color: #fff; }

/* Add to Cart & Variations */
.chafa-spp .spp-cart-widget { margin-bottom: 20px !important; }
.chafa-spp form.cart { margin: 0 !important; padding: 0 !important; }
.chafa-spp .variations { margin: 0 0 20px !important; width: 100% !important; border: none !important; position: relative; }
.chafa-spp .variations_form .variations th, .chafa-spp .variations_form thead, .chafa-spp .variations_form .variations caption { display: none !important; }
.chafa-spp .variations tbody { display: block !important; }
.chafa-spp .variations tbody tr { display: flex !important; flex-direction: column !important; margin: 0 !important; padding: 0 !important; background: transparent !important; border: none !important; }
.chafa-spp .variations td { display: block !important; padding: 0 !important; border: none !important; background: transparent !important; }
.chafa-spp .variations td.value { width: 100% !important; }
.chafa-spp .variations td.label, .chafa-spp .variations tr td:first-child:not(.value), .chafa-spp .variations_form .variation-name, .chafa-spp .variations_form .product-variation-label { display: none !important; }
.chafa-spp .reset_variations { display: none !important; }
.chafa-spp .variations select { position: absolute !important; opacity: 0 !important; pointer-events: none !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
.chafa-spp .spp-size-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px !important; margin-top: 0 !important; }
.chafa-spp .spp-size-header-label { font-family: 'Inter', sans-serif; font-size: 10px; letter-spacing: 2.5px; text-transform: uppercase; color: #1F1A17; font-weight: 500; }
.chafa-spp .spp-size-header-link { font-family: 'Inter', sans-serif; font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; color: #A8745A; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; transition: gap 0.3s ease; cursor: pointer; font-weight: 400; }
.chafa-spp .spp-size-header-link:hover { gap: 8px; }
/* === SIZE PILLS === */
.chafa-spp .spp-size-pills { 
  display: flex !important; 
  flex-wrap: wrap !important; 
  justify-content: flex-start !important; /* CRITICAL: Forces left alignment */
  gap: 10px !important; /* Slightly increased to match Aachho */
  margin: 0 !important; 
  width: 100% !important;
}

.chafa-spp .spp-size-pill { 
  min-width: 50px; 
  padding: 12px 16px; 
  background: transparent; 
  border: 0.5px solid #1F1A17; 
  color: #1F1A17; 
  font-family: 'Inter', sans-serif; 
  font-size: 11px; 
  font-weight: 500; 
  letter-spacing: 1.5px; 
  text-transform: uppercase; 
  text-align: center; 
  cursor: pointer; 
  border-radius: 2px !important; /* Slightly softer corners like Aachho */
  transition: all 0.2s ease; 
  user-select: none; 
  line-height: 1; 
  margin: 0 !important;
}
.chafa-spp .spp-size-pill:hover { background: #F5EFE5; border-color: #1F1A17; }
.chafa-spp .spp-size-pill.selected { background: #1F1A17; color: #FAF7F2; border-color: #1F1A17; }
.chafa-spp .spp-size-pill.unavailable { opacity: 0.35; text-decoration: line-through; cursor: not-allowed; pointer-events: none; }
.chafa-spp .single_variation_wrap, .chafa-spp .single_variation { margin: 0 !important; padding: 0 !important; }
.chafa-spp .single_variation .price, .chafa-spp .woocommerce-variation-description { display: none !important; }
.chafa-spp .woocommerce-variation-availability { margin: 0 0 12px !important; }
.chafa-spp .woocommerce-variation-availability .stock { margin: 0 !important; }
.chafa-spp .woocommerce-variation-add-to-cart { display: block !important; margin: 0 !important; padding: 0 !important; }
.chafa-spp .quantity, .chafa-spp form.cart .quantity, .chafa-spp .woocommerce-variation-add-to-cart .quantity, .chafa-spp .qty, .chafa-spp .quantity-input, .chafa-spp .elementor-product-quantity { display: none !important; }

/* Add to Cart Button */
html body .chafa-spp .single_add_to_cart_button, html body .chafa-spp button.single_add_to_cart_button, html body .chafa-spp form.cart .single_add_to_cart_button, html body .chafa-spp form.cart button.single_add_to_cart_button, html body .chafa-spp .woocommerce-variation-add-to-cart button, html body .chafa-spp .woocommerce-variation-add-to-cart .single_add_to_cart_button, html body.single-product .chafa-spp .single_add_to_cart_button, html body.woocommerce .chafa-spp .single_add_to_cart_button, html body.woocommerce-page .chafa-spp .single_add_to_cart_button { background: #1F1A17 !important; background-color: #1F1A17 !important; background-image: none !important; color: #FAF7F2 !important; border: 0.8px solid #1F1A17 !important; border-color: #1F1A17 !important; opacity: 1 !important; filter: none !important; text-shadow: none !important; box-shadow: none !important; font-family: 'Inter', sans-serif !important; font-size: 11px !important; font-weight: 400 !important; letter-spacing: 3px !important; text-transform: uppercase !important; padding: 18px 32px !important; width: 100% !important; border-radius: 1px !important; cursor: pointer !important; transition: background-color 0.4s ease, color 0.4s ease !important; display: flex !important; align-items: center !important; justify-content: center !important; margin: 0 !important; }
html body .chafa-spp .single_add_to_cart_button:hover { background: transparent !important; background-color: transparent !important; color: #1F1A17 !important; }
html body .chafa-spp .single_add_to_cart_button.disabled, html body .chafa-spp .single_add_to_cart_button:disabled, html body .chafa-spp .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button { background: #1F1A17 !important; color: #FAF7F2 !important; opacity: 0.4 !important; cursor: not-allowed !important; }
.chafa-spp .stock { font-family: 'Cormorant Garamond', serif !important; font-style: italic !important; font-size: 13px !important; color: #A8745A !important; margin: 0 !important; letter-spacing: 0.3px !important; }
.chafa-spp .out-of-stock { color: #8A7A6A !important; }

/* Bottom Section */
.chafa-spp .spp-bottom-widget { margin: 0 !important; }
.chafa-spp .spp-scarcity { margin: 0 0 18px; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 13px; color: #A8745A; display: flex; align-items: center; gap: 8px; letter-spacing: 0.3px; }
.chafa-spp .spp-scarcity-dot { width: 6px; height: 6px; background: #A8745A; border-radius: 50%; flex-shrink: 0; animation: sppPulse 2s infinite; }
@keyframes sppPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.35; } }
.chafa-spp .spp-wishlist { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; padding: 14px 32px; background: transparent; border: 0.8px solid #1F1A17; color: #1F1A17; font-family: 'Inter', sans-serif; font-size: 10.5px; letter-spacing: 2.5px; text-transform: uppercase; text-decoration: none; font-weight: 400; border-radius: 1px; cursor: pointer; transition: background 0.3s ease, color 0.3s ease; margin: 0 0 22px; }
.chafa-spp .spp-wishlist:hover { background: #1F1A17; color: #FAF7F2; }
.chafa-spp .spp-wishlist svg { width: 13px; height: 13px; flex-shrink: 0; }
.chafa-spp .spp-meta { background: #F5EFE5; padding: 14px 16px; border-radius: 2px; margin: 0 0 22px; }
.chafa-spp .spp-meta-row { display: flex; justify-content: space-between; align-items: center; padding: 5px 0; }
.chafa-spp .spp-meta-row:not(:last-child) { border-bottom: 0.5px solid rgba(229, 221, 208, 0.6); }
.chafa-spp .spp-meta-label { font-family: 'Inter', sans-serif; font-size: 9.5px; letter-spacing: 1.8px; text-transform: uppercase; color: #8A7A6A; font-weight: 400; }
.chafa-spp .spp-meta-value { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 13px; color: #1F1A17; letter-spacing: 0.3px; }
.chafa-spp .spp-trust { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 18px 0; border-top: 0.5px solid #E5DDD0; border-bottom: 0.5px solid #E5DDD0; margin: 0 0 6px; }
.chafa-spp .spp-trust-item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
.chafa-spp .spp-trust-item svg { width: 20px; height: 20px; color: #A8745A; }
.chafa-spp .spp-trust-item span { font-family: 'Inter', sans-serif; font-size: 8.5px; letter-spacing: 1.5px; text-transform: uppercase; color: #5A4F45; font-weight: 400; }
.chafa-spp .spp-accordion { margin: 0; }
.chafa-spp .spp-acc-item { border-bottom: 0.5px solid #E5DDD0; }
.chafa-spp .spp-acc-header { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 16px 0; background: none; border: none; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 10.5px; letter-spacing: 2.5px; text-transform: uppercase; color: #1F1A17; font-weight: 400; text-align: left; }
.chafa-spp .spp-acc-plus { color: #A8745A; font-size: 18px; font-weight: 200; transition: transform 0.3s ease; line-height: 1; }
.chafa-spp .spp-acc-item.open .spp-acc-plus { transform: rotate(45deg); }
.chafa-spp .spp-acc-content { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.4s ease; }
.chafa-spp .spp-acc-item.open .spp-acc-content { max-height: 800px; padding: 0 0 16px; }
.chafa-spp .spp-acc-content p { font-family: 'Inter', sans-serif; font-size: 12.5px; line-height: 1.75; color: #5A4F45; margin: 0 0 10px; font-weight: 300; }
.chafa-spp .spp-acc-content p:last-child { margin-bottom: 0; }

/* Responsive Adjustments */
@media (max-width: 1024px) {
  .chafa-spp .spp-title-widget .product_title, .chafa-spp h1.product_title { font-size: 28px !important; }
  .chafa-spp .spp-price-widget .price ins, .chafa-spp .spp-price-widget .price > .woocommerce-Price-amount { font-size: 22px !important; }
}

@media (max-width: 600px) {
  .chafa-spp .spp-title-widget .product_title, .chafa-spp h1.product_title { font-size: 24px !important; }
  .chafa-spp .spp-tagline { font-size: 13px; }
  .chafa-spp .spp-reviews { gap: 8px; }
  .chafa-spp .spp-review-link { font-size: 8.5px; }
  .chafa-spp .spp-price-widget .price ins, .chafa-spp .spp-price-widget .price > .woocommerce-Price-amount { font-size: 22px !important; }
  .chafa-spp .spp-offer { flex-wrap: wrap; gap: 8px; padding: 10px 12px; }
  .chafa-spp .spp-offer-code { margin-left: 46px; font-size: 9px; padding: 5px 8px; }
  .chafa-spp .spp-offer-title { font-size: 10px; }
  .chafa-spp .spp-offer-desc { font-size: 12px; }
  .chafa-spp .spp-size-pill { min-width: 44px; padding: 11px 13px; font-size: 10.5px; letter-spacing: 1.2px; }
  .chafa-spp .spp-size-header-label { font-size: 9.5px; letter-spacing: 2px; }
  .chafa-spp .spp-size-header-link { font-size: 9.5px; letter-spacing: 1.2px; }
  .chafa-spp .single_add_to_cart_button { padding: 16px 28px !important; font-size: 10.5px !important; letter-spacing: 2.5px !important; }
  .chafa-spp .spp-wishlist { padding: 13px 28px; font-size: 10px; letter-spacing: 2px; }
  .chafa-spp .spp-meta { padding: 12px 14px; }
  .chafa-spp .spp-meta-value { font-size: 12px; }
  .chafa-spp .spp-trust { padding: 16px 0; gap: 6px; }
  .chafa-spp .spp-trust-item span { font-size: 8px; letter-spacing: 1.2px; }
  .chafa-spp .spp-acc-header { font-size: 10px; letter-spacing: 2px; padding: 14px 0; }
  .chafa-spp .spp-acc-content p { font-size: 12px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a298810 *//* ============================================================================
   CHAFA — Section 2: The Craft
   FULL-WIDTH BACKGROUND / 1320PX BOXED CONTENT
   ============================================================================ */

/* 1. Main Wrapper: Stretches background 100% across the screen */
.chafa-craft {
  background-color: #F5EFE5 !important;
  width: 100% !important;
  max-width: 100% !important; /* CRITICAL: Allows background to bleed to edges */
  margin: 0 !important; 
  padding: 80px 0 !important; /* Top and bottom spacing only */
  box-sizing: border-box !important;
  display: block !important;
}

.chafa-craft * { 
  box-sizing: border-box; 
}

/* 2. Inner Wrapper: Locks content to 1320px and aligns with section above */
.chafa-craft .craft-wrap { 
  width: 100% !important; 
  max-width: 1320px !important; 
  margin: 0 auto !important; 
  padding: 0 !important; /* CRITICAL FIX: Removed the 32px padding so it stretches fully */
}
/* 3. Header Content */
.chafa-craft .craft-header { text-align: center; margin: 0 auto 56px; max-width: 640px; }
.chafa-craft .craft-eyebrow { font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 400; letter-spacing: 4px; text-transform: uppercase; color: #A8745A; margin: 0 0 16px; }
.chafa-craft .craft-title { font-family: 'Cormorant Garamond', serif; font-size: 40px; font-weight: 400; line-height: 1.15; color: #1F1A17; letter-spacing: 0.3px; margin: 0 0 16px; }
.chafa-craft .craft-title em { font-style: italic; color: #A8745A; }
.chafa-craft .craft-intro { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 17px; line-height: 1.6; color: #5A4F45; margin: 0; letter-spacing: 0.2px; }

/* 4. Grid & Cards */
.chafa-craft .craft-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 0 0 48px; padding: 0; width: 100%; }

.chafa-craft .craft-card { background: #FAF7F2; padding: 36px 24px; border-radius: 2px; text-align: center; border: 0.5px solid #E5DDD0; position: relative; transition: transform 0.4s ease, box-shadow 0.4s ease; width: 100%; min-width: 0; overflow: hidden; }
.chafa-craft .craft-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px -16px rgba(31, 26, 23, 0.12); }
.chafa-craft .craft-card::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 0; height: 1.5px; background: #A8745A; transition: width 0.4s ease; }
.chafa-craft .craft-card:hover::before { width: 32px; }

/* 5. Icons */
.chafa-craft .craft-icon { width: 56px; height: 56px; margin: 0 auto 22px; display: flex; align-items: center; justify-content: center; background: rgba(168, 116, 90, 0.08); border-radius: 50%; color: #A8745A; transition: background 0.4s ease; }
.chafa-craft .craft-card:hover .craft-icon { background: rgba(168, 116, 90, 0.15); }
.chafa-craft .craft-icon svg { width: 28px !important; height: 28px !important; display: block; }

/* 6. Typography */
.chafa-craft .craft-card-title { font-family: 'Cormorant Garamond', serif; font-size: 19px; font-weight: 500; line-height: 1.3; color: #1F1A17; letter-spacing: 0.2px; margin: 0 0 12px; }
.chafa-craft .craft-card-desc { font-family: 'Inter', sans-serif; font-size: 12.5px; line-height: 1.7; color: #5A4F45; font-weight: 300; margin: 0; letter-spacing: 0.2px; }
.chafa-craft .craft-footer { text-align: center; font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; color: #8A7A6A; margin: 0 auto; max-width: 580px; letter-spacing: 0.3px; line-height: 1.6; padding-top: 32px; border-top: 0.5px solid #E5DDD0; }

/* ============================================
   RESPONSIVE — TABLET
   ============================================ */
@media (max-width: 1024px) {
  .chafa-craft .craft-wrap { padding-left: 24px !important; padding-right: 24px !important; }
  .chafa-craft .craft-title { font-size: 34px; }
  .chafa-craft .craft-intro { font-size: 16px; }
  .chafa-craft .craft-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .chafa-craft .craft-card { padding: 32px 20px; }
  .chafa-craft .craft-card-title { font-size: 18px; }
}

/* ============================================
   RESPONSIVE — MOBILE
   ============================================ */
@media (max-width: 600px) {
  .chafa-craft { padding-top: 50px !important; padding-bottom: 50px !important; }
  .chafa-craft .craft-wrap { padding-left: 20px !important; padding-right: 20px !important; }
  .chafa-craft .craft-header { margin-bottom: 40px; }
  .chafa-craft .craft-eyebrow { font-size: 9.5px; letter-spacing: 3px; margin-bottom: 12px; }
  .chafa-craft .craft-title { font-size: 26px; line-height: 1.2; }
  .chafa-craft .craft-intro { font-size: 14px; line-height: 1.6; }
  .chafa-craft .craft-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; margin-bottom: 36px; }
  .chafa-craft .craft-card { padding: 22px 14px; }
  .chafa-craft .craft-icon { width: 44px; height: 44px; margin-bottom: 14px; }
  .chafa-craft .craft-icon svg { width: 20px !important; height: 20px !important; }
  .chafa-craft .craft-card-title { font-size: 15px; margin-bottom: 8px; }
  .chafa-craft .craft-card-desc { font-size: 11px; line-height: 1.6; }
  .chafa-craft .craft-footer { font-size: 14px; padding-top: 24px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1b58896 *//* ============================================================================
   CHAFA — Single Product Page · Section 3: Customer Notes
   Editorial review layout · PERFECTED PADDING & WIDTH
   ============================================================================ */

/* === SECTION (Handles Background & Top/Bottom Padding) === */
.chafa-notes {
  background: #FAF7F2 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 80px 0 !important; 
  border-bottom: 1px solid #E5DDD0 !important; /* Added separation border */
  box-sizing: border-box !important;
  display: block !important;
}

.chafa-notes * {
  box-sizing: border-box;
}

.chafa-notes * {
  box-sizing: border-box;
}

/* === SELF-CONSTRAINING WRAP (Handles 1320px Width & Left/Right Alignment) === */
.chafa-notes .notes-wrap {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 0 0px !important; /* CRITICAL FIX: Typo removed, exactly matches Craft section alignment */
  box-sizing: border-box !important;
}

/* === HEADER === */
.chafa-notes .notes-header { text-align: center; margin: 0 auto 48px; max-width: 640px; }
.chafa-notes .notes-eyebrow { font-family: 'Inter', sans-serif; font-size: 10px; font-weight: 400; letter-spacing: 4px; text-transform: uppercase; color: #A8745A; margin: 0 0 16px; }
.chafa-notes .notes-title { font-family: 'Cormorant Garamond', serif; font-size: 40px; font-weight: 400; line-height: 1.15; color: #1F1A17; letter-spacing: 0.3px; margin: 0 0 16px; }
.chafa-notes .notes-title em { font-style: italic; color: #A8745A; }
.chafa-notes .notes-intro { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 17px; line-height: 1.6; color: #5A4F45; margin: 0; letter-spacing: 0.2px; }

/* === RATING SUMMARY BAR === */
.chafa-notes .notes-summary { display: flex; align-items: center; justify-content: center; gap: 32px; background: #F5EFE5; padding: 24px 36px; border-radius: 2px; margin: 0 auto 56px; max-width: 720px; }
.chafa-notes .notes-summary-left { text-align: center; }
.chafa-notes .notes-summary-stars { color: #A8745A; font-size: 16px; letter-spacing: 2px; margin-bottom: 6px; }
.chafa-notes .notes-summary-score { font-family: 'Cormorant Garamond', serif; font-size: 32px; font-weight: 500; color: #1F1A17; line-height: 1; }
.chafa-notes .notes-summary-score span { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 14px; color: #8A7A6A; font-weight: 400; margin-left: 4px; }
.chafa-notes .notes-summary-divider { width: 0.5px; height: 50px; background: #E5DDD0; }
.chafa-notes .notes-summary-right { text-align: center; }
.chafa-notes .notes-summary-count { font-family: 'Inter', sans-serif; font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; color: #5A4F45; font-weight: 300; margin-bottom: 8px; }
.chafa-notes .notes-summary-count strong { font-weight: 500; color: #1F1A17; }
.chafa-notes .notes-summary-link { font-family: 'Inter', sans-serif; font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: #A8745A; text-decoration: none; display: inline-flex; align-items: center; gap: 4px; transition: gap 0.3s ease; font-weight: 500; }
.chafa-notes .notes-summary-link:hover { gap: 8px; }

/* === REVIEWS GRID === */
.chafa-notes .notes-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; margin-bottom: 56px; }

/* === INDIVIDUAL REVIEW CARD === */
.chafa-notes .notes-card { background: #FFFFFF; padding: 36px 32px; border-radius: 2px; border: 0.5px solid #E5DDD0; position: relative; display: flex; flex-direction: column; transition: transform 0.4s ease, box-shadow 0.4s ease; }
.chafa-notes .notes-card:hover { transform: translateY(-2px); box-shadow: 0 12px 32px -16px rgba(31, 26, 23, 0.08); }
.chafa-notes .notes-card::before { content: '"'; position: absolute; top: 12px; right: 24px; font-family: 'Cormorant Garamond', serif; font-size: 80px; line-height: 1; color: rgba(168, 116, 90, 0.12); font-weight: 600; }

/* === CARD STARS === */
.chafa-notes .notes-card-stars { color: #A8745A; font-size: 12px; letter-spacing: 2px; margin-bottom: 18px; }

/* === CARD QUOTE === */
.chafa-notes .notes-card-quote { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 16px; line-height: 1.65; color: #1F1A17; margin: 0 0 24px; letter-spacing: 0.2px; flex: 1; }

/* === CARD ATTRIBUTION === */
.chafa-notes .notes-card-attribution { padding-top: 18px; border-top: 0.5px solid #E5DDD0; }
.chafa-notes .notes-card-name { font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: #1F1A17; margin-bottom: 6px; }
.chafa-notes .notes-card-meta { font-family: 'Inter', sans-serif; font-size: 10px; letter-spacing: 1px; text-transform: uppercase; color: #8A7A6A; font-weight: 400; display: flex; align-items: center; gap: 6px; }
.chafa-notes .notes-card-dot { color: #A8745A; }
.chafa-notes .notes-card-verified { color: #A8745A; }

/* === FOOTER (VIEW ALL) === */
.chafa-notes .notes-footer { text-align: center; }
.chafa-notes .notes-view-all { font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 400; letter-spacing: 2.5px; text-transform: uppercase; color: #1F1A17; text-decoration: none; padding: 14px 36px; border: 0.8px solid #1F1A17; border-radius: 1px; display: inline-flex; align-items: center; gap: 6px; transition: background 0.3s ease, color 0.3s ease, gap 0.3s ease; }
.chafa-notes .notes-view-all:hover { background: #1F1A17; color: #FAF7F2; gap: 10px; }

/* ============================================
   RESPONSIVE — TABLET
   ============================================ */
@media (max-width: 1024px) {
  .chafa-notes { padding: 64px 0 !important; }
  .chafa-notes .notes-wrap { padding: 0 24px !important; }
  .chafa-notes .notes-title { font-size: 34px; }
  .chafa-notes .notes-intro { font-size: 16px; }
  .chafa-notes .notes-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .chafa-notes .notes-card { padding: 32px 24px; }
  .chafa-notes .notes-card-quote { font-size: 15px; }
}

/* ============================================
   RESPONSIVE — MOBILE
   ============================================ */
@media (max-width: 600px) {
  .chafa-notes { padding: 48px 0 !important; }
  .chafa-notes .notes-wrap { padding: 0 20px !important; }
  .chafa-notes .notes-header { margin-bottom: 36px; }
  .chafa-notes .notes-eyebrow { font-size: 9.5px; letter-spacing: 3px; margin-bottom: 12px; }
  .chafa-notes .notes-title { font-size: 26px; line-height: 1.2; }
  .chafa-notes .notes-intro { font-size: 14px; line-height: 1.6; }
  
  /* Summary stacks vertically on mobile */
  .chafa-notes .notes-summary { flex-direction: column; gap: 16px; padding: 20px 24px; margin-bottom: 36px; }
  .chafa-notes .notes-summary-divider { width: 50px; height: 0.5px; }
  .chafa-notes .notes-summary-score { font-size: 28px; }
  .chafa-notes .notes-summary-stars { font-size: 14px; }
  
  /* Reviews stack to 1 column on mobile */
  .chafa-notes .notes-grid { grid-template-columns: 1fr; gap: 14px; margin-bottom: 36px; }
  .chafa-notes .notes-card { padding: 26px 22px; }
  .chafa-notes .notes-card::before { font-size: 60px; top: 8px; right: 18px; }
  .chafa-notes .notes-card-stars { font-size: 11px; margin-bottom: 14px; }
  .chafa-notes .notes-card-quote { font-size: 14.5px; line-height: 1.6; margin-bottom: 20px; }
  .chafa-notes .notes-card-name { font-size: 11px; }
  .chafa-notes .notes-card-meta { font-size: 9px; }
  .chafa-notes .notes-view-all { font-size: 10px; letter-spacing: 2px; padding: 13px 28px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3193424 *//* ============================================================================
   CHAFA — Single Product Page · Section 4: The Edit
   PERFECTED PADDING, WIDTH, AND BACKGROUND
   ============================================================================ */

/* === SECTION (Handles Full-Width Background & Top/Bottom Padding) === */
.chafa-edit {
  background: #FAF7F2 !important;
  width: 100% !important;
  max-width: 100% !important; /* CRITICAL: Allows background to bleed to edges */
  margin: 0 !important;
  padding: 80px 0 !important; /* Default Desktop Padding */
  box-sizing: border-box !important;
  display: block !important;
}

.chafa-edit * {
  box-sizing: border-box;
}

/* === HEADER === */
.chafa-edit .edit-header {
  text-align: center;
  margin: 0 auto 56px;
  max-width: 640px;
}

.chafa-edit .edit-eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #A8745A;
  margin: 0 0 16px;
}

.chafa-edit .edit-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.15;
  color: #1F1A17;
  letter-spacing: 0.3px;
  margin: 0 0 16px;
}

.chafa-edit .edit-title em {
  font-style: italic;
  color: #A8745A;
}

.chafa-edit .edit-intro {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 17px;
  line-height: 1.6;
  color: #5A4F45;
  margin: 0;
  letter-spacing: 0.2px;
}

/* ============================================================================
   PRODUCT GRID — Cloned from New Arrivals (class: chafa-edit-grid)
   ============================================================================ */

/* === GRID (Handles 1320px Width & Alignment) === */
.chafa-edit-grid ul.products {
  margin: 0 auto 56px !important;
  padding: 0 !important; /* CRITICAL FIX: Removed the 32px padding so it stretches fully */
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 32px !important;
  list-style: none !important;
  counter-reset: edit-counter;
  max-width: 1320px !important; /* Locks width to perfectly match other sections */
  width: 100% !important;
  box-sizing: border-box !important;
}

.chafa-edit-grid ul.products::before,
.chafa-edit-grid ul.products::after {
  display: none !important;
}

/* === EACH PRODUCT CARD === */
.chafa-edit-grid ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  text-align: left !important;
  float: none !important;
  position: relative !important;
  counter-increment: edit-counter;
  overflow: visible !important;
}

/* === MAIN PRODUCT LINK === */
.chafa-edit-grid ul.products li.product a.woocommerce-loop-product__link {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  position: relative !important;
}

/* === PRODUCT IMAGE === */
.chafa-edit-grid ul.products li.product .woocommerce-loop-product__link img.attachment-woocommerce_thumbnail {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 4 !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 2px !important;
  display: block !important;
  background: #F0EAE0;
  transition: transform 0.7s ease, filter 0.4s ease !important;
  position: relative;
  z-index: 1;
}

.chafa-edit-grid ul.products li.product:hover img.attachment-woocommerce_thumbnail {
  transform: scale(1.05) !important;
  filter: brightness(0.92);
}

/* === HOVER GRADIENT === */
.chafa-edit-grid ul.products li.product::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  aspect-ratio: 3 / 4;
  background: linear-gradient(180deg, rgba(31,26,23,0) 35%, rgba(31,26,23,0.55) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 2;
  pointer-events: none;
  border-radius: 2px;
}

.chafa-edit-grid ul.products li.product:hover::after {
  opacity: 1;
}

/* === N° NUMBER === */
.chafa-edit-grid ul.products li.product::before {
  content: "N°0" counter(edit-counter);
  position: absolute;
  top: 16px;
  left: 16px;
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 15px;
  color: #FAF7F2;
  z-index: 6;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
  letter-spacing: 0.5px;
  pointer-events: none;
}

/* === "VIEW PRODUCT" HOVER INDICATOR === */
.chafa-edit-grid ul.products li.product a.woocommerce-loop-product__link::before {
  content: "View Product";
  position: absolute;
  top: calc(75% + 16px);
  left: 0;
  right: 0;
  background: rgba(250, 247, 242, 0.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #1F1A17;
  text-align: center;
  padding: 12px 16px;
  font-family: 'Inter', sans-serif;
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  z-index: 4;
  margin: 16px;
  margin-top: 0;
  border-radius: 1px;
  opacity: 0;
  transform: translateY(calc(-100% - 16px + 12px));
  transition: opacity 0.4s ease, transform 0.4s ease;
  pointer-events: none;
}

.chafa-edit-grid ul.products li.product:hover a.woocommerce-loop-product__link::before {
  opacity: 1;
  transform: translateY(calc(-100% - 16px));
}

/* === PRODUCT TITLE === */
.chafa-edit-grid ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #1F1A17 !important;
  margin: 22px 0 10px !important;
  padding: 0 !important;
  letter-spacing: 0.2px !important;
  text-transform: none !important;
  display: block !important;
  transition: color 0.3s ease !important;
}

.chafa-edit-grid ul.products li.product:hover .woocommerce-loop-product__title {
  color: #A8745A !important;
}

/* === PRICE === */
.chafa-edit-grid ul.products li.product span.price {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #1F1A17 !important;
  margin: 0 0 4px !important;
  letter-spacing: 0.3px !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  flex-wrap: wrap;
}

.chafa-edit-grid ul.products li.product .woocommerce-Price-amount,
.chafa-edit-grid ul.products li.product .woocommerce-Price-amount bdi {
  color: inherit !important;
  font-weight: inherit !important;
  background: transparent !important;
}

.chafa-edit-grid ul.products li.product .woocommerce-Price-currencySymbol {
  margin-right: 1px;
}

/* === SALE PRICE === */
.chafa-edit-grid ul.products li.product span.price del {
  text-decoration: none !important;
  font-size: 11px !important;
  color: #8A7A6A !important;
  font-weight: 300 !important;
  opacity: 1 !important;
  order: 2 !important;
  background: transparent !important;
}

.chafa-edit-grid ul.products li.product span.price del::before {
  content: "Was ";
  font-style: normal;
  margin-right: 2px;
}

.chafa-edit-grid ul.products li.product span.price ins {
  text-decoration: none !important;
  background: transparent !important;
  font-weight: 500 !important;
  color: #1F1A17 !important;
  order: 1 !important;
}

/* === HIDE UNWANTED WOOCOMMERCE ELEMENTS === */
.chafa-edit-grid ul.products li.product a.add_to_cart_button,
.chafa-edit-grid ul.products li.product a.button,
.chafa-edit-grid ul.products li.product .added_to_cart,
.chafa-edit-grid ul.products li.product .star-rating,
.chafa-edit-grid ul.products li.product span.onsale,
.chafa-edit-grid ul.products li.product .onsale,
.chafa-edit-grid ul.products li.product .screen-reader-text {
  display: none !important;
  visibility: hidden !important;
}

/* === FOOTER (Continue Exploring CTA) === */
.chafa-edit .edit-footer {
  text-align: center;
}

.chafa-edit .edit-view-all {
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: #1F1A17;
  text-decoration: none;
  padding: 14px 36px;
  border: 0.8px solid #1F1A17;
  border-radius: 1px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background 0.3s ease, color 0.3s ease, gap 0.3s ease;
}

.chafa-edit .edit-view-all:hover {
  background: #1F1A17;
  color: #FAF7F2;
  gap: 10px;
}

/* ============================================================================
   RESPONSIVE — TABLET
   ============================================================================ */
@media (max-width: 1024px) {
  .chafa-edit { padding: 64px 0 !important; } /* Re-positioned correctly! */
  .chafa-edit .edit-title { font-size: 34px; }
  .chafa-edit .edit-intro { font-size: 16px; }
  .chafa-edit-grid ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 24px !important; margin-bottom: 48px !important; }
  .chafa-edit-grid ul.products li.product .woocommerce-loop-product__title { font-size: 18px !important; margin: 20px 0 8px !important; }
}

/* ============================================================================
   RESPONSIVE — MOBILE
   ============================================================================ */
@media (max-width: 600px) {
  .chafa-edit { padding: 48px 20px !important; } /* Re-positioned correctly! */
  .chafa-edit .edit-header { margin-bottom: 40px; }
  .chafa-edit .edit-eyebrow { font-size: 9.5px; letter-spacing: 3px; margin-bottom: 12px; }
  .chafa-edit .edit-title { font-size: 26px; line-height: 1.2; }
  .chafa-edit .edit-intro { font-size: 14px; line-height: 1.6; }
  .chafa-edit-grid ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; margin-bottom: 36px !important; }
  .chafa-edit-grid ul.products li.product::before { font-size: 13px; top: 12px; left: 12px; }
  .chafa-edit-grid ul.products li.product .woocommerce-loop-product__title { font-size: 16px !important; margin: 16px 0 8px !important; }
  .chafa-edit-grid ul.products li.product span.price { font-size: 12px !important; }
  .chafa-edit-grid ul.products li.product span.price del { font-size: 10px !important; }
  
  /* Hide hover effects on mobile */
  .chafa-edit-grid ul.products li.product a.woocommerce-loop-product__link::before { display: none; }
  .chafa-edit .edit-view-all { font-size: 10px; letter-spacing: 2px; padding: 13px 28px; }
}/* End custom CSS */