.elementor-56125 .elementor-element.elementor-element-7a05106e{--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;--margin-top:80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:42px;--padding-bottom:42px;--padding-left:16px;--padding-right:16px;}.elementor-56125 .elementor-element.elementor-element-7a05106e:not(.elementor-motion-effects-element-type-background), .elementor-56125 .elementor-element.elementor-element-7a05106e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-56125 .elementor-element.elementor-element-1c59c4b8{--display:flex;--min-height:0px;--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;}.elementor-56125 .elementor-element.elementor-element-1c59c4b8.e-con{--flex-grow:0;--flex-shrink:1;}.woocommerce .elementor-56125 .elementor-element.elementor-element-2ecd812 .flex-viewport:not(:last-child){margin-bottom:0px;}.woocommerce .elementor-56125 .elementor-element.elementor-element-2ecd812 .flex-control-thumbs li{padding-right:calc(0px / 2);padding-left:calc(0px / 2);padding-bottom:0px;}.woocommerce .elementor-56125 .elementor-element.elementor-element-2ecd812 .flex-control-thumbs{margin-right:calc(-0px / 2);margin-left:calc(-0px / 2);}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-56125 .elementor-element.elementor-element-a7e4684 img{width:80%;}.elementor-56125 .elementor-element.elementor-element-78f8274a{--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;}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-56125 .elementor-element.elementor-element-6880d3b0{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-56125 .elementor-element.elementor-element-6880d3b0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:24px;font-weight:700;line-height:30px;letter-spacing:-0.8px;color:var( --e-global-color-text );}.woocommerce .elementor-56125 .elementor-element.elementor-element-1493d99 .star-rating{color:#EDC438;}.woocommerce .elementor-56125 .elementor-element.elementor-element-1493d99 .star-rating::before{color:#EDC438;}.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-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.woocommerce .elementor-56125 .elementor-element.elementor-element-5f773c89 .price{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-56125 .elementor-element.elementor-element-57dd6554{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-56125 .elementor-element.elementor-element-57dd6554 .elementor-divider-separator{width:100%;}.elementor-56125 .elementor-element.elementor-element-57dd6554 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-56125 .elementor-element.elementor-element-4394d945{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-56125 .elementor-element.elementor-element-7c034c58 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:30px;font-weight:700;color:var( --e-global-color-accent );}.elementor-56125 .elementor-element.elementor-element-221fa39d{--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;--justify-content:space-around;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-56125 .elementor-element.elementor-element-43857813{--divider-border-style:solid;--divider-color:#000;--divider-border-width:1px;}.elementor-56125 .elementor-element.elementor-element-43857813 .elementor-divider-separator{width:100%;}.elementor-56125 .elementor-element.elementor-element-43857813 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-56125 .elementor-element.elementor-element-9645c36{--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;--justify-content:space-between;}.elementor-56125 .elementor-element.elementor-element-7e07a1fd .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:30px;font-weight:700;color:var( --e-global-color-accent );}.elementor-56125 .elementor-element.elementor-element-55bce9fe{--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;--justify-content:space-around;--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-56125 .elementor-element.elementor-element-55bce9fe.e-con{--flex-grow:0;--flex-shrink:1;}.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-56125 .elementor-element.elementor-element-64604aa9 .cart button, .elementor-56125 .elementor-element.elementor-element-64604aa9 .cart .button{color:var( --e-global-color-primary );background-color:var( --e-global-color-secondary );border-color:var( --e-global-color-primary );transition:all 0.2s;}.elementor-56125 .elementor-element.elementor-element-64604aa9 .quantity .qty{transition:all 0.2s;}.elementor-56125 .elementor-element.elementor-element-2b650b63{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-56125 .elementor-element.elementor-element-6b5fc59{--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:80px;--padding-bottom:80px;--padding-left:16px;--padding-right:16px;}.elementor-56125 .elementor-element.elementor-element-71adde0{text-align:center;}.elementor-56125 .elementor-element.elementor-element-71adde0 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:700;color:var( --e-global-color-5a2e2f1 );}.elementor-56125 .elementor-element.elementor-element-617d4b7f{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:500;}.elementor-56125 .elementor-element.elementor-element-539cff91{--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:42px;--padding-bottom:42px;--padding-left:16px;--padding-right:16px;}.elementor-56125 .elementor-element.elementor-element-5c63fd18 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:32px;font-weight:600;letter-spacing:-0.8px;color:var( --e-global-color-secondary );}.elementor-56125 .elementor-element.elementor-element-6a72b101{--swiper-slides-to-display:4;--swiper-slides-gap:10px;--arrow-prev-left-align:0%;--arrow-prev-translate-x:0px;--arrow-prev-left-position:0px;--arrow-prev-top-align:50%;--arrow-prev-translate-y:-50%;--arrow-prev-top-position:0px;--arrow-next-right-align:0%;--arrow-next-translate-x:0%;--arrow-next-right-position:0px;--arrow-next-top-align:50%;--arrow-next-translate-y:-50%;--arrow-next-top-position:0px;}.elementor-56125 .elementor-element.elementor-element-6a72b101 .swiper-slide > .elementor-element{height:100%;}@media(min-width:768px){.elementor-56125 .elementor-element.elementor-element-7a05106e{--content-width:83%;}.elementor-56125 .elementor-element.elementor-element-1c59c4b8{--width:60%;}.elementor-56125 .elementor-element.elementor-element-78f8274a{--width:40%;}.elementor-56125 .elementor-element.elementor-element-55bce9fe{--width:30%;}.elementor-56125 .elementor-element.elementor-element-2b650b63{--content-width:83%;}.elementor-56125 .elementor-element.elementor-element-6b5fc59{--width:80%;}.elementor-56125 .elementor-element.elementor-element-539cff91{--content-width:83%;}}@media(max-width:1024px) and (min-width:768px){.elementor-56125 .elementor-element.elementor-element-7a05106e{--content-width:95%;}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-widget-woocommerce-product-price .price{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-56125 .elementor-element.elementor-element-5f773c89 .price{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-56125 .elementor-element.elementor-element-6a72b101{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-widget-woocommerce-product-price .price{font-size:var( --e-global-typography-primary-font-size );}.woocommerce .elementor-56125 .elementor-element.elementor-element-5f773c89 .price{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-56125 .elementor-element.elementor-element-6a72b101{--swiper-slides-to-display:1;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-2ecd812 *//* ============================================ */
/* 1. IMAGEN PRINCIPAL CUADRADA Y COMPLETA       */
/* ============================================ */
.custom-product-gallery__main {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  max-height: 600px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
}

.custom-product-gallery__main-trigger {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.custom-product-gallery__main-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* ============================================ */
/* 2. CONTENEDOR DE MINIATURAS                   */
/* ============================================ */
.custom-product-gallery__thumbs {
  position: relative !important;
  max-height: 500px !important;
  overflow-y: scroll !important;
  scroll-behavior: smooth;
  overscroll-behavior: contain;
  padding-top: 34px !important;
  padding-bottom: 34px !important;
  pointer-events: auto !important;

  -webkit-mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 8%,
    black 92%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to bottom,
    transparent 0%,
    black 8%,
    black 92%,
    transparent 100%
  );
}

.custom-product-gallery__thumbs::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
}
.custom-product-gallery__thumbs {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

.custom-product-gallery__thumb.is-active {
  border: 2px solid #CEFF00 !important;
  border-radius: 4px;
}

/* ============================================ */
/* 3. FLECHAS estilo Ecolife (negro + lima)      */
/* ============================================ */
.gallery-thumb-arrow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1B1B1B;
  border: 2px solid #1B1B1B;
  cursor: pointer;
  z-index: 10;
  transition: background 0.2s, border-color 0.2s;
}

