.elementor-kit-12{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-bb0e742:#3BB143;--e-global-color-cd2993c:#FFFFFF;--e-global-color-5b3b1fa:#1F5D23;--e-global-color-68f1926:#2F8434;--e-global-color-5a6b06d:#FF0000;--e-global-color-a8e7e1e:#FFD800;--e-global-color-6a8a38d:#FF6767;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.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);}@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 *//**********************************************
 PUNTOGANGA – HOJA CSS LIMPIA Y ORDENADA
 Comentada por bloques para poder tocar / desactivar
 sin volar todo el diseño.
***********************************************/

/*============================================
 1) MENÚ PRINCIPAL (Elementor Nav Menu)
   – Quita descripciones
   – Alinea ítems al estilo LOI
=============================================*/

/* Oculta la descripción de los ítems del menú */
.elementor-nav-menu .menu-item-description {
  display: none !important;
}

/* Alinea el contenido del enlace en una fila centrada */
.elementor-nav-menu a {
  display: flex;
  align-items: center;
  line-height: 1;
}

/* Elimina espacios verticales extra entre ítems */
.elementor-nav-menu .menu-item {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/*============================================
 2) SECTOR "OFERTAS" TIPO LOI
   Contenedor: #pg-ofertas
   – Carrusel horizontal simple con ul.products
=============================================*/

/* Oculta contador, orden y paginación dentro de pg-ofertas */
#pg-ofertas .woocommerce-result-count,
#pg-ofertas .woocommerce-ordering,
#pg-ofertas .woocommerce-pagination {
  display: none !important;
}

/* Fila scrolleable tipo carrusel */
#pg-ofertas ul.products {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  gap: 18px;
  margin: 0;
  padding: 10px 0 15px;
}

/* Tarjeta de producto */
#pg-ofertas ul.products li.product {
  flex: 0 0 220px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  padding: 12px;
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* Hover */
#pg-ofertas ul.products li.product:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

/* Imagen del producto */
#pg-ofertas ul.products li.product img {
  width: 100%;
  max-height: 170px;
  object-fit: cover;
  border-radius: 12px;
  margin-bottom: 8px;
}

/* Título */
#pg-ofertas ul.products li.product .woocommerce-loop-product__title {
  font-size: 15px;
  font-weight: 600;
  color: #222222;
  margin: 6px 0;
  min-height: 40px;
  overflow: hidden;
}

/* Precio */
#pg-ofertas ul.products li.product .price {
  margin-top: 4px;
  font-size: 15px;
}
#pg-ofertas ul.products li.product .price del {
  color: #888888;
  font-size: 13px;
}
#pg-ofertas ul.products li.product .price ins {
  color: #0b7d4a;
  font-weight: 700;
  text-decoration: none;
}

/* Botón dentro de pg-ofertas */
#pg-ofertas ul.products li.product .button {
  display: block;
  margin-top: 10px;
  background-color: #0b7d4a;
  color: #ffffff !important;
  border-radius: 10px;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: 600;
  border: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
#pg-ofertas ul.products li.product .button:hover {
  background-color: #095d38;
  transform: scale(1.03);
}

/* Oculta estrellas si aparecen */
#pg-ofertas .star-rating {
  display: none !important;
}

/* Scrollbar finito */
#pg-ofertas ul.products::-webkit-scrollbar {
  height: 8px;
}
#pg-ofertas ul.products::-webkit-scrollbar-thumb {
  background: #0b7d4a;
  border-radius: 4px;
}
#pg-ofertas ul.products::-webkit-scrollbar-track {
  background: transparent;
}

/* Responsive ofertas */
@media (max-width: 768px) {
  #pg-ofertas ul.products li.product {
    flex: 0 0 180px;
  }
}


/*============================================
 3) BOTONES "AÑADIR AL CARRITO" – ESTILO GLOBAL
   IMPORTANTE: aquí estaba el conflicto antes.
   – No se esconde el texto
   – Compatible con Royale Addons y otros plugins
=============================================*/

/* Estilo general para cualquier botón de añadir al carrito */
.add_to_cart_button,
.button.add_to_cart_button,
.wcpcsu-product-addtocart a,
.wcpcsu-button {
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 16px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  align-items: center;
  gap: 6px;
}
/* Hover global – NO tocar los botones de Royale (.wpr-button-effect) */
.add_to_cart_button:not(.wpr-button-effect):hover,
.button.add_to_cart_button:not(.wpr-button-effect):hover,
.wcpcsu-product-addtocart a:hover,
.wcpcsu-button:hover {
  background-color: #095d38 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}






/* Evita mayúsculas forzadas en algunos plugins */
.wcpcsu-product-addtocart a,
.add_to_cart_button,
.button.add_to_cart_button {
  text-transform: none !important;
}


/*============================================
 4) CARRUSELES DE CATEGORÍAS – CLASES PERSONALIZADAS
   – .pg-cats-row  (estructura vieja)
   – .pg-cat-section / .pg-cat-item
   – .pg-cat-mobile (solo móvil)
=============================================*/

/* ----- Versión antigua: fila horizontal usando .pg-cats-row ----- */
@media (max-width: 768px) {
  .pg-cats-row {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 16px;
    padding: 0 16px 10px;
    scroll-snap-type: x mandatory;
  }

  .pg-cats-row .pg-cat-item {
    flex: 0 0 60%;
    max-width: 60%;
    scroll-snap-align: start;
  }

  .pg-cats-row::-webkit-scrollbar { display: none; }
}

/* ----- Versión nueva: bloque de categorías principal ----- */

/* Escritorio: grid centrada */
.pg-cat-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  padding: 20px 0;
  overflow: visible !important;
}

/* Tarjeta individual de categoría */
.pg-cat-section .pg-cat-item {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.08);
  padding: 18px 10px;
  text-align: center;
  width: 160px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  cursor: pointer;
}

/* Imagen circular */
.pg-cat-section .pg-cat-item img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 50%;
  margin-bottom: 10px;
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}

/* Texto */
.pg-cat-section .pg-cat-item h3,
.pg-cat-section .pg-cat-item .elementor-heading-title {
  font-size: 15px;
  font-weight: 600;
  color: #222222;
  margin: 0;
  line-height: 1.3;
}

/* Hover escritorio */
.pg-cat-section .pg-cat-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 22px rgba(0,0,0,0.16);
}
.pg-cat-section .pg-cat-item:hover img {
  transform: scale(1.07);
}

/* Móvil: convertir .pg-cat-section en carrusel horizontal */
@media (max-width: 768px) {
  .pg-cat-section {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto !important;
    overflow-y: hidden;
    gap: 14px;
    padding: 16px 12px 24px;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
  }

  .pg-cat-section .pg-cat-item {
    flex: 0 0 45%;
    max-width: 45%;
    min-width: 45%;
    scroll-snap-align: start;
  }

  .pg-cat-section::-webkit-scrollbar { display: none; }
}

/* ----- Variante: .pg-cat-mobile (solo en móvil) ----- */
:root{
  --pg-card-bg: #ffffff;
  --pg-card-radius: 18px;
  --pg-card-shadow: 0 6px 18px rgba(0,0,0,0.08);
  --pg-text: #1F2D2A;
}

/* Contenedor horizontal */
@media (max-width: 768px){
  .pg-cat-mobile{
    display: flex;
    flex-wrap: nowrap;
    gap: 14px;
    padding: 10px 12px 24px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .pg-cat-mobile::-webkit-scrollbar{ display: none; }

  .pg-cat-mobile .pg-cat-item{
    background: var(--pg-card-bg);
    border-radius: var(--pg-card-radius);
    box-shadow: var(--pg-card-shadow);
    text-align: center;
    padding: 18px 12px;
    flex: 0 0 46%;
    min-width: 46%;
    max-width: 46%;
    scroll-snap-align: start;
    transition: transform .2s ease, box-shadow .2s ease;
  }

  .pg-cat-mobile .pg-cat-item a{
    display:block;
    color: inherit;
    text-decoration: none;
  }

  .pg-cat-mobile .pg-cat-item img{
    display: block;
    width: 96px;
    height: 96px;
    margin: 0 auto 10px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0,0,0,.12);
    transition: transform .2s ease;
  }

  .pg-cat-mobile .pg-cat-item h3,
  .pg-cat-mobile .pg-cat-item .elementor-heading-title{
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    color: var(--pg-text);
    letter-spacing: .2px;
    line-height: 1.25;
  }

  .pg-cat-mobile .pg-cat-item:active{
    transform: scale(.98);
    box-shadow: 0 10px 22px rgba(0,0,0,.12);
  }
}

/* Si la pantalla es MUY chica (por ejemplo 320px) */
@media (max-width: 360px){
  .pg-cat-mobile .pg-cat-item{
    flex-basis: 60%;
    min-width: 60%;
    max-width: 60%;
  }
}


/*============================================
 5) HERO PRINCIPAL – CARRUSEL SUPERIOR (pg-hero)
=============================================*/

.pg-hero {
  position: relative;
  padding: 0 !important;
  --hero-radius: 22px;
  --hero-shadow: 0 10px 28px rgba(0,0,0,.10);
  --arrow-bg: #fff;
  --arrow-color: #6B7280;
  --arrow-shadow: 0 6px 18px rgba(0,0,0,.12);
  --dot: #d1d5db;
  --dot-active: #111827;
}

