.elementor-3581 .elementor-element.elementor-element-c68c211{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3581 .elementor-element.elementor-element-1227764{width:var( --container-widget-width, 1000px );max-width:1000px;--container-widget-width:1000px;--container-widget-flex-grow:0;}.elementor-3581 .elementor-element.elementor-element-1227764.elementor-element{--align-self:center;}.elementor-3581 .elementor-element.elementor-element-1227764.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3581 .elementor-element.elementor-element-12b998e.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3581 .elementor-element.elementor-element-a690a16{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:35px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3581 .elementor-element.elementor-element-5f31695.xpro-widget-bg-overlay:before{transition:background 0.3s;}.elementor-3581 .elementor-element.elementor-element-baa7a4f.xpro-widget-bg-overlay:before{transition:background 0.3s;}@media(max-width:767px){.elementor-3581 .elementor-element.elementor-element-c68c211{--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3581 .elementor-element.elementor-element-1227764{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;padding:0px 10px 0px 10px;--container-widget-width:260px;--container-widget-flex-grow:0;width:var( --container-widget-width, 260px );max-width:260px;}.elementor-3581 .elementor-element.elementor-element-12b998e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-3581 .elementor-element.elementor-element-a690a16{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-3581 .elementor-element.elementor-element-c68c211{--content-width:1200px;}}/* Start custom CSS for shortcode, class: .elementor-element-1227764 */.cat-inline-select{
        border-top: 0 !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-radius: 0 !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.2) !important;
        background: transparent !important;
        outline: none;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1227764 */.cat-inline-nav {
    justify-content: center !important;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;             /* separaciones entre ítems */
  list-style: none;
  padding: 0;
  margin: 0;
}
.cat-inline-nav .cat-inline-item a {
    text-align: center !important;
    font-family: Avenir lt pro Book;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 400;
  color: #251F1F;        /* gris azulado */
}
.cat-inline-nav .cat-inline-item a:hover {
  text-decoration: underline;
}
.cat-inline-nav .cat-inline-item.is-descuentos a {
  color: #ff7a00;        /* naranja para DESCUENTOS */
}

/* Opcional: centrado en desktop y ajuste en móvil */
.cat-inline-nav-wrap { width: 100%; }
@media (max-width: 768px){
  .cat-inline-nav { gap: 16px; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-5f31695 *//* ===== OL Category Grid (scoped & conflict-free) ===== */

/* Grid base */
.ol-cat-grid {
  display: grid;
  grid-template-columns: repeat(var(--ol-cols, 3), 1fr);
  gap: var(--ol-gap, 10px);
  width: 100%;
}

/* Grid responsive columnas */
@media (max-width: 1024px){
  .ol-cat-grid { grid-template-columns: repeat(var(--ol-cols-tab, 2), 1fr); }
}
@media (max-width: 640px){
  .ol-cat-grid { 
      grid-template-columns: repeat(va(--ol-cols-mob, 2), 1fr);
      
  }
  .ol-cat-grid .ol-cat-card {
  height: 300px !important;

}
}

/* Card */
.ol-cat-grid .ol-cat-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--ol-radius, 0px);
  display: block;
  text-decoration: none;
  background-color: #f8f8f8;
  height: 500px;
  cursor: pointer;
}

/* Fondo */
.ol-cat-grid .ol-cat-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: transform .6s ease, filter .6s ease;
}

/* Overlay */
.ol-cat-grid .ol-cat-card::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,0) 50%);
  opacity: 0;
  transition: opacity .4s ease;
  pointer-events: none;
  z-index: 1;
}

/* Título */
.ol-cat-grid .ol-cat-title{
  position: absolute;
  left: 10%;
  right: 10%;
  bottom: 15%;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: var(--ol-text-transform, uppercase);
  text-align: var(--ol-text-align, left);
  font-size: var(--ol-text-size, clamp(14px,1.6vw,22px));
  line-height: 1;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .4s ease, transform .4s ease;
  z-index: 2;
}

/* Hover effects (desktop/hover devices) */
@media (hover:hover){
  .ol-cat-grid .ol-cat-card:hover .ol-cat-bg {
    transform: scale(1.05);
    filter: brightness(0.9);
  }
  .ol-cat-grid .ol-cat-card:hover::after { opacity: .9; }
  .ol-cat-grid .ol-cat-card:hover .ol-cat-title {
    opacity: 1;
  }
}

/* Variantes por variable (inline en el contenedor)
   - hover  (default): aparece con hover
   - always: siempre visible
   - none  : oculto
*/
.ol-cat-grid[style*="--ol-title-visibility: always"] .ol-cat-title {
  opacity: 1;
  transform: none;
}
.ol-cat-grid[style*="--ol-title-visibility: none"] .ol-cat-title {
  display: none;
}

/* Móvil: texto siempre visible, sin animación (salvo que lo fuerces a none) */
@media (max-width: 767px){
  .ol-cat-grid:not([style*="--ol-title-visibility: none"]) 
  .ol-cat-title{
    opacity: 1;
    transform: none;
  }
  /* overlay más sutil en móvil */
  .ol-cat-grid .ol-cat-card::after { opacity: .6; }
}

/* Accesibilidad: respeta usuarios con motion reducido */
@media (prefers-reduced-motion: reduce){
  .ol-cat-grid .ol-cat-bg,
  .ol-cat-grid .ol-cat-card::after,
  .ol-cat-grid .ol-cat-title {
    transition: none;
  }
}
/* Título centrado */
.ol-cat-grid .ol-cat-title {
  display: flex
;
    justify-content: center;
    align-items: center;
    position: relative;
    top: 0;
    left: 0;
    transform: translate(0%, 0%);
    height: 100%;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: var(--ol-text-transform, uppercase);
  text-align: center;
  font-size: var(--ol-text-size, clamp(14px,1.6vw,22px));
  line-height: 1.2;
  opacity: 0;
  transition: opacity .4s ease, transform .4s ease;
  z-index: 2;
}

/* Animación al hacer hover */
@media (hover:hover){
  .ol-cat-grid .ol-cat-card:hover .ol-cat-title {
    opacity: 1;
  }
}
@/* ... todo tu CSS anterior ... */

/* ===== Ajuste mobile: texto siempre visible y sin sombra ===== */
@media (max-width: 767px) {
  .ol-cat-grid .ol-cat-card::after {
    opacity: 0 !important;
    background: none !important;
  }

  .ol-cat-grid .ol-cat-title {
    opacity: 1 !important;
    transform: none !important;
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    z-index: 2;
  }
}
@media (max-width: 767px) {
  .ol-cat-grid .ol-cat-card:last-child::after {
    opacity: 1 !important;
    background: linear-gradient(to top, rgba(0,0,0,0.25), rgba(0,0,0,0)) !important;
  }
}

@media (max-width: 767px) {
    .cat-inline-select-wrap::after {
       
        width: 18px !important;
        height: 18px !important;
        color: rgba(0, 0, 0, 0.6) !important;
        
    }
}
@media (max-width: 640px) {
    .ol-cat-grid .ol-cat-card {
        height: 200px !important;
    }
}/* End custom CSS */