.gallery-thumb-arrow svg {
  width: 12px;
  height: 12px;
  stroke: #FFFFFF;
  transition: stroke 0.2s;
}

.gallery-thumb-arrow:hover {
  background: #FFFFFF;
  border-color: #CEFF00;
}

.gallery-thumb-arrow:hover svg {
  stroke: #1B1B1B;
}

.gallery-thumb-arrow--up {
  top: 0;
}

.gallery-thumb-arrow--down {
  bottom: 0;
}

/* ============================================ */
/* 4. BLOQUE SUBTOTAL / TOTAL (Opción A - widgets nativos) */
/* ============================================ */
.order-summary-row {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  color: #1B1B1B;
}

.order-summary-row .elementor-heading-title,
.order-summary-row p {
  margin: 0;
}

.order-summary-name {
  color: #6B6B6B;
  font-size: 14px !important;
}

.order-summary-price {
  color: #1B1B1B;
  font-size: 14px !important;
  font-weight: 600;
}

.order-summary-divider {
  border: none;
  border-top: 1px solid #E5E5E5;
  margin: 14px 0;
}

.order-summary-total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

.order-summary-total-label {
  font-size: 20px !important;
  font-weight: 700;
  color: #1B1B1B;
}

.order-summary-total-price {
  font-size: 22px !important;
  font-weight: 700;
  color: #61CE70 !important;
}