/* Redondeo y sombra del carrusel */
.pg-hero .elementor-image-carousel-wrapper,
.pg-hero .elementor-swiper,
.pg-hero .swiper-container,
.pg-hero .swiper {
  border-radius: var(--hero-radius);
  box-shadow: var(--hero-shadow);
  overflow: hidden;
}

/* Imagenes responsive */
.pg-hero .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
}

/* Flechas */
.pg-hero .elementor-swiper-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #fff;
  color: #ffffff;
  box-shadow: 0 6px 18px rgba(0,0,0,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .2s ease, box-shadow .2s ease, transform .15s ease;
}

.pg-hero .elementor-swiper-button:before {
  line-height: 1;
  font-size: 18px;
  color: currentColor;
}

.pg-hero .elementor-swiper-button-prev { left: -12px; }
.pg-hero .elementor-swiper-button-next { right: -12px; }

.pg-hero .elementor-swiper-button:hover {
  color: #6B7280;
  box-shadow: 0 8px 22px rgba(0,0,0,.16);
}

.pg-hero .elementor-swiper-button:active {
  transform: translateY(-50%) scale(.97);
}

/* Mobile */
@media (max-width:767px){
  .pg-hero .elementor-swiper-button {
    width: 38px;
    height: 38px;
  }
  .pg-hero .elementor-swiper-button-prev { left: -8px; }
  .pg-hero .elementor-swiper-button-next { right: -8px; }
}

/* Bullets */
.pg-hero .swiper-pagination-bullets { bottom: 12px; }
.pg-hero .swiper-pagination-bullet {
  width: 7px; height: 7px;
  background: var(--dot);
  opacity: 1;
  margin: 0 3px !important;
}
.pg-hero .swiper-pagination-bullet-active {
  background: var(--dot-active);
  width: 20px;
  border-radius: 999px;
}


/*============================================
 6) PALETA GENERAL
=============================================*/
:root{
  --pg-green: #2f6f4e;
  --pg-green-600:#275c40;
  --pg-orange:#ff6a00;
  --pg-bg:#f6f7f8;
  --pg-surface:#ffffff;
  --pg-border:#e9ecef;
  --pg-shadow: 0 10px 30px rgba(16,24,40,.06),
               0 2px 6px rgba(16,24,40,.04);
}


/*============================================
 7) CARDS MOBILE GENERALES (cats-row-mobile)
   – Usado en otros sliders pequeños
=============================================*/
@media (max-width: 767px) {

  .cats-row-mobile {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 14px;
    padding: 12px;
    scroll-snap-type: x mandatory;
  }
  .cats-row-mobile::-webkit-scrollbar { display: none; }

  .cats-row-mobile .cat-card {
    flex: 0 0 78% !important;
    max-width: 78% !important;
    height: 220px !important;
    min-height: 220px !important;
    padding: 14px !important;
    border-radius: 22px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    scroll-snap-align: start;
  }

  .cats-row-mobile .cat-card:first-child {
    flex: 0 0 78% !important;
    max-width: 78% !important;
    height: 220px !important;
    min-height: 220px !important;
  }

  .cats-row-mobile .cat-card h2,
  .cats-row-mobile .cat-card h3,
  .cats-row-mobile .cat-card .promo-box-title {
    font-size: 20px !important;
    margin: 4px 0 4px !important;
    text-align: center !important;
  }

  .cats-row-mobile .cat-card .rbea-promo-img,
  .cats-row-mobile .cat-card img {
    max-height: 120px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block;
    margin: 0 auto !important;
    transform: translateY(-14px);
  }
}


/*============================================
 8) BLOQUES TIPO LOI – .pg-block
   – Cajones blancos que envuelven carruseles
=============================================*/

/* Caja principal */
.elementor .e-con.pg-block {
  max-width: 1900px;
  margin: 40px auto;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 26px 32px;
  box-shadow: 0 12px 32px rgba(16,24,40,.06),
              0 4px 10px rgba(16,24,40,.04);
  overflow: hidden;
}

/* Cabecera y título */
.pg-block__header,
.pg-block .pg-block__title{
  display: flex;
  align-items: center;
  gap: 10px;
}

.pg-block .pg-block__title{
  font-size: clamp(22px, 2.8vw, 34px);
  line-height: 1.15;
  color: var(--pg-green);
  font-weight: 800;
  margin-bottom: clamp(10px, 1.4vw, 14px);
}




/* Imagen */
.pg-block li.product .woocommerce-LoopProduct-link img,
.pg-block .product img{
  border-bottom: 1px solid var(--pg-border);
  object-fit: cover;
}

/* Título de producto */
.pg-block li.product .woocommerce-loop-product__title,
.pg-block .product .woocommerce-loop-product__title{
  font-weight: 700;
  font-size: clamp(14px, 1.6vw, 18px);
  line-height: 1.3;
}




/* Flechas de sliders dentro de pg-block */
.pg-block .swiper-button-prev,
.pg-block .swiper-button-next,
.pg-block .slick-prev,
.pg-block .slick-next{
  width: 38px; height: 38px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--pg-border);
  box-shadow: 0 6px 18px rgba(16,24,40,.10);
  display: grid; place-items: center;
  transition: .2s ease;
}
.pg-block .swiper-button-prev:hover,
.pg-block .swiper-button-next:hover,
.pg-block .slick-prev:hover,
.pg-block .slick-next:hover{
  background:#f2f4f7;
  transform: translateY(-1px);
}
.pg-block .swiper-button-prev:after,
.pg-block .swiper-button-next:after{
  color:#6b7280;
  font-size: 16px;
  font-weight: 900;
}

/* Bullets de sliders */
.pg-block .swiper-pagination-bullets .swiper-pagination-bullet{
  width: 8px; height: 8px; opacity: .35;
  background:#9ca3af;
}
.pg-block .swiper-pagination-bullets .swiper-pagination-bullet-active{
  opacity: 1; background: var(--pg-green);
}

/* Responsive pg-block */
@media (max-width: 1024px){
  .pg-block{ border-radius: 18px; }
}
@media (max-width: 767px){
  .pg-block{
    padding: 16px 14px;
    border-radius: 16px;
    margin: 18px 0;
  }
  .pg-block .pg-block__title{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    width:100%;
    display:block;
  }
  .pg-block__more{ display:none; }
}





/*============================================
 10) SECCIONES DE PRODUCTOS (deals-section)
   – Ajustes de espacio en MOBILE
=============================================*/
@media (max-width: 768px) {

  /* Caja blanca padre */
  section.deals-section {
    padding-top: 6px !important;
    padding-bottom: 10px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Quita paddings y márgenes internos */
  section.deals-section > .elementor-container,
  section.deals-section .e-con,
  section.deals-section .elementor-column,
  section.deals-section .elementor-widget-wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Título dentro de deals-section */
  section.deals-section .elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.1 !important;
    margin-top: 20px !important;
    margin-bottom: 2px !important;
  }

  /* Línea gris (divider) pegada al título */
  section.deals-section .elementor-widget-divider {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }

  /* Separación entre bloques consecutivos */
  section.deals-section + section.deals-section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}


/*============================================
 11) CARRUSEL SUPERIOR CON ROYALE – .pg-woo-carousel
=============================================*/

/* Contenedor general (Royal Woo Grid/Slider/Carousel) */
.pg-woo-carousel {
  padding-top: 10px;
  padding-bottom: 20px;
}

/* Tarjeta de producto */
.pg-woo-carousel li.product {
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  margin: 0 12px;
  padding: 18px 18px 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Imagen cuadrada */
.pg-woo-carousel li.product img {
  width: 100%;
  max-width: 260px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 14px;
  margin-bottom: 16px;
}

/* Título */
.pg-woo-carousel li.product .woocommerce-loop-product__title {
  font-size: 18px;
  font-weight: 600;
  color: #1e452f;
  text-align: center;
  margin: 8px 0 10px;
}

/* Precio */
.pg-woo-carousel li.product .price {
  font-size: 16px;
  font-weight: 600;
  color: #e6681b;
  margin-bottom: 10px;
}
.pg-woo-carousel li.product .price del {
  color: #a5a5a5;
  font-weight: 400;
  margin-right: 4px;
}

/* Badge de oferta */
.pg-woo-carousel li.product .onsale {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #ffffff;
  color: #e6681b;
  border: 2px solid #e6681b;
  border-radius: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  z-index: 3;
}

/* Botón dentro de pg-woo-carousel (hereda estilos globales y se afina un poco) */
.pg-woo-carousel li.product .button {
  background-color: #32634c;
  color: #ffffff;
  border-radius: 40px;
  padding: 10px 26px;
  font-weight: 600;
  font-size: 15px;
  border: none;
  text-transform: none;
  margin-top: auto;
  transition: transform 0.15s.ease, box-shadow 0.15s.ease,
              background-color 0.15s.ease;
}
.pg-woo-carousel li.product .button:hover {
  background-color: #254738;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.16);
}

/* Flechas del carrusel Royal */
.pg-woo-carousel .swiper-button-prev,
.pg-woo-carousel .swiper-button-next {
  width: 44px;
  height: 44px;
  background-color: #32634c;
  color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
}
.pg-woo-carousel .swiper-button-prev::after,
.pg-woo-carousel .swiper-button-next::after {
  font-size: 18px;
}

/* Bullets */
.pg-woo-carousel .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #d5d5d5;
  opacity: 1;
  margin: 0 4px !important;
}
.pg-woo-carousel .swiper-pagination-bullet-active {
  background: #32634c;
}

