.elementor-577 .elementor-element.elementor-element-6c361b75{--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;--gap:48px 48px;--row-gap:48px;--column-gap:48px;--padding-top:100px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-577 .elementor-element.elementor-element-6c361b75:not(.elementor-motion-effects-element-type-background), .elementor-577 .elementor-element.elementor-element-6c361b75 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F2F7F480;}.elementor-577 .elementor-element.elementor-element-63a09d09{--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:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-63a09d09.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-577 .elementor-element.elementor-element-42b09569{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-42b09569.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-577 .elementor-element.elementor-element-7b3cda9f{width:auto;max-width:auto;}.elementor-577 .elementor-element.elementor-element-7b3cda9f > .elementor-widget-container{margin:0px 100px 0px 100px;padding:0px 0px 0px 0px;}.elementor-577 .elementor-element.elementor-element-7b3cda9f.elementor-element{--align-self:center;}.woocommerce .elementor-577 .elementor-element.elementor-element-7b3cda9f .woocommerce-product-gallery__trigger + .woocommerce-product-gallery__wrapper,
					.woocommerce .elementor-577 .elementor-element.elementor-element-7b3cda9f .flex-viewport{border-radius:0px 0px 0px 0px;}.woocommerce .elementor-577 .elementor-element.elementor-element-7b3cda9f .flex-control-thumbs img{border-radius:0px 0px 0px 0px;}.woocommerce .elementor-577 .elementor-element.elementor-element-7b3cda9f .flex-control-thumbs li{padding-right:calc(5px / 2);padding-left:calc(5px / 2);padding-bottom:5px;}.woocommerce .elementor-577 .elementor-element.elementor-element-7b3cda9f .flex-control-thumbs{margin-right:calc(-5px / 2);margin-left:calc(-5px / 2);}.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 );}.elementor-577 .elementor-element.elementor-element-4e758cb .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:24px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:140%;letter-spacing:0px;color:#A52789;}.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 );}.woocommerce .elementor-577 .elementor-element.elementor-element-1da17095 .price{color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:500;text-transform:none;font-style:normal;text-decoration:none;line-height:140%;letter-spacing:0px;}.elementor-577 .elementor-element.elementor-element-e27421a{--display:flex;--min-height:100vh;--gap:30px 10px;--row-gap:30px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-e27421a.e-con{--flex-grow:1;--flex-shrink:0;}.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-577 .elementor-element.elementor-element-18cd0deb > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-577 .elementor-element.elementor-element-18cd0deb .cart button, .elementor-577 .elementor-element.elementor-element-18cd0deb .cart .button{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;background-color:var( --e-global-color-accent );transition:all 0.2s;}.elementor-577 .elementor-element.elementor-element-18cd0deb .added_to_cart{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.elementor-577 .elementor-element.elementor-element-18cd0deb .quantity .qty{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;color:var( --e-global-color-text );transition:all 0.2s;}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart .variations{width:100%;}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations tr th, .woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations tr td{padding-top:calc( 5px/2 );padding-bottom:calc( 5px/2 );}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations label{color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations td.value select{color:var( --e-global-color-text );}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations td.value:before{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;}@media(min-width:768px){.elementor-577 .elementor-element.elementor-element-6c361b75{--content-width:1280px;}.elementor-577 .elementor-element.elementor-element-63a09d09{--width:100%;}.elementor-577 .elementor-element.elementor-element-42b09569{--width:100%;}}@media(max-width:1024px){.elementor-577 .elementor-element.elementor-element-6c361b75{--min-height:0px;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:48px 48px;--row-gap:48px;--column-gap:48px;--padding-top:80px;--padding-bottom:80px;--padding-left:16px;--padding-right:16px;}.elementor-577 .elementor-element.elementor-element-42b09569{--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-4e758cb .elementor-heading-title{font-size:24px;}.woocommerce .elementor-577 .elementor-element.elementor-element-1da17095 .price{font-size:18px;}.elementor-577 .elementor-element.elementor-element-18cd0deb .cart button, .elementor-577 .elementor-element.elementor-element-18cd0deb .cart .button{font-size:14px;}.elementor-577 .elementor-element.elementor-element-18cd0deb .added_to_cart{font-size:14px;}.elementor-577 .elementor-element.elementor-element-18cd0deb .quantity .qty{font-size:14px;}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations label{font-size:14px;}.woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations td.value select, .woocommerce div.product.elementor.elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations td.value:before{font-size:14px;}}@media(max-width:767px){.elementor-577 .elementor-element.elementor-element-6c361b75{--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-577 .elementor-element.elementor-element-63a09d09{--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-577 .elementor-element.elementor-element-42b09569{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-42b09569.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-577 .elementor-element.elementor-element-7b3cda9f{width:100%;max-width:100%;}.elementor-577 .elementor-element.elementor-element-7b3cda9f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-577 .elementor-element.elementor-element-7b3cda9f.elementor-element{--align-self:flex-start;}.elementor-577 .elementor-element.elementor-element-4e758cb .elementor-heading-title{font-size:24px;}.woocommerce .elementor-577 .elementor-element.elementor-element-1da17095 .price{font-size:16px;}.elementor-577 .elementor-element.elementor-element-e27421a{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--z-index:10;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-7b3cda9f */.cfvsw-swatches-option .cfvsw-swatch-inner {
    display: flex
