.elementor-3170201 .elementor-element.elementor-element-6f41311 > .elementor-container{max-width:1500px;min-height:0px;}.elementor-3170201 .elementor-element.elementor-element-6f41311 > .elementor-container:after{content:"";min-height:inherit;}.elementor-3170201 .elementor-element.elementor-element-6f41311 > .elementor-container > .elementor-row > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap{align-content:flex-start;align-items:flex-start;}.elementor-3170201 .elementor-element.elementor-element-6f41311:not(.elementor-motion-effects-element-type-background), .elementor-3170201 .elementor-element.elementor-element-6f41311 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F4F4;}.elementor-3170201 .elementor-element.elementor-element-6f41311{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-6f41311 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3170201 .elementor-element.elementor-element-90fa76b{text-align:left;}.elementor-3170201 .elementor-element.elementor-element-90fa76b .elementor-image img{width:100%;border-radius:0px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-90fa76b > .elementor-widget-container{margin:024px 0px 0px 26px;padding:5px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__container{min-height:37px;border-radius:15px;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__submit{min-width:37px;color:rgba(0, 0, 0, 0.63);background-color:rgba(2, 1, 1, 0);}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__icon, .elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__input, .elementor-3170201 .elementor-element.elementor-element-366d2ec.elementor-search--button-type-text .elementor-search__submit{padding:0 calc(37px / 3);}.elementor-3170201 .elementor-element.elementor-element-366d2ec input[type="search"].elementor-search__input{font-family:"Figtree", sans-serif;}.elementor-3170201 .elementor-element.elementor-element-366d2ec:not(.elementor-search--skin-topbar) .elementor-search__container{background-color:#F4F4F4;border-color:rgba(0, 0, 0, 0.34);border-width:1px 1px 1px 1px;}.elementor-3170201 .elementor-element.elementor-element-366d2ec.elementor-search--skin-topbar input[type="search"].elementor-search__input{background-color:#F4F4F4;border-color:rgba(0, 0, 0, 0.34);border-width:1px 1px 1px 1px;}.elementor-3170201 .elementor-element.elementor-element-366d2ec:not(.elementor-search--skin-topbar) .elementor-search__products{width:696px !important;}.elementor-3170201 .elementor-element.elementor-element-366d2ec.elementor-search--skin-topbar .elementor-search__container{border-width:0 calc(50vw - 696px / 2);}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__products{margin-top:-8px;padding:0px 0px 0px 0px;border-radius:15px;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__product-name{font-family:"Figtree", sans-serif;font-weight:bold;text-transform:none;color:#707070;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .elementor-search__product-description{font-family:"Figtree", sans-serif;font-weight:200;color:#707070;}.elementor-3170201 .elementor-element.elementor-element-366d2ec a.elementor-search__product-link.ui-state-focus{background-color:#F4F4F4;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .ui-state-focus .elementor-search__product-name{color:#032CA6;}.elementor-3170201 .elementor-element.elementor-element-366d2ec .ui-state-focus .elementor-search__product-description{color:#707070;}.elementor-3170201 .elementor-element.elementor-element-366d2ec > .elementor-widget-container{padding:8px 7px 7px 44px;}.elementor-3170201 .elementor-element.elementor-element-568887f > .elementor-widget-container{margin:0px 0px 0px 50px;}.elementor-3170201 .elementor-element.elementor-element-9412d02 .elementor-icon-list-icon *{color:#F23005;}.elementor-3170201 .elementor-element.elementor-element-9412d02 .elementor-icon-list-icon i{font-size:23px;}.elementor-3170201 .elementor-element.elementor-element-9412d02 .elementor-icon-list-icon svg{width:23px;}.elementor-3170201 .elementor-element.elementor-element-9412d02 .elementor-icon-list-icon{text-align:left;}.elementor-3170201 .elementor-element.elementor-element-9412d02 .elementor-icon-list-item > *{font-family:"Figtree", sans-serif;}.elementor-3170201 .elementor-element.elementor-element-9412d02 > .elementor-widget-container{margin:3px -6px 3px 3px;padding:13px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 .elementor-icon-list-icon *{color:#373AB1;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 .elementor-icon-list-icon i{font-size:23px;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 .elementor-icon-list-icon svg{width:23px;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 .elementor-icon-list-icon{text-align:left;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 .elementor-icon-list-item > *{font-family:"Figtree", sans-serif;}.elementor-3170201 .elementor-element.elementor-element-2d8e496 > .elementor-widget-container{margin:-16px -16px -16px -16px;padding:13px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-77dcde2 .elementor-nav--main a.elementor-item{font-family:"Figtree", sans-serif;}.elementor-3170201 .elementor-element.elementor-element-77dcde2 .elementor-item > i{color:#F23005;font-size:23px;}.elementor-3170201 .elementor-element.elementor-element-77dcde2 > .elementor-widget-container{padding:5px 0px 0px 0px;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 .elementor-icon-list-icon *{color:#373AB1;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 .elementor-icon-list-icon i{font-size:17px;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 .elementor-icon-list-icon svg{width:17px;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 .elementor-icon-list-icon{text-align:left;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 .elementor-icon-list-item > *{font-family:"Figtree", sans-serif;}.elementor-3170201 .elementor-element.elementor-element-71bb2b4 > .elementor-widget-container{margin:-25px 16px 0px 0px;padding:13px 0px 0px 0px;}#header{box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}@media(min-width:768px){.elementor-3170201 .elementor-element.elementor-element-cd6df75{width:16.333%;}.elementor-3170201 .elementor-element.elementor-element-e72db8d{width:51.423%;}.elementor-3170201 .elementor-element.elementor-element-db96d60{width:15.082%;}.elementor-3170201 .elementor-element.elementor-element-2785c0d{width:17.11%;}}/* Start custom CSS for ajax-search, class: .elementor-element-366d2ec */#edit-ajax-search {
    margin-top: 100px; 
}

/* Ajustes generales para el buscador */
.elementor-search {
  position: relative;
}

.elementor-search .elementor-search__container {
  position: relative;
  overflow: visible;
}

/* Móvil y pantallas pequeñas */
@media (max-width: 480px) {
  /* Corrige la caja de resultados autocompletados */
  .elementor-search .elementor-search__products,
  .elementor-search .ui-autocomplete.ui-menu.elementor-search__products {
    position: absolute !important;
    left: 0 !important;              /* anula left inline */
    right: 0 !important;
    width: 100% !important;          /* anula width inline */
    max-width: 100vw !important;
    top: calc(100% + 6px) !important;/* queda debajo del input */
    max-height: 55vh !important;     /* evita que tape toda la pantalla */
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
    padding: 8px 0 !important;
    z-index: 9999 !important;        /* por encima de otros elementos */
  }

  /* Normaliza el tamaño base que pone jQuery UI */
  .elementor-search .ui-widget {
    font-size: 14px;                 /* reduce tipografía global del menú */
  }

  /* Cada ítem de resultado */
  .elementor-search .elementor-search__product {
    padding: 8px 10px !important;
  }

  /* Estructura del link de producto en fila */
  .elementor-search .elementor-search__product-link {
    display: flex;
    align-items: center;
    gap: 8px;
  }

  /* Imagen más pequeña y consistente */
  .elementor-search .elementor-search__product-image {
    width: 44px;
    height: 44px;
    object-fit: cover;
    flex: 0 0 44px;
    border-radius: 6px;
  }

  /* Textos más compactos */
  .elementor-search .elementor-search__product-name {
    font-size: 14px;
    line-height: 1.25;
  }

  .elementor-search .elementor-search__product-description {
    font-size: 12px;
    line-height: 1.2;
    opacity: 0.8;
  }

  /* Evita cortes por espacios no permitidos */
  .elementor-search .ui-menu .ui-menu-item a,
  .elementor-search .elementor-search__product-link {
    white-space: normal !important;
  }

  /* Input y botones más contenidos */
  .elementor-search .elementor-search__input {
    font-size: 14px;
    padding: 10px 40px 10px 12px;
  }

  .elementor-search .elementor-search__submit {
    width: 36px;
    height: 36px;
  }

  .elementor-search .elementor-search__icon.elementor-search__clear {
    right: 40px; /* no pise el botón submit */
  }
}

/* Opcional: si quieres ocultar imágenes en pantallas muy chicas */
@media (max-width: 360px) {
  .elementor-search .elementor-search__product-image {
    display: none !important;
  }
}



@media (max-width: 480px) {
  .elementor-search { position: static !important; } /* evita recortes del padre */

  .elementor-search .elementor-search__products {
    position: absolute !important;
    /* centrado respecto al viewport usando vw */
    left: 50vw !important;
    transform: translateX(-5vw);    /* centra al 50% de la pantalla */
    width: 100vw !important;
    max-width: 100vw !important;

    top: calc(100% + 6px) !important;/* queda debajo del input */
    z-index: 9999 !important;
    max-height: 60vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(0,0,0,.12);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fcd7208 *//* Selecciona la página de marca por su clase y oculta los filtros */
 #search_filters_suppliers,
 #block-categories,
 #category-top-menu,
 #search_filters_brands {
  display: none !important;
}


.block-categories,
.category-top-menu {
  pointer-events: none;  /* evita clics o hover */
  max-height: 0 !important;  /* colapsa cualquier altura */
  overflow: hidden !important;  /* oculta contenido sobrante */
}






#search_filters_wrapper {
  background-color: #FFFFFF;
  font-family: 'Figtree', sans-serif;
}


.facet-title {
  color: #032CA6;
  font-size: 14px ;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.facet-title span {
  cursor: pointer;
  color: #032CA6;
}

.facet-title .toggle-icon {
  color: #032CA6;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.facet-title .toggle-icon i.material-icons {
  font-size: 20px;
  line-height: 1;
}

.facet-label a {
 
  font-size: 14px;
  font-weight: normal;
  text-decoration: none;
}

.facet-label a:hover {
  color: #F23005;
}

.material-icons {
   color: #032CA6; 
  font-size: 18px;
}

.custom-checkbox input {
  margin-right: 8px;
}

.custom-checkbox .ps-shown-by-js {
  color: #032CA6;
}




/* Ocultar el encabezado del producto */
#product-list-header {
  display: none;
}

/* Ocultar las migas de pan (breadcrumb) */
.breadcrumb {
  display: none;
}

/* Ocultar el h1 con id content-wrapper */
#content-wrapper h1 {
  display: none;
}

/* Ocultar la descripción corta del fabricante */
.manufacturer-short_description {
  display: none;
}

/* Ocultar la descripción del fabricante */
.manufacturer-description {
  display: none;
}


#search_filters p.text-uppercase {
  font-size: 14px; 
  text-transform: capitalize !important;
}



@media (max-width: 768px) {
  #nb_products, .dropdown label[for="nb_products"] {
    display: none !important; /* Ocultar solo el dropdown de "Mostrar" */
  }

  /* Asegurarse de que el dropdown de "Ordenar" esté visible */
  #sort_products, .dropdown label[for="sort_products"] {
    display: block !important;
    margin-top: 8px;  /* Añadir margen superior al dropdown de "Ordenar" */
  }

  /* Ajustar la alineación en pantallas móviles */
  .sort-by-row {
    display: flex;
    justify-content: space-between; /* Alinear los elementos a los extremos */
    align-items: center; /* Alinear verticalmente */
    margin-bottom: 10px;
  }

  /* Ajustar el margen superior del label "Ordenar por" */
  .dropdown label[for="sort_products"] {
    margin-top: 4px;  /* Añadir un poco de espacio en la parte superior */
  }

  /* Ajustar la alineación de los elementos */
  .col-sm-6 {
    width: auto; /* Dejar que los elementos ocupen su ancho natural */
  }

  /* Asegurar que el icono del filtro (menú) se alinee correctamente en pantallas pequeñas */
  .filter-button {
    display: flex;
    justify-content: flex-end; /* Colocar el botón de filtro a la derecha */
    align-items: center;  /* Alinear el botón verticalmente */
    margin-top: 10px;  /* Añadir un margen superior si es necesario */
  }

  /* Asegurarse de que el contenedor principal no reserve espacio innecesario */
  #js-product-list-top {
    margin-bottom: 0 !important;
  }
  
    #js-product-list-top  {
    margin-top: 10px;  /* Ajuste del margen superior si es necesario */
  }
}