/* Responsive Royal */
@media (max-width: 767px) {
  .pg-woo-carousel li.product {
    margin: 0 6px;
    padding: 14px 12px 18px;
  }
  .pg-woo-carousel li.product img {
    max-width: 220px;
  }
  .pg-woo-carousel li.product .woocommerce-loop-product__title {
    font-size: 16px;
  }
  .pg-woo-carousel li.product .button {
    font-size: 14px;
    padding: 9px 20px;
  }
}



/* ===========================================
   Alinear icono + texto en una SOLA LÍNEA
   Royal Addons – Woo Grid/Slider/Carousel
   =========================================== */

/* Botón completo */
.add_to_cart_button.wpr-button-effect {
    display: inline-flex !important;
    flex-direction: row !important;      /* 👉 ÍCONO — TEXTO en horizontal */
    align-items: center !important;       /* centra verticalmente */
    justify-content: center !important;
    gap: 10px !important;                  /* espacio entre icono y texto */
    line-height: 1 !important;
}

/* Contenedor del icono */
.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0px !important;
    padding: 0px !important;
    padding-right: 5px !important;
    
}

/* Ícono SVG (NO agrandar, NO mover) */
.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left svg {
    height: 14px !important;
    width: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
}

/* Texto del botón */
.add_to_cart_button.wpr-button-effect > span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* 🧹 Quitar icono en botones secundarios (Ver producto / Ver talle) */
.wpr-button-effect:not(.add_to_cart_button) .wpr-grid-extra-icon-left {
  display: none !important;
}

/* Ajuste por si quedaba espacio reservado del icono */
.wpr-button-effect:not(.add_to_cart_button) {
  gap: 0 !important;
}
.add_to_cart_button.wpr-button-effect {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    line-height: 1 !important;
}

.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-right: 5px !important;
}

.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left svg {
    height: 14px !important;
    width: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
}

.add_to_cart_button.wpr-button-effect > span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* Quitar icono en Ver producto / Ver talle */
.wpr-button-effect:not(.add_to_cart_button) .wpr-grid-extra-icon-left {
  display: none !important;
}
.wpr-button-effect:not(.add_to_cart_button) {
  gap: 0 !important;
}
/* =======================================
   🔥 FIX COMPLETO EFECTO WAYRA (ENTRADA + SALIDA)
   con color final #2F8434
   ======================================= */

/* Color del texto e icono SIEMPRE blanco */
.wpr-button-effect.wpr-button-wayra-right,
.wpr-button-effect.wpr-button-wayra-right span,
.wpr-button-effect.wpr-button-wayra-right svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* ---- RESTAURAR ANIMACIONES WAYRA ---- */

/* Fondo del viento en reposo */
.wpr-button-effect.wpr-button-wayra-right::after {
    background: #2F8434 !important;
    opacity: 0;
    transform: translateX(100%) skewX(-10deg);
    transition: all 0.45s ease !important;
}

/* Viento entrando cuando pasás el mouse */
.wpr-button-effect.wpr-button-wayra-right:hover::after {
    opacity: 1;
    transform: translateX(0) skewX(0deg);
}

/* Levantar el botón como antes */
.wpr-button-effect.wpr-button-wayra-right:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.18) !important;
}

/* Mantener color final cuando está sobre el viento */
.wpr-button-effect.wpr-button-wayra-right:hover span,
.wpr-button-effect.wpr-button-wayra-right:hover svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* BARRA INFERIOR – SOLO MÓVIL */
.pg-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 64px;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
  display: none;                    /* se muestra solo en móvil */
  z-index: 9999;
}

.pg-bottom-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #3bb143;
  font-size: 11px;
  gap: 2px;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.pg-bottom-item .pg-icon {
  font-size: 22px;
  line-height: 1;
}

/* Burbuja del carrito */
.pg-badge {
  position: absolute;
  top: 8px;
  right: 30%;
  background: #ff3b30;
  color: #ffffff;
  font-size: 10px;
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Estado activo (puedes añadir la clase a mano según la página) */
.pg-bottom-item.pg-active {
  color: #2a7b34;
}

/* Sombra sutil para la barra */
.pg-bottom-bar {
  box-shadow: 0 -3px 12px rgba(0,0,0,0.06);
}

/* Menú flotante de secciones */
.pg-bottom-menu {
  position: fixed;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
  bottom: 72px;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.18);
  padding: 14px 18px 10px;
  width: 88%;
  max-width: 420px;
  z-index: 10000;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.22s ease, opacity 0.22s ease;
}

.pg-bottom-menu.pg-open {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
  pointer-events: auto;
}

.pg-bottom-menu h4 {
  margin: 0 0 6px;
  font-size: 14px;
  font-weight: 700;
  color: #111827;
}

.pg-bottom-menu-item {
  display: block;
  padding: 8px 6px;
  font-size: 14px;
  color: #3bb143;
  text-decoration: none;
  border-radius: 10px;
}

.pg-bottom-menu-item:hover {
  background: rgba(59,177,67,0.08);
}

/* Botón de cerrar (X) */
.pg-bottom-menu-close {
  position: absolute;
  top: 6px;
  right: 10px;
  border: none;
  background: transparent;
  font-size: 20px;
  cursor: pointer;
  color: #6b7280;
}

/* Mostrar sólo en móvil */
@media (max-width: 767px) {
  .pg-bottom-bar {
    display: flex;
  }

  body {
    padding-bottom: 64px; /* para que el contenido no quede tapado */
  }
}
/* ====== BARRA INFERIOR MÓVIL ====== */
.pg-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9997;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
  display: flex;
  justify-content: space-around;
  padding: 6px 4px 8px;
}

/* Botones de la barra */
.pg-bottom-bar a,
.pg-bottom-bar label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  text-decoration: none !important;
  color: #3bb143 !important;   /* verde PG */
  font-size: 11px;
  font-weight: 600;
}

/* Iconos */
.pg-bottom-bar svg {
  width: 24px;
  height: 24px;
}

/* Forzar color verde en iconos */
.pg-bottom-bar svg path,
.pg-bottom-bar svg circle,
.pg-bottom-bar svg rect,
.pg-bottom-bar svg line {
  stroke: #3bb143 !important;
  fill: none;
}

.pg-bottom-bar svg path[fill] {
  fill: #3bb143 !important;
}

/* ====== PANELES DESLIZANTES (SECCIONES / CATÁLOGO) ====== */
.pg-bottom-panel {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  pointer-events: none;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .25s ease, transform .25s ease;
  z-index: 9998;
}

.pg-bottom-panel__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
}

.pg-bottom-panel__box {
  position: relative;
  width: 100%;
  max-width: 520px;
  background: #fff;
  border-radius: 18px 18px 0 0;
  padding: 16px 18px 22px;
  box-shadow: 0 -6px 20px rgba(0,0,0,.15);
  z-index: 2;
}

.pg-bottom-panel__box h3 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
}

.pg-bottom-panel__box a {
  display: block;
  padding: 10px 4px;
  font-size: 15px;
  color: #111827;
  text-decoration: none;
  border-radius: 10px;
}

.pg-bottom-panel__box a:hover {
  background: #f3faf4;
  color: #2f8434;
}

/* Mostrar panel cuando el toggle está activo */
#pg-sections-toggle:checked ~ .pg-bottom-panel--sections,
#pg-catalog-toggle:checked  ~ .pg-bottom-panel--catalog {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* Opcional: sólo mostrar la barra en móvil */
@media (min-width: 1025px) {
  .pg-bottom-bar,
  .pg-bottom-panel {
    display: none;
  }
}

/**********************************************
 PUNTOGANGA – HOJA CSS LIMPIA Y ORDENADA
 Comentada por bloques para poder tocar / desactivar
 sin volar todo el diseño.
***********************************************/

/*============================================
 1) MENÚ PRINCIPAL (Elementor Nav Menu)
   – Quita descripciones
   – Alinea ítems al estilo LOI
=============================================*/

/* Oculta la descripción de los ítems del menú */
.elementor-nav-menu .menu-item-description {
  display: none !important;
}

/* Alinea el contenido del enlace en una fila centrada */
.elementor-nav-menu a {
  display: flex;
  align-items: center;
  line-height: 1;
}

/* Elimina espacios verticales extra entre ítems */
.elementor-nav-menu .menu-item {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/*============================================
 2) SECTOR "OFERTAS" TIPO LOI
   Contenedor: #pg-ofertas
   – Carrusel horizontal simple con ul.products
=============================================*/

/* Oculta contador, orden y paginación dentro de pg-ofertas */
#pg-ofertas .woocommerce-result-count,
#pg-ofertas .woocommerce-ordering,
#pg-ofertas .woocommerce-pagination {
  display: none !important;
}

/* Fila scrolleable tipo carrusel */
#pg-ofertas ul.products {
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  gap: 18px;
  margin: 0;
  padding: 10px 0 15px;
}

/* Tarjeta de producto */
#pg-ofertas ul.products li.product {
  flex: 0 0 220px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  padding: 12px;
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* Hover */
#pg-ofertas ul.products li.product:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

/* Imagen del producto */
#pg-ofertas ul.products li.product img {
  width: 100%;
  max-height: 170px;
  object-fit: cover;
  border-radius: 12px;
  margin-bottom: 8px;
}

/* Título */
#pg-ofertas ul.products li.product .woocommerce-loop-product__title {
  font-size: 15px;
  font-weight: 600;
  color: #222222;
  margin: 6px 0;
  min-height: 40px;
  overflow: hidden;
}