;   font-size: 40px;
    font-weight: bold;
}

.cfvsw-swatches-option .cfvsw-label-option {
    max-height: 100px;
}

.cfvsw-swatches-container .cfvsw-product-container {
        max-height: 100px;

}
.attribute_quantity {
    max-height: 100px;

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-18cd0deb */.cfvsw-swatches-container {
    display: flex;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    flex-flow: wrap;
    padding: 0;
    position: relative;
    box-sizing: border-box;
    grid-gap: 8px;
    width: fit-content;
    gap: 6px;
    flex-wrap: nowrap;
    overflow: hidden;
    max-width: 1200px;
    overflow: scroll;
   
}  

.cfvsw-swatches-container[swatches-attr="attribute_quantity"] .cfvsw-swatches-option {
  flex: 0 0 auto;
  min-width: 80px !important; /* 50% of 200px */
  min-height: 80px !important; /* 50% of 200px */
  border-radius: 3px;
  
}

.cfvsw-selected-label {
    content: " : ";
    font-weight: 800;
        COLOR: BLACK;
    
}
    .woocommerce .elementor-577 .elementor-element.elementor-element-18cd0deb form.cart table.variations label
    { font-weight: bold;
        font-size: 18px
    }
    
    .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    color: #bd10e0;
    font-size: 1.60em;
    font-weight: bold;
    text-decoration: underline 5px;
    text-underline-offset: 5px
    }
    
    .woocommerce-variation .single_variation {padding-bottom:20px;
    
    }
    
    .wapf-wrapper {padding-top: 50px;
        
    }
.cfvsw-swatches-container {
  overflow-x: scroll;    /* always show horizontal scrollbar */
  overflow-y: hidden;
  scrollbar-width: auto; /* Firefox */
  scrollbar-color: #A52789 #c1c1c1;
  white-space: nowrap;
      margin-bottom: 20px;
border-radius: 6px;

    padding-bottom: 15px;
    
}

/* 1) Stack the label (title) ABOVE the swatches on mobile/tablet */
@media (max-width: 1024px) {
  .woocommerce table.variations tr {
    display: grid !important;                 /* turn the row into a 2-row grid */
    grid-template-areas:
      "label"
      "value";
    grid-row-gap: 8px;
    align-items: start;
  }

  .woocommerce table.variations th.label {
    grid-area: label;
    width: 100% !important;
    padding: 0 0 6px !important;              /* small gap under the title */
    text-align: left;
    vertical-align: top;
  }

  .woocommerce table.variations td.value {
    grid-area: value;
    width: 100% !important;
    padding: 0 0 16px !important;             /* space below each swatch row */
    vertical-align: top;
  }
}

/* 2) Make the swatch row a proper horizontal scroller (overrides your conflicts) */
.woocommerce table.variations td .cfvsw-swatches-container {
  width: 100% !important;                     /* override width: fit-content */
  max-width: 100% !important;
  display: flex !important;
  flex-wrap: nowrap !important;               /* keep items on one line */
  gap: 6px;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
  white-space: normal !important;             /* don't fight flex with nowrap */
  min-width: 0 !important;                    /* allow overflow creation */
  border-radius: 6px;
  margin-bottom: 20px;
  padding-bottom: 15px;
  scrollbar-width: auto;                      /* Firefox */
  scrollbar-color: #A52789 #c1c1c1;
}

/* 3) Ensure each swatch tile doesn't shrink and stays full height */
.woocommerce table.variations td .cfvsw-swatches-container .cfvsw-swatches-option {
  flex: 0 0 auto !important;
  display: block;
  overflow: hidden;
}

/* Make the background image fill the swatch tile cleanly */
.cfvsw-swatches-option .cfvsw-swatch-inner {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover !important;
  background-position: center center !important;
  border-radius: inherit;
}

/* 4) Let long titles wrap instead of pushing horizontally */
.woocommerce table.variations th.label label {
  display: block;
  line-height: 1.2;
  white-space: normal !important;
  overflow-wrap: anywhere;    /* breaks long words gracefully */
}