/* Estilo general para el botón del menú */
.filter-button {
    text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 20px;  /* Ajusta el tamaño del botón */
 
  color: white;  /* Color del texto */
  border-radius: 25px;  /* Bordes redondeados */
  font-size: 16px;  /* Tamaño de la fuente */
  font-weight: bold;  /* Peso de la fuente */
  border: none;  /* Eliminar borde predeterminado */
  cursor: pointer;  /* El cursor cambiará a pointer al pasar sobre el botón */
  transition: all 0.3s ease-in-out;  /* Transición suave para efectos */
}

/* Efecto al pasar el ratón por encima (hover) */
.filter-button:hover {
  background-color: #F23005;  /* Color de fondo cuando se pasa el ratón */
  transform: scale(1.05);  /* Efecto de agrandamiento */
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);  /* Sombra sutil */
}

/* Efecto al hacer clic (active) */
.filter-button:active {
  background-color: #F23005;  /* Mantener el mismo color de fondo */
  transform: scale(0.98);  /* Efecto de compresión al hacer clic */
}

/* Icono dentro del botón */
.filter-button i.material-icons {
  font-size: 24px;  /* Aumentar el tamaño del icono */
  margin-right: 8px;  /* Espacio entre el icono y el texto */
}






body#manufacturer nav.pagination{
  width: 100%;
}
body#manufacturer nav.pagination > .col-md-8.offset-md-2.pr-0,
body#manufacturer nav.pagination > .col-md-12.text-center,
body#manufacturer nav.pagination > .col-12.d-md-none{
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}/* End custom CSS */
/* Start custom CSS for icon-list, class: .elementor-element-9412d02 */.elementor-icon-list-item a:hover,
.elementor-icon-list-item:hover .elementor-icon-list-icon i,
.elementor-icon-list-item:hover .elementor-icon-list-text {
    color: #F23005 !important;
}

