.elementor-kit-4{--e-global-color-primary:#1E4192;--e-global-color-secondary:#0B9F6B;--e-global-color-text:#1D1D1B;--e-global-color-accent:#63BA9A;--e-global-color-0a3a541:#7A7A7A;--e-global-color-ccc0bcc:#FFFFFF;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Nunito Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Nunito Sans";--e-global-typography-accent-font-weight:600;background-color:#F2F2F2;color:var( --e-global-color-text );font-family:"Nunito Sans", Sans-serif;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Nunito Sans", Sans-serif;color:#FFFFFF;border-radius:15px 15px 15px 15px;padding:15px 15px 15px 15px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:var( --e-global-color-accent );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-radius:15px 15px 15px 15px;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:var( --e-global-color-primary );font-family:"Nunito Sans", Sans-serif;}.elementor-kit-4 h1{color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:36px;font-weight:700;}.elementor-kit-4 h2{color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:32px;font-weight:600;}.elementor-kit-4 h3{color:var( --e-global-color-secondary );font-family:"Inter", Sans-serif;font-size:28px;font-weight:600;}.elementor-kit-4 h4{color:var( --e-global-color-secondary );font-family:"Inter", Sans-serif;font-size:24px;font-weight:600;}.elementor-kit-4 h5{color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:22px;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==========================================================
   VARIABLES DE MARCA
   ========================================================== */

:root {
  --sr-primary: #1E4192;
  --sr-accent: #0B9F6B;
  --sr-promo: #0B9F6B;
  --sr-installments: #05aaa6;
  --sr-text: #1D1D1B;
  --sr-muted: #63BA9A;
  --sr-border: #e4e7e9;
  --sr-card-radius: 12px;
}


/* ==========================================================
   TARJETA
   ========================================================== */

.sr-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 438px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid var(--sr-border);
  border-radius: var(--sr-card-radius);
  box-shadow: 0 2px 8px rgba(0, 35, 45, 0.08);
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease;
}

.sr-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 9px 24px rgba(0, 35, 45, 0.13);
}


/* ==========================================================
   IMAGEN
   ========================================================== */

.sr-card-media {
  position: relative;
  min-height: 190px;
  padding: 24px 18px 8px;
}

.sr-product-image,
.sr-product-image .elementor-widget-container,
.sr-product-image a {
  display: block;
  width: 100%;
  height: 100%;
}

.sr-product-image img {
  display: block;
  width: 100% !important;
  height: 158px !important;
  object-fit: contain;
  object-position: center;
}

.sr-card-media .elementor-widget-shortcode,
.sr-card-media .elementor-widget-shortcode .elementor-widget-container,
.sr-card-media .elementor-shortcode {
  position: static;
}


/* ==========================================================
   DISTINTIVOS
   ========================================================== */

.sr-product-badges {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}

.sr-badge {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-family: inherit;
  line-height: 1;
  text-align: center;
  box-shadow: 0 2px 5px rgba(0, 35, 45, 0.13);
}

.sr-badge--discount {
  top: 7px;
  left: 7px;
  flex-direction: column;
  width: 62px;
  min-height: 52px;
  padding: 5px 4px;
  color: var(--sr-accent);
  background: #ffffff;
  border: 1px solid #dce6fa;
  border-radius: 6px;
}

.sr-badge-discount-value {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 2px;
}

.sr-badge-discount-value strong {
  font-size: 16px;
  font-weight: 900;
  letter-spacing: -0.6px;
}

.sr-badge-discount-value span {
  padding-top: 2px;
  font-size: 8px;
  font-weight: 900;
}

.sr-badge--discount small {
  display: block;
  margin-top: 3px;
  font-size: 6px;
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
}

.sr-badge--special {
  top: 7px;
  right: 7px;
  width: 58px;
  min-height: 44px;
  padding: 5px;
  background: var(--sr-promo);
  border-radius: 7px;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
}

.sr-badge--installments {
  top: 137px;
  right: 7px;
  width: 61px;
  min-height: 43px;
  padding: 5px;
  gap: 3px;
  background: var(--sr-installments);
  border-radius: 7px;
}

.sr-badge--installments strong {
  font-size: 20px;
  font-weight: 900;
  letter-spacing: -1px;
}