.order-summary-note {
  font-size: 11px !important;
  color: #999 !important;
  margin-top: 4px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1c59c4b8 */.elementor-section, .e-con {
  overflow: visible !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-title, class: .elementor-element-6880d3b0 */font-size: 28px;
font-weight: 700;
color: #1B1B1B;/* End custom CSS */
/* Start custom CSS for woocommerce-product-price, class: .elementor-element-5f773c89 */.product-price-ecolife {
  font-size: 24px;
  font-weight: 700;
  color: #1B1B1B;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4394d945 *//* ============================================ */
/* 4. BLOQUE SUBTOTAL / TOTAL                    */
/* ============================================ */

.order-summary-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #3FA34D !important; /* verde oscuro Ecolife */
  text-transform: uppercase;
}

.order-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 14px;
  padding: 10px 0;
}

.order-summary-name {
  color: #6B6B6B !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.order-summary-price {
  color: #1B1B1B !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap;
}

.order-summary-divider {
  border: none;
  border-top: 1px solid #E5E5E5;
  margin: 10px 0;
}

.order-summary-total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 6px 0;
}

.order-summary-total-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #3FA34D !important; /* verde oscuro Ecolife */
  text-transform: uppercase;
}

.order-summary-total-price {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1B1B1B !important;
}

.order-summary-note {
  font-size: 11px !important;
  color: #999 !important;
  margin-top: 2px !important;
  display: block;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9645c36 *//* ============================================ */
/* 4. BLOQUE SUBTOTAL / TOTAL                    */
/* ============================================ */

.order-summary-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #3FA34D !important; /* verde oscuro Ecolife */
  text-transform: uppercase;
}

.order-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 14px;
  padding: 10px 0;
}

.order-summary-name {
  color: #6B6B6B !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.order-summary-price {
  color: #1B1B1B !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap;
}

.order-summary-divider {
  border: none;
  border-top: 1px solid #E5E5E5;
  margin: 10px 0;
}

.order-summary-total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 6px 0;
}

.order-summary-total-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #3FA34D !important; /* verde oscuro Ecolife */
  text-transform: uppercase;
}

.order-summary-total-price {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1B1B1B !important;
}

.order-summary-note {
  font-size: 11px !important;
  color: #999 !important;
  margin-top: 2px !important;
  display: block;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-64604aa9 */.woocommerce div.product form.cart {
  display: flex;
  align-items: center;
  gap: 16px !important;
}

.woocommerce div.product form.cart .quantity {
  margin: 0 !important;
}

.woocommerce div.product form.cart button.single_add_to_cart_button {
  width: auto !important;
  min-width: 180px;
  background: #1B1B1B;
  color: #FFFFFF;
  border: 2px solid #1B1B1B;
  border-radius: 8px !important; /* menos redondeado, tipo "rounded" no píldora */
  padding: 14px 32px !important;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.5px;
  font-size: 13px;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.woocommerce div.product form.cart button.single_add_to_cart_button:hover {
  background: #FFFFFF;
  color: #1B1B1B;
  border-color: #CEFF00;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-78f8274a *//* ============================================ */
/* 4. BLOQUE SUBTOTAL / TOTAL (tamaños ajustados) */
/* ============================================ */

.order-summary-label {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #1B1B1B !important;
  text-transform: none !important;
}

.order-summary-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 14px;
  padding: 10px 0;
}

.order-summary-name {
  color: #6B6B6B !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.order-summary-price {
  color: #1B1B1B !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap;
}

.order-summary-divider {
  border: none;
  border-top: 1px solid #E5E5E5;
  margin: 10px 0;
}

.order-summary-total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 6px 0;
}

.order-summary-total-label {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #1B1B1B !important;
  text-transform: none !important;
}

.order-summary-total-price {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1B1B1B !important;
}

.order-summary-note {
  font-size: 11px !important;
  color: #999 !important;
  margin-top: 2px !important;
  display: block;
}/* End custom CSS */