.ce-user-menu a:hover,
.ce-user-menu a:hover i,
.ce-user-menu a:hover span {
  color: #F23005 !important;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-6f41311 *//* --- responsive header (≤1024px) --- */
@media (max-width:1024px){
  /* 1) que el contenedor pueda partirse en dos filas */
  .elementor-row{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
  }

  /* 2) orden y anchos de las 4 columnas principales */
  /* logo */
  .elementor-element-cd6df75{ order:1; flex:0 0 40%; }

  /* columna con Sucursales / WhatsApp */
  .elementor-element-db96d60{
    order:2; flex:0 0 30%;
    display:flex; justify-content:flex-end;
  }

  /* columna con Mi cuenta */
  .elementor-element-2785c0d{
    order:3; flex:0 0 30%;
    display:flex; justify-content:flex-end;
  }

  /* columna del buscador + menú categorías (segunda fila completa) */
  .elementor-element-e72db8d{ order:4; flex:0 0 100%; }

  /* 3) dentro de la columna del buscador, poner buscador + menú en una sola fila */
  .elementor-element-e72db8d .elementor-widget-wrap{
    display:flex; align-items:center; gap:12px;
  }

  /* buscador ocupa todo el ancho disponible */
  .elementor-element-366d2ec{ flex:1 1 auto; }
  .elementor-element-366d2ec .elementor-search{ width:100%; }
  .elementor-element-366d2ec .elementor-search__container{ position:relative; width:100%; }
  .elementor-element-366d2ec .elementor-search__input{
    width:100%; height:44px; padding-right:48px; border-radius:22px;
  }
  .elementor-element-366d2ec .elementor-search__submit{
    position:absolute; right:8px; top:50%; transform:translateY(-50%);
  }

  /* el widget HTML del menú de categorías se alinea a la derecha */
  .elementor-element-568887f{ margin-left:auto; }
  .elementor-element-568887f .custom-menu{ margin-top:0; }

  /* 4) (opcional) ocultar WhatsApp en tablet/mobile para aligerar la fila 1 */
  .elementor-element-2d8e496{ display:none; }
}

/* un ajuste fino extra para móviles angostos */
@media (max-width:680px){
  .elementor-element-cd6df75{ flex:0 0 50%; }
  .elementor-element-db96d60{ flex:0 0 25%; }
  .elementor-element-2785c0d{ flex:0 0 25%; }
  
  .elementor-element-2d8e496{
      display:none;
  }
}

@media (max-width:1024px){
  .elementor-element-90fa76b .elementor-image img{
    max-width: 200px;
    height: auto;
  }
}

/* Móvil angosto: oculta el teléfono y reduce más el logo */
@media (max-width:680px){
  /* Ocultar el teléfono que está bajo el perfil (ID 71bb2b4) */
  .elementor-element-71bb2b4, .elementor-element-2d8e496{
    display: none !important;
  }

  /* Logo más compacto en móvil */
  .elementor-element-90fa76b .elementor-image img{
    max-width: 140px;   /* ajusta a tu gusto: 120–160px */
    height: auto;
    margin-top:-15px;
  }
}

@media (max-width:680px){
  /* Columna que contiene el buscador + categorías */
  .elementor-element-e72db8d{
    background:#fff;
    border-top:1px solid #eee;
    border-bottom:1px solid #eee;
  }
  .elementor-element-e72db8d .elementor-widget-wrap{
    padding:12px 16px;   /* espacio interior para que respire */
    gap:12px;
  }
}





/* --- Más compacto aún (≤560px) para mantener Sucursales + Usuario en la misma línea --- */
@media (max-width:560px){
  /* Reparte el ancho de la fila 1 y permite encoger contenido */
  .elementor-element-cd6df75{ flex:0 0 44%; }             /* logo */
  .elementor-element-db96d60,
  .elementor-element-2785c0d{
    flex:0 0 28%;
    min-width:0;                 /* clave: deja que el flex item se encoja */
    white-space:nowrap;          /* evita salto de palabra en etiquetas cortas */
  }

  /* Reduce tipografía y separación interna */
  .elementor-element-db96d60,
  .elementor-element-2785c0d{
    font-size:14px;              /* texto "Sucursales", "Jaime"… */
    line-height:1.2;
  }

  /* Iconos/imágenes un poco más pequeños y con menos gap */
  .elementor-element-db96d60 i,
  .elementor-element-db96d60 svg,
  .elementor-element-db96d60 img,
  .elementor-element-2785c0d i,
  .elementor-element-2785c0d svg,
  .elementor-element-2785c0d img{
    width:18px; height:18px;
  }
  .elementor-element-db96d60 .elementor-widget-container,
  .elementor-element-2785c0d .elementor-widget-container{
    gap:6px;                     /* si estos widgets usan flex/gap */
  }

  /* Logo un pelín más compacto para liberar espacio */
  .elementor-element-90fa76b .elementor-image img{
    max-width:120px; height:auto;
  }
}

/* Ultra angosto (≤480px): aprieta un poco más por si acaso */
@media (max-width:480px){
  .elementor-element-cd6df75{ flex:0 0 42%; }
  .elementor-element-db96d60,
  .elementor-element-2785c0d{ flex:0 0 29%; }

  .elementor-element-db96d60,
  .elementor-element-2785c0d{ font-size:13px; }

  .elementor-element-db96d60 i,
  .elementor-element-db96d60 svg,
  .elementor-element-db96d60 img,
  .elementor-element-2785c0d i,
  .elementor-element-2785c0d svg,
  .elementor-element-2785c0d img{
    width:16px; height:16px;
  }
}

/* === Mi cuenta: no overflow + más pegado a la izquierda === */
.elementor-element-2785c0d{
  min-width:0;                 /* permite encoger el flex-item */
  padding-right:8px;           /* lo acerca a la izquierda del borde */
}
.elementor-element-2785c0d .elementor-widget-wrap{
  display:flex; align-items:center; justify-content:flex-end;
  gap:8px; min-width:0;        /* clave para que no empuje el layout */
}
.elementor-element-2785c0d .elementor-widget-container{ min-width:0; }

/* Corta texto largo con puntos suspensivos en vez de desbordar */
.elementor-element-2785c0d a,
.elementor-element-2785c0d span{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  display:inline-block;
  vertical-align:middle;
}

/* Icono un poco más chico por defecto */
.elementor-element-2785c0d i,
.elementor-element-2785c0d svg,
.elementor-element-2785c0d img{
  width:18px; height:18px; flex:0 0 auto;
}

/* --- Desktop: sin sangrar a la derecha --- */
@media (min-width:1025px){
  .elementor-element-2785c0d{ margin-right:0 !important; padding-right:8px; }
  .elementor-element-2785c0d .elementor-widget-wrap{ gap:8px; }
}

/* --- Tablet/móvil: compactar para mantener la misma línea --- */
@media (max-width:680px){
  .elementor-element-2785c0d{
    flex:0 0 25%;              /* un pelín menos de ancho */
    padding-right:6px;
    font-size:11.5px;
    
    
  }
  .elementor-element-2785c0d i,
  .elementor-element-2785c0d svg,
  .elementor-element-2785c0d img{ width:16px; height:16px; }
}

/* Más angosto aún */
@media (max-width:560px){
  .elementor-element-2785c0d{ flex:0 0 26%; font-size:13px; }
}

/* Ultra angosto: última vuelta de tuerca */
@media (max-width:420px){
  .elementor-element-2785c0d{ flex:0 0 27%; font-size:12px; }
  .elementor-element-2785c0d i,
  .elementor-element-2785c0d svg,
  .elementor-element-2785c0d img{ width:14px; height:14px; }
}

/* (Opcional) Si en teléfonos MUY chicos aún se sale, reduce un 5% todo el bloque */
@media (max-width:360px){
  .elementor-element-2785c0d{
    transform:scale(.95);
    transform-origin:right center;
        font-size:11.5px;
/* que se compacte hacia adentro */
  }
}


@media (max-width:1024px){
  /* 1) La fila de esa columna será un grid de 2 columnas: [buscador][botón] */
  .elementor-element-e72db8d .elementor-widget-wrap,
  .elementor-sticky--active .elementor-element-e72db8d .elementor-widget-wrap{
    display:grid !important;
    grid-template-columns: 1fr auto !important;
    align-items:center !important;
    column-gap:12px !important;
  }

  /* 2) Anular el width:100% que Elementor pone a los widgets en móvil */
  .elementor-element-e72db8d .elementor-widget{
    width:auto !important;
    margin:0 !important;
  }

  /* 3) Ubicar explícitamente cada widget en su columna */
  .elementor-element-366d2ec{           /* buscador */
    grid-column:1 / 2 !important;
    min-width:0 !important;             /* permite que no empuje al botón */
  }
  .elementor-element-568b77a{           /* widget del botón */
    grid-column:2 / 3 !important;
    justify-self:end !important;
  }

  /* 4) El contenedor del widget HTML no debe forzar ancho completo */
  .elementor-element-568b77a > .elementor-widget-container{
    display:contents !important;        /* el botón ocupa solo su propio ancho */
  }

  /* 5) El botón en sí visible y con tamaño fijo */
  .mobile-menu-trigger{
    display:inline-flex !important;
    align-items:center; justify-content:center;
    width:40px !important; height:40px !important; padding:0;
    background:transparent; border:0;
  }

  /* 6) Ocultar el menú de escritorio en móvil para que no empuje nada */
  .custom-menu{ display:none !important; }
}



/* --- HEADER SIEMPRE NORMAL (no fixed, no sticky) --- */
.elementor-location-header,
.elementor-location-header.elementor-sticky,
.elementor-location-header.elementor-sticky--active,
.elementor-sticky--active {
  position: static !important;
  top: auto !important;
  inset: auto !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}

/* Elementor deja un "spacer" cuando activa sticky: lo normalizamos */
.elementor-sticky__spacer {
  height: auto !important;
}

/* Por si quedó mi clase de auto-hide aplicada en algún momento */
.header--hidden {
  transform: none !important;
}






/*anti desvanecido*/
/* 1) Quitar overlays/blur/gradientes del header de Elementor */
.elementor-location-header .elementor-background-overlay,
.elementor-location-header::before,
.elementor-location-header::after {
  content: none !important;
  background: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  opacity: 0 !important;
}

/* 2) Desactivar shape dividers (ondas/gradientes decorativos) del header */
.elementor-location-header .elementor-shape,
.elementor-location-header .elementor-shape .elementor-shape-fill{
  display: none !important;
}

/* 3) Por si el “glow” azul viene del panel lateral o su overlay */
.offcanvas-cats{ box-shadow: none !important; } /* quita resplandor del panel */
.offcanvas-backdrop{
  background: transparent !important;   /* sin tinte azul */
  backdrop-filter: none !important;     /* sin blur */
}
.offcanvas-backdrop[hidden]{ display:none !important; } /* asegura que no se vea cerrada */



@media (max-width: 768px){

  /* 1) Forzar header NO sticky */
  .elementor-location-header .elementor-sticky,
  .elementor-location-header .elementor-sticky--active {
    position: static !important;
    top: auto !important;
    inset: auto !important;
    transform: none !important;
    width: auto !important;
  }

  /* 2) Matar el spacer que mete Elementor */
  .elementor-sticky__spacer{
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 3) Ajustes de respiración arriba/abajo del header y primera sección */
  .elementor-location-header .elementor-section{
    margin-bottom: 8px !important;
    padding-bottom: 8px !important;
  }
  /* primera sección de contenido tras el header */
  main .elementor-section:first-of-type,
  #wrapper .elementor-section:first-of-type,
  .elementor > .elementor-section:first-of-type{
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}

@media (max-width: 768px) {
  /* Ocultar el texto de 'Sucursales' */
  .elementor-element-db96d60 .elementor-icon-list-text {
    display: none !important;
  }
  
  .elementor-icon-list-items{
     margin-bottom:2%;
  }
  /* Ocultar el nombre de usuario */
  .elementor-element-2785c0d .elementor-icon-list-text {
    display: none !important;
  }

  /* Asegurar que los iconos se muestren */
  .elementor-element-db96d60 .elementor-icon-list-icon,
  .elementor-element-2785c0d .elementor-icon-list-icon {
    display: inline-block !important;
  }
  
  /* Asegurar que el logo se mantenga visible */
  .elementor-element-cd6df75 .elementor-image img {
    display: block !important; /* Asegura que el logo no se oculte */
  }
}

@media (max-width: 1024px) {
    /* Hide the Sucursal text */
    .elementor-icon-list-items .elementor-icon-list-text:contains('Sucursal') {
        display: none;
    }

    /* Hide the username "Jaime" text */
    .elementor-icon-list-items .elementor-icon-list-text:contains('Jaime') {
        display: none;
    }
}
/* For mobile screens */
@media (max-width: 1024px) {
    /* Hide the "Jaime" text */
    .elementor-widget-sign-in .elementor-nav__container .elementor-item span {
        display: none;
    }
    
    
}

/* solo imagen: oculta textos y enlaces extra de la tarjeta */
#content-wrapper > section#main > ul > li.brand .brand-infos,
#content-wrapper > section#main > ul > li.brand .brand-products {
  display: none !important;
}

/* hace que el link de la imagen sea un bloque ancho completo */
#content-wrapper > section#main > ul > li.brand .brand-img a {
  display: block;
  width: 100%;
}