/* Style the custom file upload fields */
.custom-file-upload {
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Style the labels */
.custom-file-upload label {
    font-weight: bold;
    margin-bottom: 5px;
    font-size: 16px;
    color: #333;
}

/* Style the file input */
.custom-file-upload input[type="file"] {
    background-color: #f8f8f8;
    border: 2px dashed #ccc;
    padding: 10px;
    width: 100%;
    max-width: 400px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

/* Change border color on hover */
.custom-file-upload input[type="file"]:hover {
    border-color: #0073aa; /* WooCommerce blue */
}

/* Style the small text (file size limit) */
.custom-file-upload small {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
}

/* Make file input more user-friendly on focus */
.custom-file-upload input[type="file"]:focus {
    outline: none;
    border-color: #ff6600; /* Optional: change to match your theme */
    box-shadow: 0 0 5px rgba(255, 102, 0, 0.5);
}


/* Allow children to escape clipping in Elementor on mobile */
.single-product .elementor-widget-container,
.single-product .elementor-widget-wrap,
.single-product .elementor-column,
.single-product .summary {
  overflow: visible !important;
  position: relative;
  z-index: 1;
}

/* Ensure the value cell can create horizontal overflow */
.woocommerce table.variations td.value {
  min-width: 0 !important;
  overflow: visible !important;
}

/* Single source of truth for the swatch row */
.woocommerce table.variations td .cfvsw-swatches-container {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch !important;
  scroll-behavior: smooth !important;
  white-space: normal !important;    /* let flex manage layout */
  padding-bottom: 12px;
  border-radius: 6px;
}

/* Tiles should not shrink */
.cfvsw-swatches-container .cfvsw-swatches-option {
  flex: 0 0 auto !important;
}

/* Optional: scale large tiles on small screens */
@media (max-width: 480px) {
  [swatches-attr="attribute_quantity"] .cfvsw-swatches-option {
    min-width: 64px !important;
    min-height: 64px !important;
  }
}

/* If you want a label separator, use a pseudo-element */
.cfvsw-selected-label::after { content: " :"; font-weight: 800; color: #000; }

@supports (-webkit-touch-callout: none){ .variable-items-wrapper img{ display:block!important; opacity:1!important; visibility:visible!important; } }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27421a *//* Re-enable Woo price on THIS page only */
.elementor-577 .summary .price,
.elementor-577 .woocommerce-variation-price,
.elementor-577 .single_variation .price,
.elementor-577 .single_variation,
.elementor-577 .woocommerce-variation {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}

/* Make sure nothing is clipping/masking the price area */
.elementor-577 .summary {
  overflow: visible !important;
  -webkit-mask-image: none !important;
          mask-image: none !important;
}

/* Your styling (optional) */
.elementor-577 .summary .price {
  color: #bd10e0;
  font-size: 1.6em;
  font-weight: 700;
  text-decoration: underline 5px;
  text-underline-offset: 5px;
}

.elementor-577 .summary .price,
.elementor-577 .woocommerce-variation-price,
.elementor-577 .single_variation .price { display:block !important; visibility:visible !important; }


/* Make each slide a positioning context */
.woocommerce div.product .woocommerce-product-gallery__image {
  position: relative;
}

/* The little label */
.wc-img-label {
  position: absolute;
  left: 8px;
  bottom: 8px;
  padding: 4px 8px;
  font: 600 12px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: #fff;
  background: rgba(0,0,0,.6);
  border-radius: 4px;
  pointer-events: none;        /* don't block zoom/click */
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .18s ease, transform .18s ease;
  max-width: calc(100% - 16px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Show label on hover/focus (desktop) */
@media (hover: hover) and (pointer: fine) {
  .woocommerce div.product .woocommerce-product-gallery__image:hover .wc-img-label,
  .woocommerce div.product .woocommerce-product-gallery__image:focus-within .wc-img-label {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Optional: always show on touch devices (no hover) */
@media (hover: none) {
  .wc-img-label { opacity: .95; transform: none; }
}


/* Show the swatch's data-title (or change to data-tooltip) on hover */
.cfvsw-swatches-container .cfvsw-swatches-option {
  position: relative; /* anchor the overlay */
}

@media (hover: hover) {
  .cfvsw-swatches-container .cfvsw-swatches-option::after {
    content: attr(data-title);            /* or: attr(data-tooltip) */
    position: absolute;
    left: 0; right: 0; bottom: 0;
    padding: 6px 8px;
    font: 600 13px/1.2 system-ui, sans-serif;
    color: #fff;
    background: rgba(0,0,0,.40);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    pointer-events: none;                 /* don't block clicks */
    opacity: 1;
    transform: translateY(6px);
    transition: opacity .18s ease, transform .18s ease;
  }
  .cfvsw-swatches-container .cfvsw-swatches-option:hover::after,
  .cfvsw-swatches-container .cfvsw-swatches-option:focus-visible::after {
    opacity: 0;
    transform: translateY(0);
  }
}


@supports (-webkit-touch-callout:none){
  .wapf-field{ overflow:visible!important; }
  .wapf-field img{ display:block!important; opacity:1!important; visibility:visible!important; -webkit-transform:translateZ(0); -webkit-backface-visibility:hidden; }
}

/* iOS-only nudge for CartFlows/Clever Variation Swatches */
@supports (-webkit-touch-callout:none){
  .cfvsw-swatches-container img{display:block!important;opacity:1!important;visibility:visible!important}
  .cfvsw-swatches-option{-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden}
  .cfvsw-swatches-container{overflow:visible!important;position:relative;z-index:3}
}/* End custom CSS */