/* Precio */
#pg-ofertas ul.products li.product .price {
  margin-top: 4px;
  font-size: 15px;
}
#pg-ofertas ul.products li.product .price del {
  color: #888888;
  font-size: 13px;
}
#pg-ofertas ul.products li.product .price ins {
  color: #0b7d4a;
  font-weight: 700;
  text-decoration: none;
}

/* Botón dentro de pg-ofertas */
#pg-ofertas ul.products li.product .button {
  display: block;
  margin-top: 10px;
  background-color: #0b7d4a;
  color: #ffffff !important;
  border-radius: 10px;
  padding: 8px 14px;
  font-size: 14px;
  font-weight: 600;
  border: none;
  transition: background 0.2s ease, transform 0.2s ease;
}
#pg-ofertas ul.products li.product .button:hover {
  background-color: #095d38;
  transform: scale(1.03);
}

/* Oculta estrellas si aparecen */
#pg-ofertas .star-rating {
  display: none !important;
}

/* Scrollbar finito */
#pg-ofertas ul.products::-webkit-scrollbar {
  height: 8px;
}
#pg-ofertas ul.products::-webkit-scrollbar-thumb {
  background: #0b7d4a;
  border-radius: 4px;
}
#pg-ofertas ul.products::-webkit-scrollbar-track {
  background: transparent;
}

/* Responsive ofertas */
@media (max-width: 768px) {
  #pg-ofertas ul.products li.product {
    flex: 0 0 180px;
  }
}


/*============================================
 3) BOTONES "AÑADIR AL CARRITO" – ESTILO GLOBAL
   IMPORTANTE: aquí estaba el conflicto antes.
   – No se esconde el texto
   – Compatible con Royale Addons y otros plugins
=============================================*/

/* Estilo general para cualquier botón de añadir al carrito */
.add_to_cart_button,
.button.add_to_cart_button,
.wcpcsu-product-addtocart a,
.wcpcsu-button {
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 16px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  align-items: center;
  gap: 6px;
}
/* Hover global – NO tocar los botones de Royale (.wpr-button-effect) */
.add_to_cart_button:not(.wpr-button-effect):hover,
.button.add_to_cart_button:not(.wpr-button-effect):hover,
.wcpcsu-product-addtocart a:hover,
.wcpcsu-button:hover {
  background-color: #095d38 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}






/* Evita mayúsculas forzadas en algunos plugins */
.wcpcsu-product-addtocart a,
.add_to_cart_button,
.button.add_to_cart_button {
  text-transform: none !important;
}


/*============================================
 4) CARRUSELES DE CATEGORÍAS – CLASES PERSONALIZADAS
   – .pg-cats-row  (estructura vieja)
   – .pg-cat-section / .pg-cat-item
   – .pg-cat-mobile (solo móvil)
=============================================*/

/* ----- Versión antigua: fila horizontal usando .pg-cats-row ----- */
@media (max-width: 768px) {
  .pg-cats-row {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 16px;
    padding: 0 16px 10px;
    scroll-snap-type: x mandatory;
  }

  .pg-cats-row .pg-cat-item {
    flex: 0 0 60%;
    max-width: 60%;
    scroll-snap-align: start;
  }

  .pg-cats-row::-webkit-scrollbar { display: none; }
}

/* ----- Versión nueva: bloque de categorías principal ----- */

/* Escritorio: grid centrada */
.pg-cat-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  padding: 20px 0;
  overflow: visible !important;
}

/* Tarjeta individual de categoría */
.pg-cat-section .pg-cat-item {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 4px 14px rgba(0,0,0,0.08);
  padding: 18px 10px;
  text-align: center;
  width: 160px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  cursor: pointer;
}

/* Imagen circular */
.pg-cat-section .pg-cat-item img {
  width: 90px;
  height: 90px;
  object-fit: cover;
  border-radius: 50%;
  margin-bottom: 10px;
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}

/* Texto */
.pg-cat-section .pg-cat-item h3,
.pg-cat-section .pg-cat-item .elementor-heading-title {
  font-size: 15px;
  font-weight: 600;
  color: #222222;
  margin: 0;
  line-height: 1.3;
}

/* Hover escritorio */
.pg-cat-section .pg-cat-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 22px rgba(0,0,0,0.16);
}
.pg-cat-section .pg-cat-item:hover img {
  transform: scale(1.07);
}

/* Móvil: convertir .pg-cat-section en carrusel horizontal */
@media (max-width: 768px) {
  .pg-cat-section {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto !important;
    overflow-y: hidden;
    gap: 14px;
    padding: 16px 12px 24px;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
    -webkit-overflow-scrolling: touch;
  }

  .pg-cat-section .pg-cat-item {
    flex: 0 0 45%;
    max-width: 45%;
    min-width: 45%;
    scroll-snap-align: start;
  }

  .pg-cat-section::-webkit-scrollbar { display: none; }
}

/* ----- Variante: .pg-cat-mobile (solo en móvil) ----- */
:root{
  --pg-card-bg: #ffffff;
  --pg-card-radius: 18px;
  --pg-card-shadow: 0 6px 18px rgba(0,0,0,0.08);
  --pg-text: #1F2D2A;
}

/* Contenedor horizontal */
@media (max-width: 768px){
  .pg-cat-mobile{
    display: flex;
    flex-wrap: nowrap;
    gap: 14px;
    padding: 10px 12px 24px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .pg-cat-mobile::-webkit-scrollbar{ display: none; }

  .pg-cat-mobile .pg-cat-item{
    background: var(--pg-card-bg);
    border-radius: var(--pg-card-radius);
    box-shadow: var(--pg-card-shadow);
    text-align: center;
    padding: 18px 12px;
    flex: 0 0 46%;
    min-width: 46%;
    max-width: 46%;
    scroll-snap-align: start;
    transition: transform .2s ease, box-shadow .2s ease;
  }

  .pg-cat-mobile .pg-cat-item a{
    display:block;
    color: inherit;
    text-decoration: none;
  }

  .pg-cat-mobile .pg-cat-item img{
    display: block;
    width: 96px;
    height: 96px;
    margin: 0 auto 10px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0,0,0,.12);
    transition: transform .2s ease;
  }

  .pg-cat-mobile .pg-cat-item h3,
  .pg-cat-mobile .pg-cat-item .elementor-heading-title{
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    color: var(--pg-text);
    letter-spacing: .2px;
    line-height: 1.25;
  }

  .pg-cat-mobile .pg-cat-item:active{
    transform: scale(.98);
    box-shadow: 0 10px 22px rgba(0,0,0,.12);
  }
}

/* Si la pantalla es MUY chica (por ejemplo 320px) */
@media (max-width: 360px){
  .pg-cat-mobile .pg-cat-item{
    flex-basis: 60%;
    min-width: 60%;
    max-width: 60%;
  }
}


/*============================================
 5) HERO PRINCIPAL – CARRUSEL SUPERIOR (pg-hero)
=============================================*/

.pg-hero {
  position: relative;
  padding: 0 !important;
  --hero-radius: 22px;
  --hero-shadow: 0 10px 28px rgba(0,0,0,.10);
  --arrow-bg: #fff;
  --arrow-color: #6B7280;
  --arrow-shadow: 0 6px 18px rgba(0,0,0,.12);
  --dot: #d1d5db;
  --dot-active: #111827;
}

/* Redondeo y sombra del carrusel */
.pg-hero .elementor-image-carousel-wrapper,
.pg-hero .elementor-swiper,
.pg-hero .swiper-container,
.pg-hero .swiper {
  border-radius: var(--hero-radius);
  box-shadow: var(--hero-shadow);
  overflow: hidden;
}

/* Imagenes responsive */
.pg-hero .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
}

/* Flechas */
.pg-hero .elementor-swiper-button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: #fff;
  color: #ffffff;
  box-shadow: 0 6px 18px rgba(0,0,0,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .2s ease, box-shadow .2s ease, transform .15s ease;
}

.pg-hero .elementor-swiper-button:before {
  line-height: 1;
  font-size: 18px;
  color: currentColor;
}

.pg-hero .elementor-swiper-button-prev { left: -12px; }
.pg-hero .elementor-swiper-button-next { right: -12px; }

.pg-hero .elementor-swiper-button:hover {
  color: #6B7280;
  box-shadow: 0 8px 22px rgba(0,0,0,.16);
}

.pg-hero .elementor-swiper-button:active {
  transform: translateY(-50%) scale(.97);
}

/* Mobile */
@media (max-width:767px){
  .pg-hero .elementor-swiper-button {
    width: 38px;
    height: 38px;
  }
  .pg-hero .elementor-swiper-button-prev { left: -8px; }
  .pg-hero .elementor-swiper-button-next { right: -8px; }
}

/* Bullets */
.pg-hero .swiper-pagination-bullets { bottom: 12px; }
.pg-hero .swiper-pagination-bullet {
  width: 7px; height: 7px;
  background: var(--dot);
  opacity: 1;
  margin: 0 3px !important;
}
.pg-hero .swiper-pagination-bullet-active {
  background: var(--dot-active);
  width: 20px;
  border-radius: 999px;
}


/*============================================
 6) PALETA GENERAL
=============================================*/
:root{
  --pg-green: #2f6f4e;
  --pg-green-600:#275c40;
  --pg-orange:#ff6a00;
  --pg-bg:#f6f7f8;
  --pg-surface:#ffffff;
  --pg-border:#e9ecef;
  --pg-shadow: 0 10px 30px rgba(16,24,40,.06),
               0 2px 6px rgba(16,24,40,.04);
}