/* anula el 160×160 inline y normaliza la imagen */
#content-wrapper > section#main > ul > li.brand .brand-img {
  width: 100%;
  aspect-ratio: 1 / 1;      /* cuadrados uniformes; quítalo si no lo quieres */
  overflow: hidden;
  border-radius: 8px;
}
#content-wrapper > section#main > ul > li.brand .brand-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;       /* usa 'cover' si prefieres llenar el cuadro */
  display: block;
}

/* móvil: 2 marcas por fila */
@media (max-width: 600px) {
  #content-wrapper > section#main > ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  #content-wrapper > section#main > ul > li.brand {
    padding: 10px;

    border-radius: 10px;
    background: #fff;
    display: block;
    text-align: center;
  }

  /* evita cualquier desplazamiento horizontal accidental */
  #content-wrapper { overflow-x: hidden; }
}

/* opcional: más columnas en pantallas grandes */
@media (min-width: 601px) and (max-width: 991px) {
  #content-wrapper > section#main > ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}
@media (min-width: 992px) {
  #content-wrapper > section#main > ul {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
  }
}



/* ambas columnas: 2 filas, centradas verticalmente */
.elementor-element[data-id="db96d60"] .elementor-widget-wrap,
.elementor-element[data-id="2785c0d"] .elementor-widget-wrap{
  display:grid;
  grid-template-rows: auto auto;  /* 2 filas */
  row-gap:8px;                    /* espacio entre filas */
  align-content:center;           /* centra el bloque dentro de la columna */
}