.sr-badge--installments span {
  font-size: 7px;
  font-weight: 800;
  line-height: 1.05;
  text-align: left;
}


/* ==========================================================
   CONTENIDO
   ========================================================== */

.sr-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 0 13px 17px;
}

.sr-vendor {
  margin: 1px 0 15px;
  color: var(--sr-muted);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.25px;
}

.sr-vendor strong {
  margin-left: 3px;
  color: var(--sr-accent);
  font-weight: 700;
}

.sr-product-title {
  margin: 0 0 11px;
}

.sr-product-title .elementor-heading-title {
  display: -webkit-box;
  min-height: 2.55em;
  overflow: hidden;
  color: var(--sr-text);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.28;
  letter-spacing: 0;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sr-product-title a {
  color: inherit;
}

.sr-product-price {
  margin: 0 0 7px;
}

.sr-product-price .price {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 3px 7px;
  margin: 0;
  color: var(--sr-text);
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
}

.sr-product-price del {
  flex-basis: 100%;
  color: #707b80;
  font-size: 15px;
  font-weight: 400;
  opacity: 0.65;
}

.sr-product-price ins {
  color: var(--sr-text);
  text-decoration: none;
}

.sr-pickup {
  margin-top: 8px;
  color: var(--sr-accent);
  font-size: 14px;
  font-weight: 500;
}


/* ==========================================================
   BOTÓN
   ========================================================== */

.sr-cart-widget {
  margin-top: auto;
}

.sr-cart-widget .elementor-widget-container,
.sr-cart-widget .elementor-shortcode {
  width: 100%;
}

.sr-add-to-cart {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 30px;
  margin: 0 !important;
  padding: 7px 10px !important;
  gap: 7px;
  color: #ffffff !important;
  background: var(--sr-primary) !important;
  border: 0 !important;
  border-radius: 0 0 var(--sr-card-radius) var(--sr-card-radius) !important;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none !important;
  transition:
    filter 0.2s ease,
    background-color 0.2s ease;
}

.sr-add-to-cart:hover {
  color: #ffffff !important;
  filter: brightness(1.13);
}

.sr-add-to-cart i {
  font-size: 15px;
}

.sr-out-of-stock {
  width: 100%;
  padding: 10px;
  color: #ffffff;
  background: #7b8589;
  border-radius: 0 0 var(--sr-card-radius) var(--sr-card-radius);
  font-size: 13px;
  font-weight: 700;
  text-align: center;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 767px) {
  .sr-card {
    min-height: 390px;
  }

  .sr-card-media {
    min-height: 155px;
    padding: 19px 12px 5px;
  }

  .sr-product-image img {
    height: 130px !important;
  }

  .sr-badge--installments {
    top: 108px;
    width: 55px;
  }

  .sr-card-body {
    padding: 0 10px 13px;
  }

  .sr-vendor {
    margin-bottom: 10px;
    font-size: 8px;
  }

  .sr-product-title .elementor-heading-title {
    font-size: 15px;
  }

  .sr-product-price .price {
    font-size: 22px;
  }

  .sr-product-price del {
    font-size: 13px;
  }

  .sr-pickup {
    font-size: 12px;
  }

  .sr-add-to-cart {
    min-height: 36px;
    padding: 9px 5px !important;
    font-size: 12px;
  }
}

/* Altura uniforme de los slides */

.sr-products-carousel .swiper-wrapper {
  align-items: stretch;
}

.sr-products-carousel .swiper-slide {
  height: auto;
}

.sr-products-carousel .e-loop-item {
  height: 100%;
}


/* Flechas */

.sr-products-carousel .elementor-swiper-button {
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 31px;
  height: 31px;
  color: #ffffff;
  background: var(--sr-accent);
  border-radius: 6px;
  box-shadow: none;
  transform: translateY(-50%);
}

.sr-products-carousel .elementor-swiper-button:hover {
  color: #ffffff;
  filter: brightness(0.9);
}

.sr-products-carousel .elementor-swiper-button-prev {
  left: -39px;
}

.sr-products-carousel .elementor-swiper-button-next {
  right: -39px;
}

.sr-products-carousel .elementor-swiper-button svg {
  width: 13px;
  height: 13px;
  fill: currentColor;
}


/* En tablet y celular quedan dentro del carrusel */

@media (max-width: 1024px) {
  .sr-products-carousel .elementor-swiper-button-prev {
    left: 5px;
  }

  .sr-products-carousel .elementor-swiper-button-next {
    right: 5px;
  }
}

@media (max-width: 767px) {
  .sr-products-carousel {
    overflow: hidden;
  }

  .sr-products-carousel .swiper {
    overflow: visible;
  }

  .sr-products-carousel .swiper-slide {
    width: 78vw !important;
    max-width: 295px;
  }
}

/* ==========================================================
   CORRECCIÓN DEFINITIVA DEL BOTÓN AGREGAR AL CARRITO
   Pegar al final del CSS
   ========================================================== */

.sr-cart-widget {
  margin-top: auto;
}

.sr-cart-widget .elementor-widget-container,
.sr-cart-widget .elementor-shortcode {
  width: 100%;
}


/* Botón base */

.sr-add-to-cart {
  position: relative;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-sizing: border-box;
  width: 100% !important;
  min-height: 34px;

  margin: 0 !important;
  padding: 7px 8px !important;
  gap: 5px !important;

  color: #ffffff !important;
  background-color: var(--sr-primary) !important;

  border: 0 !important;
  border-radius:
    0 0
    var(--sr-card-radius)
    var(--sr-card-radius) !important;

  font-family: inherit !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  white-space: nowrap;

  transition:
    filter 0.2s ease,
    background-color 0.2s ease;
}


/* Fuerza el tamaño aunque el shortcode tenga spans internos */

.sr-add-to-cart span,
.sr-add-to-cart strong {
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
}


/* Oculta el ícono original para evitar depender de Font Awesome */

.sr-add-to-cart > i,
.sr-add-to-cart .fa,
.sr-add-to-cart .fas,
.sr-add-to-cart .far,
.sr-add-to-cart .fab,
.sr-add-to-cart .eicon,
.sr-add-to-cart > svg {
  display: none !important;
}


/* Ícono de carrito independiente de Font Awesome */

.sr-add-to-cart::before {
  content: "";
  display: block;

  width: 12px;
  height: 12px;
  flex: 0 0 12px;

  background-color: currentColor;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='9'%20cy='20'%20r='1'/%3E%3Ccircle%20cx='19'%20cy='20'%20r='1'/%3E%3Cpath%20d='M3%204h2l2.4%2010.4a2%202%200%200%200%202%201.6h7.7a2%202%200%200%200%202-1.6L21%208H6'/%3E%3C/svg%3E")
    center / contain no-repeat;

  mask:
    url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='9'%20cy='20'%20r='1'/%3E%3Ccircle%20cx='19'%20cy='20'%20r='1'/%3E%3Cpath%20d='M3%204h2l2.4%2010.4a2%202%200%200%200%202%201.6h7.7a2%202%200%200%200%202-1.6L21%208H6'/%3E%3C/svg%3E")
    center / contain no-repeat;
}


/* Hover */

.sr-add-to-cart:hover,
.sr-add-to-cart:focus {
  color: #ffffff !important;
  background-color: var(--sr-primary) !important;
  filter: brightness(1.13);
}


/* Estado deshabilitado o cargando */

.sr-add-to-cart.disabled,
.sr-add-to-cart.loading,
.sr-add-to-cart:disabled {
  cursor: wait;
  opacity: 0.75;
}


/* ==========================================================
   TABLET
   ========================================================== */

@media (min-width: 768px) and (max-width: 1024px) {
  .sr-add-to-cart {
    min-height: 33px;
    padding: 7px 6px !important;
    gap: 5px !important;
    font-size: 11px !important;
  }

  .sr-add-to-cart::before {
    width: 11px;
    height: 11px;
    flex-basis: 11px;
  }
}


/* ==========================================================
   CELULAR
   ========================================================== */

@media (max-width: 767px) {
  .sr-add-to-cart {
    min-height: 32px;
    padding: 7px 4px !important;
    gap: 4px !important;
    font-size: 10px !important;
    line-height: 1 !important;
  }

  .sr-add-to-cart::before {
    width: 10px;
    height: 10px;
    flex-basis: 10px;
  }
}/* End custom CSS */