/*============================================
 7) CARDS MOBILE GENERALES (cats-row-mobile)
   – Usado en otros sliders pequeños
=============================================*/
@media (max-width: 767px) {

  .cats-row-mobile {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 14px;
    padding: 12px;
    scroll-snap-type: x mandatory;
  }
  .cats-row-mobile::-webkit-scrollbar { display: none; }

  .cats-row-mobile .cat-card {
    flex: 0 0 78% !important;
    max-width: 78% !important;
    height: 220px !important;
    min-height: 220px !important;
    padding: 14px !important;
    border-radius: 22px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    scroll-snap-align: start;
  }

  .cats-row-mobile .cat-card:first-child {
    flex: 0 0 78% !important;
    max-width: 78% !important;
    height: 220px !important;
    min-height: 220px !important;
  }

  .cats-row-mobile .cat-card h2,
  .cats-row-mobile .cat-card h3,
  .cats-row-mobile .cat-card .promo-box-title {
    font-size: 20px !important;
    margin: 4px 0 4px !important;
    text-align: center !important;
  }

  .cats-row-mobile .cat-card .rbea-promo-img,
  .cats-row-mobile .cat-card img {
    max-height: 120px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block;
    margin: 0 auto !important;
    transform: translateY(-14px);
  }
}


/*============================================
 8) BLOQUES TIPO LOI – .pg-block
   – Cajones blancos que envuelven carruseles
=============================================*/

/* Caja principal */
.elementor .e-con.pg-block {
  max-width: 1900px;
  margin: 40px auto;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 26px 32px;
  box-shadow: 0 12px 32px rgba(16,24,40,.06),
              0 4px 10px rgba(16,24,40,.04);
  overflow: hidden;
}

/* Cabecera y título */
.pg-block__header,
.pg-block .pg-block__title{
  display: flex;
  align-items: center;
  gap: 10px;
}

.pg-block .pg-block__title{
  font-size: clamp(22px, 2.8vw, 34px);
  line-height: 1.15;
  color: var(--pg-green);
  font-weight: 800;
  margin-bottom: clamp(10px, 1.4vw, 14px);
}




/* Imagen */
.pg-block li.product .woocommerce-LoopProduct-link img,
.pg-block .product img{
  border-bottom: 1px solid var(--pg-border);
  object-fit: cover;
}

/* Título de producto */
.pg-block li.product .woocommerce-loop-product__title,
.pg-block .product .woocommerce-loop-product__title{
  font-weight: 700;
  font-size: clamp(14px, 1.6vw, 18px);
  line-height: 1.3;
}




/* Flechas de sliders dentro de pg-block */
.pg-block .swiper-button-prev,
.pg-block .swiper-button-next,
.pg-block .slick-prev,
.pg-block .slick-next{
  width: 38px; height: 38px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--pg-border);
  box-shadow: 0 6px 18px rgba(16,24,40,.10);
  display: grid; place-items: center;
  transition: .2s ease;
}
.pg-block .swiper-button-prev:hover,
.pg-block .swiper-button-next:hover,
.pg-block .slick-prev:hover,
.pg-block .slick-next:hover{
  background:#f2f4f7;
  transform: translateY(-1px);
}
.pg-block .swiper-button-prev:after,
.pg-block .swiper-button-next:after{
  color:#6b7280;
  font-size: 16px;
  font-weight: 900;
}

/* Bullets de sliders */
.pg-block .swiper-pagination-bullets .swiper-pagination-bullet{
  width: 8px; height: 8px; opacity: .35;
  background:#9ca3af;
}
.pg-block .swiper-pagination-bullets .swiper-pagination-bullet-active{
  opacity: 1; background: var(--pg-green);
}

/* Responsive pg-block */
@media (max-width: 1024px){
  .pg-block{ border-radius: 18px; }
}
@media (max-width: 767px){
  .pg-block{
    padding: 16px 14px;
    border-radius: 16px;
    margin: 18px 0;
  }
  .pg-block .pg-block__title{
    text-align:center;
    margin-left:auto;
    margin-right:auto;
    width:100%;
    display:block;
  }
  .pg-block__more{ display:none; }
}





/*============================================
 10) SECCIONES DE PRODUCTOS (deals-section)
   – Ajustes de espacio en MOBILE
=============================================*/
@media (max-width: 768px) {

  /* Caja blanca padre */
  section.deals-section {
    padding-top: 6px !important;
    padding-bottom: 10px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Quita paddings y márgenes internos */
  section.deals-section > .elementor-container,
  section.deals-section .e-con,
  section.deals-section .elementor-column,
  section.deals-section .elementor-widget-wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* Título dentro de deals-section */
  section.deals-section .elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.1 !important;
    margin-top: 20px !important;
    margin-bottom: 2px !important;
  }

  /* Línea gris (divider) pegada al título */
  section.deals-section .elementor-widget-divider {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }

  /* Separación entre bloques consecutivos */
  section.deals-section + section.deals-section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}


/*============================================
 11) CARRUSEL SUPERIOR CON ROYALE – .pg-woo-carousel
=============================================*/

/* Contenedor general (Royal Woo Grid/Slider/Carousel) */
.pg-woo-carousel {
  padding-top: 10px;
  padding-bottom: 20px;
}

/* Tarjeta de producto */
.pg-woo-carousel li.product {
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  margin: 0 12px;
  padding: 18px 18px 22px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Imagen cuadrada */
.pg-woo-carousel li.product img {
  width: 100%;
  max-width: 260px;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 14px;
  margin-bottom: 16px;
}

/* Título */
.pg-woo-carousel li.product .woocommerce-loop-product__title {
  font-size: 18px;
  font-weight: 600;
  color: #1e452f;
  text-align: center;
  margin: 8px 0 10px;
}

/* Precio */
.pg-woo-carousel li.product .price {
  font-size: 16px;
  font-weight: 600;
  color: #e6681b;
  margin-bottom: 10px;
}
.pg-woo-carousel li.product .price del {
  color: #a5a5a5;
  font-weight: 400;
  margin-right: 4px;
}

/* Badge de oferta */
.pg-woo-carousel li.product .onsale {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #ffffff;
  color: #e6681b;
  border: 2px solid #e6681b;
  border-radius: 10px;
  padding: 4px 8px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  z-index: 3;
}

/* Botón dentro de pg-woo-carousel (hereda estilos globales y se afina un poco) */
.pg-woo-carousel li.product .button {
  background-color: #32634c;
  color: #ffffff;
  border-radius: 40px;
  padding: 10px 26px;
  font-weight: 600;
  font-size: 15px;
  border: none;
  text-transform: none;
  margin-top: auto;
  transition: transform 0.15s.ease, box-shadow 0.15s.ease,
              background-color 0.15s.ease;
}
.pg-woo-carousel li.product .button:hover {
  background-color: #254738;
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.16);
}

/* Flechas del carrusel Royal */
.pg-woo-carousel .swiper-button-prev,
.pg-woo-carousel .swiper-button-next {
  width: 44px;
  height: 44px;
  background-color: #32634c;
  color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
}
.pg-woo-carousel .swiper-button-prev::after,
.pg-woo-carousel .swiper-button-next::after {
  font-size: 18px;
}

/* Bullets */
.pg-woo-carousel .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #d5d5d5;
  opacity: 1;
  margin: 0 4px !important;
}
.pg-woo-carousel .swiper-pagination-bullet-active {
  background: #32634c;
}

/* Responsive Royal */
@media (max-width: 767px) {
  .pg-woo-carousel li.product {
    margin: 0 6px;
    padding: 14px 12px 18px;
  }
  .pg-woo-carousel li.product img {
    max-width: 220px;
  }
  .pg-woo-carousel li.product .woocommerce-loop-product__title {
    font-size: 16px;
  }
  .pg-woo-carousel li.product .button {
    font-size: 14px;
    padding: 9px 20px;
  }
}



/* ===========================================
   Alinear icono + texto en una SOLA LÍNEA
   Royal Addons – Woo Grid/Slider/Carousel
   =========================================== */

/* Botón completo */
.add_to_cart_button.wpr-button-effect {
    display: inline-flex !important;
    flex-direction: row !important;      /* 👉 ÍCONO — TEXTO en horizontal */
    align-items: center !important;       /* centra verticalmente */
    justify-content: center !important;
    gap: 10px !important;                  /* espacio entre icono y texto */
    line-height: 1 !important;
}

/* Contenedor del icono */
.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0px !important;
    padding: 0px !important;
    padding-right: 5px !important;
    
}

/* Ícono SVG (NO agrandar, NO mover) */
.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left svg {
    height: 14px !important;
    width: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
}

/* Texto del botón */
.add_to_cart_button.wpr-button-effect > span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* 🧹 Quitar icono en botones secundarios (Ver producto / Ver talle) */
.wpr-button-effect:not(.add_to_cart_button) .wpr-grid-extra-icon-left {
  display: none !important;
}

/* Ajuste por si quedaba espacio reservado del icono */
.wpr-button-effect:not(.add_to_cart_button) {
  gap: 0 !important;
}
.add_to_cart_button.wpr-button-effect {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    line-height: 1 !important;
}

.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    padding-right: 5px !important;
}

.add_to_cart_button.wpr-button-effect .wpr-grid-extra-icon-left svg {
    height: 14px !important;
    width: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
}

.add_to_cart_button.wpr-button-effect > span {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
}