.elementor-element[data-id="77dcde2"] nav.ce-user-menu{
  display:flex;
 margin-top: -2px    

}
.elementor-element[data-id="77dcde2"] .elementor-item{

  align-items:left;
      
}



@media (max-width: 767px){
  /* contenedor padre en fila */
  .elementor-element[data-id="db96d60"] .elementor-widget-wrap,
  .elementor-element[data-id="2785c0d"] .elementor-widget-wrap{
    display:flex;
    justify-content:center;  /* centra horizontalmente */
    align-items:center;      /* centra verticalmente */
    gap:30px;                /* espacio entre iconos, ajusta a gusto */
  }

  /* los iconos mismos */
  .elementor-element[data-id="db96d60"] i,
  .elementor-element[data-id="2785c0d"] i{
    font-size:24px; 
    line-height:1;
  }

  /* elimina márgenes que empujan */
  .elementor-element[data-id="db96d60"] .elementor-widget,
  .elementor-element[data-id="2785c0d"] .elementor-widget{
    margin-top:4px !important;
  }
  
  
.elementor-element[data-id="77dcde2"] nav.ce-user-menu{
  display:flex;
 margin-top: 4px    

}
}



@media (max-width: 768px) {
  .elementor-swiper {
    width: 100% !important;
    height: auto !important;
    display: block;
  }

  .swiper-wrapper {
    display: flex !important; 
    width: 100% !important;
    overflow: visible !important; /* Aseguramos que las imágenes no se oculten */
  }

  .swiper-slide {
    width: 100% !important;    /* Cada slide ocupa el 100% del ancho */
    flex-shrink: 0 !important;  /* No permite que los slides se encojan */
    margin: 0 !important;      /* Elimina el margen entre los slides */
  }

  .elementor-carousel-image {
    width: 100% !important;
    height: auto !important; /* Mantén la proporción original de las imágenes */
    object-fit: cover !important; /* Asegura que la imagen cubra el área del contenedor */
  }

  /* Corrección para asegurar que el swiper cargue las imágenes correctamente */
  .swiper-slide img {
    object-fit: cover; /* Asegura que las imágenes se ajusten bien dentro del slide */
    visibility: visible !important; /* Asegura que las imágenes no estén ocultas */
    opacity: 1 !important;  /* Asegura que las imágenes sean visibles */
    transition: opacity 0.3s ease-in-out; /* Efecto suave de visibilidad */
  }
  
   .elementor-element-02211db {
    order: 2;  /* Los productos relacionados se moverán después de la imagen del fabricante */
  }

  .elementor-element-f02af2a {
    order: 1;  /* La imagen del fabricante se mantendrá en su lugar */
  }

  /* Opcional: Para asegurarse de que todo el contenido en móviles ocupe el ancho completo */
  .related-products {
    width: 100%;
    padding: 10px;
  }
}



body.page-category-23-iluminacion .elementor-element-83da7f1,
body.page-category-24-plafon .elementor-element-83da7f1,
body.page-category-26-faro .elementor-element-83da7f1 {
    display: block !important;
}

body.page-category-23-iluminacion .elementor-element-83da7f1 .ce-image-gallery,
body.page-category-24-plafon .elementor-element-83da7f1 .ce-image-gallery,
body.page-category-26-faro .elementor-element-83da7f1 .ce-image-gallery {
    display: flex !important;
}/* End custom CSS */