/* Quitar icono en Ver producto / Ver talle */
.wpr-button-effect:not(.add_to_cart_button) .wpr-grid-extra-icon-left {
  display: none !important;
}
.wpr-button-effect:not(.add_to_cart_button) {
  gap: 0 !important;
}
/* =======================================
   🔥 FIX COMPLETO EFECTO WAYRA (ENTRADA + SALIDA)
   con color final #2F8434
   ======================================= */

/* Color del texto e icono SIEMPRE blanco */
.wpr-button-effect.wpr-button-wayra-right,
.wpr-button-effect.wpr-button-wayra-right span,
.wpr-button-effect.wpr-button-wayra-right svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* ---- RESTAURAR ANIMACIONES WAYRA ---- */

/* Fondo del viento en reposo */
.wpr-button-effect.wpr-button-wayra-right::after {
    background: #2F8434 !important;
    opacity: 0;
    transform: translateX(100%) skewX(-10deg);
    transition: all 0.45s ease !important;
}

/* Viento entrando cuando pasás el mouse */
.wpr-button-effect.wpr-button-wayra-right:hover::after {
    opacity: 1;
    transform: translateX(0) skewX(0deg);
}

/* Levantar el botón como antes */
.wpr-button-effect.wpr-button-wayra-right:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.18) !important;
}

/* Mantener color final cuando está sobre el viento */
.wpr-button-effect.wpr-button-wayra-right:hover span,
.wpr-button-effect.wpr-button-wayra-right:hover svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* BARRA INFERIOR – SOLO MÓVIL */
.pg-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 64px;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
  display: none;                    /* se muestra solo en móvil */
  z-index: 9999;
}

.pg-bottom-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #3bb143;
  font-size: 11px;
  gap: 2px;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
}

.pg-bottom-item .pg-icon {
  font-size: 22px;
  line-height: 1;
}

/* Burbuja del carrito */
.pg-badge {
  position: absolute;
  top: 8px;
  right: 30%;
  background: #ff3b30;
  color: #ffffff;
  font-size: 10px;
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Estado activo (puedes añadir la clase a mano según la página) */
.pg-bottom-item.pg-active {
  color: #2a7b34;
}

/* Sombra sutil para la barra */
.pg-bottom-bar {
  box-shadow: 0 -3px 12px rgba(0,0,0,0.06);
}

/* Menú flotante de secciones */
.pg-bottom-menu {
  position: fixed;
  left: 50%;
  transform: translateX(-50%) translateY(100%);
  bottom: 72px;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.18);
  padding: 14px 18px 10px;
  width: 88%;
  max-width: 420px;
  z-index: 10000;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.22s ease, opacity 0.22s ease;
}

.pg-bottom-menu.pg-open {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
  pointer-events: auto;
}

.pg-bottom-menu h4 {
  margin: 0 0 6px;
  font-size: 14px;
  font-weight: 700;
  color: #111827;
}

.pg-bottom-menu-item {
  display: block;
  padding: 8px 6px;
  font-size: 14px;
  color: #3bb143;
  text-decoration: none;
  border-radius: 10px;
}

.pg-bottom-menu-item:hover {
  background: rgba(59,177,67,0.08);
}

/* Botón de cerrar (X) */
.pg-bottom-menu-close {
  position: absolute;
  top: 6px;
  right: 10px;
  border: none;
  background: transparent;
  font-size: 20px;
  cursor: pointer;
  color: #6b7280;
}

/* Mostrar sólo en móvil */
@media (max-width: 767px) {
  .pg-bottom-bar {
    display: flex;
  }

  body {
    padding-bottom: 64px; /* para que el contenido no quede tapado */
  }
}
/* ====== BARRA INFERIOR MÓVIL ====== */
.pg-bottom-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9997;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
  display: flex;
  justify-content: space-around;
  padding: 6px 4px 8px;
}

/* Botones de la barra */
.pg-bottom-bar a,
.pg-bottom-bar label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  text-decoration: none !important;
  color: #3bb143 !important;   /* verde PG */
  font-size: 11px;
  font-weight: 600;
}

/* Iconos */
.pg-bottom-bar svg {
  width: 24px;
  height: 24px;
}

/* Forzar color verde en iconos */
.pg-bottom-bar svg path,
.pg-bottom-bar svg circle,
.pg-bottom-bar svg rect,
.pg-bottom-bar svg line {
  stroke: #3bb143 !important;
  fill: none;
}

.pg-bottom-bar svg path[fill] {
  fill: #3bb143 !important;
}
.pg-bottom-bar svg path[fill] {
  fill: #3bb143 !important;
}
/* ===== TÍTULOS DE PANEL EN VERDE PG (#3bb143) ===== */
.pg-bottom-panel__box h3 {
    color: #3bb143 !important;
}

/* ====== PANELES DESLIZANTES (SECCIONES / CATÁLOGO) ====== */
.pg-bottom-panel {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  pointer-events: none;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity .25s ease, transform .25s ease;
  z-index: 9998;
}

.pg-bottom-panel__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.35);
}

.pg-bottom-panel__box {
  position: relative;
  width: 100%;
  max-width: 520px;
  background: #fff;
  border-radius: 18px 18px 0 0;
  padding: 16px 18px 22px;
  box-shadow: 0 -6px 20px rgba(0,0,0,.15);
  z-index: 2;
}

.pg-bottom-panel__box h3 {
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 700;
}

.pg-bottom-panel__box a {
  display: block;
  padding: 10px 4px;
  font-size: 15px;
  color: #111827;
  text-decoration: none;
  border-radius: 10px;
}

.pg-bottom-panel__box a:hover {
  background: #f3faf4;
  color: #2f8434;
}

/* Mostrar panel cuando el toggle está activo */
#pg-sections-toggle:checked ~ .pg-bottom-panel--sections,
#pg-catalog-toggle:checked  ~ .pg-bottom-panel--catalog {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

/* Opcional: sólo mostrar la barra en móvil */
@media (min-width: 1025px) {
  .pg-bottom-bar,
  .pg-bottom-panel {
    display: none;
  }
}

/* ===== MOBILE: compactar SOLO las secciones de NUEVAS OFERTAS ===== */
@media (max-width: 767px) {

  /* 1) Quitar aire interno de las secciones de ofertas */
  .pg-ofertas-1,
  .pg-ofertas-2 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }

  /* 2) Reducir espacio entre las columnas internas de esas secciones */
  .pg-ofertas-1 .elementor-column,
  .pg-ofertas-2 .elementor-column {
    margin-top: 0 !important;
    margin-bottom: -65px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* 3) Compactar las tarjetas del carrusel Royal dentro de esas secciones */
  .pg-ofertas-1 .wpr-woo-grid-item,
  .pg-ofertas-2 .wpr-woo-grid-item,
  .pg-ofertas-1 .woocommerce ul.products li.product,
  .pg-ofertas-2 .woocommerce ul.products li.product {
    margin-bottom: 4px !important;
    padding-bottom: 0 !important;
  }

  /* Si el widget usa grid interno, reducimos el gap */
  .pg-ofertas-1 .wpr-woo-grid .wpr-grid-row,
  .pg-ofertas-2 .wpr-woo-grid .wpr-grid-row {
    row-gap: 6px !important;
    column-gap: 6px !important;
  }

  /* 4) OCULTAR DESCRIPCIÓN de producto SOLO en estas secciones */
  .pg-ofertas-1 .woocommerce-product-details__short-description,
  .pg-ofertas-2 .woocommerce-product-details__short-description,
  .pg-ofertas-1 .woocommerce-loop-product__description,
  .pg-ofertas-2 .woocommerce-loop-product__description,
  .pg-ofertas-1 .wpr-woo-grid-description,
  .pg-ofertas-2 .wpr-woo-grid-description,
  .pg-ofertas-1 .product-description,
  .pg-ofertas-2 .product-description {
    display: none !important;
  }

  /* Extra por si la descripción es un <p> justo después del título */
  .pg-ofertas-1 li.product .woocommerce-loop-product__title + p,
  .pg-ofertas-2 li.product .woocommerce-loop-product__title + p {
    display: none !important;
  }
}
/* ===========================================
   💚 ELIMINAR TODAS las descripciones en móvil
   SOLO dentro de pg-ofertas-1 y pg-ofertas-2
=========================================== */
@media (max-width: 767px) {

  /* Cualquier texto entre título y precio */
  .pg-ofertas-1 li.product *:not(.price):not(.woocommerce-loop-product__title):not(.button):not(img):not(.wpr-grid-extra-icon-left) {
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .pg-ofertas-2 li.product *:not(.price):not(.woocommerce-loop-product__title):not(.button):not(img):not(.wpr-grid-extra-icon-left) {
    max-height: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Descripciones típicas — por si acaso */
  .pg-ofertas-1 .wpr-grid-description,
  .pg-ofertas-2 .wpr-grid-description,
  .pg-ofertas-1 .woocommerce-loop-product__description,
  .pg-ofertas-2 .woocommerce-loop-product__description,
  .pg-ofertas-1 .product-description,
  .pg-ofertas-2 .product-description,
  .pg-ofertas-1 p,
  .pg-ofertas-2 p {
    display: none !important;
  }
}

/* Ocultar descripciones en carruseles Royal Addons SOLO en móvil */
@media (max-width: 767px) {
  .wpr-grid-item-excerpt {
    display: none !important;
  }
}
/* ================================================
   FLECHAS CARRUSEL ROYAL (Woo Grid / Slider / Carousel)
   – Círculo invisible por defecto
   – Gris normal, verde con sombra al hover
   – Hover: suben 3px (NO bajan)
================================================ */

/* Estilo base de cualquier flecha */
.wpr-grid-slider-arrow {
  background: transparent !important;          /* sin circulito blanco */
  border-radius: 30% !important;
  border: 1px solid transparent !important;    /* borde invisible */
  color: #9ca3af !important;                   /* gris por defecto */
  width: 34px !important;
  height: 34px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;                 /* sin sombra inicial */
  margin-top: 0 !important;                    /* base para el efecto */
  transition:
    background 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    margin-top 0.2s ease;                      /* usamos margin, no transform */
}

/* Icono de las flechas (usa siempre el color de la flecha) */
.wpr-grid-slider-arrow i,
.wpr-grid-slider-arrow svg {
  font-size: 16px !important;
  color: inherit !important;
  fill: inherit !important;
}

/* Flecha izquierda: aseguramos que apunte BIEN a la izquierda */
.wpr-grid-slider-prev-arrow i {
  transform: rotate(0deg) !important;
}

/* Posición DESKTOP (ajustable en %) */
.wpr-grid-slider-prev-arrow {
  left: -3% !important;
}

.wpr-grid-slider-next-arrow {
  right: -3% !important;
}

/* HOVER: círculo blanco, borde suave, flecha verde, sombra y SUBE 3px */
.wpr-grid-slider-arrow:hover,
.wpr-grid-slider-arrow:focus-visible {
  background: #ffffff !important;
  border-color: #e5e7eb !important;
  color: #3bb143 !important;
  box-shadow: 0 0px 22px rgba(0,0,0,0.16) !important;
  margin-top: -3px !important;   /* 🔺 SUBE 3px (ya no se va para abajo) */
}

/* =========================================
   SOLO CELULAR: moverlas un poco más hacia afuera (ajustable)
========================================= */
@media (max-width: 767px) {
  .wpr-grid-slider-prev-arrow {
    left: -30px !important; 
    width: 25px !important;
  height: 25px !important;
    /* mové este valor a gusto (-30, -40, etc.) */
  }

  .wpr-grid-slider-next-arrow {
    right: -30px !important;
    width: 25px !important;
  height: 25px !important;

  }
}
/* ===== SOLO MÓVIL: empujar flechas un poco hacia afuera ===== */
@media (max-width: 767px) {

  /* Flecha izquierda: la saco un poco hacia afuera */
  .wpr-grid-slider-prev-arrow {
    margin-left: -32px !important;   /* probá -10, -20, etc. a gusto */
  }

  /* Flecha derecha: la saco un poco hacia afuera */
  .wpr-grid-slider-next-arrow {
    margin-right: -32px !important;  /* mismo ajuste pero del otro lado */
  }
}
/* =========================================
   FLECHAS SOLO PARA "Nuevas ofertas" (2 columnas)
   Ajuste de posición en desktop y móvil
========================================= */

/* Que el carrusel pueda mostrar flechas por fuera */
.pg-ofertas-1 .wpr-woo-grid,
.pg-ofertas-2 .wpr-woo-grid {
  overflow: visible !important;
}

/* --- DESKTOP / TABLET --- */
@media (min-width: 768px) {

  .pg-ofertas-1 .wpr-grid-slider-prev-arrow,
  .pg-ofertas-2 .wpr-grid-slider-prev-arrow {  
    left: -29px !important;    /* mueve la izquierda un poco hacia afuera */
     
  }

  .pg-ofertas-1 .wpr-grid-slider-next-arrow,
  .pg-ofertas-2 .wpr-grid-slider-next-arrow {
    right: -29px !important;   /* mueve la derecha un poco hacia afuera */
   
    
    
  }
}

/* --- MOBILE --- */
@media (max-width: 767px) {

  .pg-ofertas-1 .wpr-grid-slider-prev-arrow,
  .pg-ofertas-2 .wpr-grid-slider-prev-arrow {
    left: 3px !important;    /* casi pegadas al borde */
  }

  .pg-ofertas-1 .wpr-grid-slider-next-arrow,
  .pg-ofertas-2 .wpr-grid-slider-next-arrow {
    right: 3px !important;
  }
}
/* ================================
   HEADER ESTILO TEMU - SOLO MÓVIL
================================ */
@media (max-width: 767px) {

  /* Franja verde del header */
  .pg-mobile-header {
    background: #35a436 !important;        /* verde Punto Ganga */
    padding: 8px 12px 10px !important;
    box-sizing: border-box;
  }

  /* Fila logo + buscador + carrito */
  .pg-mobile-header-top {
    display: flex !important;
    align-items: center;
    gap: 10px;
  }

  /* Aseguramos que las columnas internas sean flex también */
  .pg-mobile-header-top > .elementor-column,
  .pg-mobile-header-top .elementor-column-wrap {
    display: flex !important;
    align-items: center;
  }

  /* Logo / texto "Punto Ganga" */
  .pg-mobile-header .elementor-widget-heading .elementor-heading-title {
    font-size: 24px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
  }

  /* El bloque del buscador ocupa casi todo el centro */
  .pg-mobile-header-top form,
  .pg-mobile-header-top .elementor-search-form,
  .pg-mobile-header-top .ajax-search-form {
    flex: 1 1 auto;
    margin: 0 !important;
  }

  /* Carrito / iconos alineados a la derecha */
  .pg-header-icons {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-left: 6px;
    flex: 0 0 auto;
  }

  /* Un poquito más compacto el header en móvil */
  .pg-mobile-header .elementor-widget {
    margin-bottom: 0 !important;
  }


  /* ====== BLOQUE DE CATEGORÍAS TIPO TEMU ====== */

  .pg-mobile-header-cats {
    margin-top: 6px !important;
    padding: 4px 4px 8px !important;
    background: #ffffff !important;
  }

  /* Si usás un menú de Elementor para las categorías */
  .pg-mobile-header-cats .elementor-nav-menu--main {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;              /* Firefox: oculta scroll */
  }

  .pg-mobile-header-cats .elementor-nav-menu--main::-webkit-scrollbar {
    display: none;                      /* Chrome/Safari: oculta scroll */
  }

  .pg-mobile-header-cats .elementor-nav-menu--main .elementor-item {
    font-size: 15px !important;
    padding: 4px 0 !important;
  }
}

/* En escritorio ocultamos esa fila de categorías estilo Temu,
   así tu header de desktop queda igual que antes */
@media (min-width: 768px) {
  .pg-mobile-header-cats {
    display: none !important;
  }
}

 /* ============================
   HEADER PUNTO GANGA - MOBILE
   Solo afecta pantallas pequeñas
============================ */
@media (max-width: 767px) {

  /* Fila logo + buscador + carrito */
  .pg-mobile-top {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }

  .pg-mobile-logo {
    flex: 0 0 auto;
  }

  .pg-mobile-search {
    flex: 1 1 auto;
  }

  .pg-mobile-cart {
    flex: 0 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  /* Opcional: ajustar un poco el buscador sin romper el diseño existente */
  .pg-mobile-search input[type="search"],
  .pg-mobile-search input[type="text"] {
    width: 100%;
    font-size: 14px;
  }

  /* ============================
     Barra de categorías tipo Temu
  ============================= */

  /* Contenedor que scrolla horizontal */
  .pg-mobile-cats {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    background: #ffffff;
    border-bottom: 1px solid #f1f1f1;
  }

  /* Nav interno sin saltos de línea */
  .pg-mobile-cats .pg-mobile-nav {
    white-space: nowrap;
  }

  .pg-mobile-cats .pg-mobile-nav ul {
    display: inline-flex;
    gap: 18px;
    list-style: none;
    margin: 0;
    padding: 8px 16px;
  }

  .pg-mobile-cats .pg-mobile-nav li {
    flex: 0 0 auto;
  }

  .pg-mobile-cats .pg-mobile-nav a {
    font-size: 15px;
    font-weight: 500;
    color: #333333;
    text-decoration: none;
    padding-bottom: 6px;
    display: inline-block;
  }

  /* ============================================
   CONTENEDOR del menú móvil (franja blanca)
   Clase: pg-mobile-cats
============================================ */
@media (max-width: 767px) {

  .pg-mobile-cats {
    height: 48px !important;              /* altura de la barra */
    padding: 0 10px !important;           /* padding lateral */
    display: flex !important;
    align-items: center !important;
    overflow-x: auto !important;          /* scroll horizontal */
    overflow-y: hidden !important;
    background: #fff !important;
    scrollbar-width: none !important;     /* Firefox: ocultar barra */
  }

  /* Chrome / Safari ocultan scrollbar */
  .pg-mobile-cats::-webkit-scrollbar {
    display: none !important;
  }
}

/* ============================================================
   🔥 REDUCIR ALTURA Y ESPACIADO DEL HEADER MÓVIL
============================================================ */
@media (max-width: 767px) {

  /* Contenedor principal del header móvil */
  .pg-mobile-top {
  
    padding: 0px 10px 0px !important;        /* antes 15–20px → ahora más compacto */
    gap: 8px !important;                 /* menos separación entre columnas */
    min-height: 60px !important;         /* tamaño total más chico */
    display: flex !important;
    align-items: center !important;
  }

  /* LOGO más pequeño */
  .pg-mobile-logo img {
    height: 20px !important;             /* ajustable: 28–34px */
    width: auto !important;
  }

  /* Contenedor del buscador */
  .pg-mobile-search {
    flex: 1 !important;                  /* que use todo el espacio */
  }

  /* INPUT del buscador */
  .pg-mobile-search input {
    height: 38px !important;             /* más chico que el original */
    font-size: 14px !important;
    padding-left: 12px !important;
  }

  /* Botón del ícono de búsqueda */
  .pg-mobile-search button,
  .pg-mobile-search .elementor-search-form__submit {
    height: 38px !important;
    width: 48px !important;
    border-radius: 6px !important;
  }

  /* Carrito más chico y alineado */
  .pg-mobile-cart {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .pg-mobile-cart svg,
  .pg-mobile-cart i {
    font-size: 22px !important;         /* antes ~30px → más compacto */
  }
  
  /* Badge del carrito más pequeño */
  .pg-mobile-cart .elementor-button-icon-badge {
    font-size: 10px !important;
    padding: 2px 4px !important;
    top: -6px !important;
    right: -6px !important;
  }
}
/* OCULTAR productos relacionados del carrito WPR */
.elementor-element-74917c0 .wt-related-products-cart,
.elementor-element-74917c0 .wt-related-products,
.elementor-element-74917c0 section.related.products {
    display: none !important;
}


/****************************************
  POPUP "ADDED TO CART" – ARREGLO MOBILE
*****************************************/
@media (max-width: 767px) {

  /* Contenedor del popup */
  .wpr-added-to-cart-popup {
    background: #ffffff !important;
    color: #111111 !important;
    border-radius: 18px !important;
    padding: 14px !important;
   
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
  }

  /* Asegurar que la caja de texto exista y se vea */
  .wpr-added-to-cart-popup .wpr-added-tc-title {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Texto normal en negro */
  .wpr-added-to-cart-popup .wpr-added-tc-title p {
    display: block !important;
    color: #111111 !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    margin: 0 0 4px 0 !important;
  }

  /* Link "View Cart" / "Ver carrito" en verde */
  .wpr-added-to-cart-popup .wpr-added-tc-title a {
    display: inline-block !important;
    color: #3bb143 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    text-decoration: none !important;
  }

  /* Por si algún estilo loco pone font-size:0 o color transparente en hijos */
  .wpr-added-to-cart-popup .wpr-added-tc-title * {
    font-size: inherit !important;
    color: inherit !important;
  }

  /* Imagen del producto dentro del popup */
  .wpr-added-tc-popup-img img {
    width: 60px !important;
    height: auto !important;
    display: block !important;
  }
}

/* Ocultar las cajas numéricas del filtro avanzado */
#pg-price-range .wpr-af-rf-control-min-input,
#pg-price-range .wpr-af-rf-control-max-input {
    display: none !important;
}

/* Estilo del texto "Precio: $X — $Y" que vamos a crear por JS */
#pg-price-range .pg-price-range-label {
    display: block !important;
    text-align: center;
    margin-top: 10px;
    font-size: 16px;
    color: #444;
}

#pg-price-range .pg-price-range-label strong {
    font-weight: 600;
}


.pg-mobile-products-dummy {
    display: none !important;
}

.woocommerce-cart .pg-qty-btn {
    display: none !important;
}

/* Base layout */
.pg-header-categoria {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Título */
.pg-header-categoria h1,
.pg-header-categoria h2,
.pg-header-categoria h3 {
  flex: 1;
  line-height: 1.15;
  margin: 0;
}











@media (max-width: 767px){

  /* 1) El wrapper pasa a ser grid: slider arriba, y abajo botón + label */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"]{
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas:
      "title title"
      "range range"
      "apply label" !important;
    column-gap: 14px !important;
    row-gap: 10px !important;
    align-items: center !important;
  }

  /* 2) Asignar áreas */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .wpr-af-filters-label{ grid-area: title !important; }
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .wpr-af-range-container{ grid-area: range !important; }
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .wpr-af-apply-btn-wrap{ grid-area: apply !important; margin: 0 !important; }
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .pg-price-range-label{ grid-area: label !important; margin: 0 !important; }

  /* 3) Botón: más “pro”, menos redondo */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .wpr-af-range-apply-btn{
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 12px 26px !important;
    border-radius: 10px !important;   /* <- no pastilla */
    border: 2px solid #3bb143 !important;
    background: transparent !important;
    color: #3bb143 !important;

    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  /* 4) Label a la derecha */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .pg-price-range-label{
    text-align: left !important;
    white-space: nowrap !important;
    font-size: 16px !important;
    color: #444 !important;
  }
}


@media (max-width: 767px){

  /* Fila botón + label: más separados y alineados */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"]{
    column-gap: 18px !important; /* más aire general */
  }

  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .wpr-af-apply-btn-wrap{
    grid-area: apply !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }

  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"] .pg-price-range-label{
    grid-area: label !important;
    display: flex !important;
    align-items: center !important;     /* alinea vertical */
    justify-content: flex-end !important;/* empuja a la derecha */
    text-align: right !important;
    margin: 0 !important;
    white-space: nowrap !important;
    line-height: 1 !important;         /* queda a la misma altura */
  }

  /* Si querés que quede aún MÁS a la derecha en pantallas chicas */
  .wpr-advanced-filters-wrap[data-wpr-filter-type="range"]{
    grid-template-columns: auto minmax(0,1fr) !important;
  }
}

@media (max-width: 767px){
  /* Subir solo el botón "Filtrar" */
  #pg-price-range .wpr-af-apply-btn-wrap{
    transform: translateY(-10px);
  }
}
@media (max-width: 767px){
  /* Bajar solo el texto del rango de precio */
  #pg-price-range .pg-price-range-label{
    transform: translateY(6px);
  }
}


/* SOLO CELULAR: ocultar + / - del qty (Royal Addons) */
@media (max-width: 767px){
  .wpr-simple-qty-wrap .wpr-add-to-cart-icons-wrap{
    display: none !important;
  }
}

/* =========================================
   HERO LG (solo este slider)
   Clase única: .pg-hero-lgx
   ========================================= */

/* Caja/“tarjeta” del hero (PC y mobile) */
.pg-hero-lgx .wpr-advanced-slider-wrap,
.pg-hero-lgx .wpr-advanced-slider,
.pg-hero-lgx .slick-list,
.pg-hero-lgx .slick-track {
  border-radius: 26px !important;
  overflow: hidden !important;
}

/* Sombra estilo banner (como tu captura) */
.pg-hero-lgx .wpr-advanced-slider-wrap{
  box-shadow: 0 18px 40px rgba(0,0,0,.14) !important;
  background: #fff !important;
}

/* Fondo/imagen siempre “cover” */
.pg-hero-lgx .wpr-slider-item-bg{
  background-size: cover !important;
  background-position: center !important;
}

/* ---------- ALTURAS ---------- */
/* PC: alto tipo banner */
@media (min-width: 768px){
  .pg-hero-lgx .wpr-advanced-slider-wrap,
  .pg-hero-lgx .wpr-advanced-slider,
  .pg-hero-lgx .slick-list,
  .pg-hero-lgx .slick-track,
  .pg-hero-lgx .wpr-slider-item{
    height: 360px !important;
  }
}

/* CEL: mismo look, más compacto */
@media (max-width: 767px){
  .pg-hero-lgx{
    padding: 0 16px !important; /* aire a los lados como el estilo “card” */
    box-sizing: border-box !important;
  }

  .pg-hero-lgx .wpr-advanced-slider-wrap,
  .pg-hero-lgx .wpr-advanced-slider,
  .pg-hero-lgx .slick-list,
  .pg-hero-lgx .slick-track,
  .pg-hero-lgx .wpr-slider-item{
    height: 240px !important;  /* ajustable */
  }
}

/* ---------- FLECHAS (si tu slider las usa) ---------- */
.pg-hero-lgx .wpr-advanced-slider-arrow{
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.95) !important;
  border: 1px solid rgba(229,231,235,.9) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.16) !important;
  color: #6b7280 !important;
  transition: transform .15s ease, box-shadow .2s ease !important;
}

.pg-hero-lgx .wpr-advanced-slider-arrow:hover{
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.22) !important;
}

/* En móvil: flechas un toque más chicas */
@media (max-width: 767px){
  .pg-hero-lgx .wpr-advanced-slider-arrow{
    width: 38px !important;
    height: 38px !important;
  }
}

/* ---------- DOTS (si los tenés activos) ---------- */
.pg-hero-lgx .slick-dots{
  bottom: 12px !important;
}
.pg-hero-lgx .slick-dots li button:before{
  font-size: 8px !important;
  opacity: .35 !important;
}
.pg-hero-lgx .slick-dots li.slick-active button:before{
  opacity: 1 !important;
}

/* ==============================
   CHECKOUT CUPÓN – FIX MÓVIL
   (sin romper el toggle "mostrar cupón")
============================== */
@media (max-width: 767px){

  /* NO forzamos display del form (Woo lo controla).
     Solo cambiamos layout de sus hijos cuando se muestre. */
  form.checkout_coupon.woocommerce-form-coupon .form-row{
    float: none !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    clear: both !important;
  }

  /* Input full width */
  form.checkout_coupon.woocommerce-form-coupon #coupon_code{
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Botón full width sin recorte */
  form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"]{
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;

    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;

    padding: 14px 16px !important;
    line-height: 1.1 !important;
  }

  /* Texto "Aplicar" solo en móvil */
  form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"]{
    font-size: 0 !important;
  }
  form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"]::after{
    content: "Aplicar";
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
  }

  /* Importante: NO escondemos .clear porque Woo la usa a veces
     para que el contenedor calcule altura. */
  form.checkout_coupon.woocommerce-form-coupon .clear{
    display: block !important;
    height: 0 !important;
    clear: both !important;
  }
}/* End custom CSS */