.elementor-15122 .elementor-element.elementor-element-1910c5e8{--display:flex;}.elementor-15122 .elementor-element.elementor-element-1910c5e8:not(.elementor-motion-effects-element-type-background), .elementor-15122 .elementor-element.elementor-element-1910c5e8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00AEC7;}.elementor-15122 .elementor-element.elementor-element-21878446{--display:flex;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon-wrapper{text-align:center;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-383012b8{--display:flex;}.elementor-15122 .elementor-element.elementor-element-1a6d1999{--display:flex;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 > .elementor-widget-container{margin:-19px -30px 0px 0px;}.elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:1;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 .elementor-icon-wrapper{text-align:center;}.elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-518a5fb2.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-518a5fb2 .elementor-icon{font-size:24px;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 .elementor-icon svg{height:24px;}.elementor-15122 .elementor-element.elementor-element-14b60a8c{--display:flex;--min-height:0px;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-14b60a8c:not(.elementor-motion-effects-element-type-background), .elementor-15122 .elementor-element.elementor-element-14b60a8c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-15122 .elementor-element.elementor-element-52220e9c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-15122 .elementor-element.elementor-element-4f3a3902{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-4f3a3902.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-15122 .elementor-element.elementor-element-139d36c6{font-family:"Gotham", Sans-serif;font-weight:500;color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-57f932a9{--display:flex;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-2b89738f{z-index:0;text-align:center;}.elementor-15122 .elementor-element.elementor-element-2b89738f img{width:60%;}.elementor-15122 .elementor-element.elementor-element-56472ea6{--display:flex;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-d57127b{--main-alignment:right;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--toggle-button-icon-color:#FFFFFF;--toggle-button-border-width:0px;--toggle-icon-size:25px;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-15122 .elementor-element.elementor-element-d57127b .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-15122 .elementor-element.elementor-element-263a91d2 > .elementor-widget-container{margin:-22px -13px 0px 0px;}.elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:1;}.elementor-15122 .elementor-element.elementor-element-263a91d2 .elementor-icon-wrapper{text-align:center;}.elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-view-default .elementor-icon{color:var( --e-global-color-accent );border-color:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-view-framed .elementor-icon, .elementor-15122 .elementor-element.elementor-element-263a91d2.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-accent );}.elementor-15122 .elementor-element.elementor-element-263a91d2 .elementor-icon{font-size:24px;}.elementor-15122 .elementor-element.elementor-element-263a91d2 .elementor-icon svg{height:24px;}.elementor-15122 .elementor-element.elementor-element-67b8fe64{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15122 .elementor-element.elementor-element-aa824db.elementor-element{--align-self:center;}body:not(.rtl) .elementor-15122 .elementor-element.elementor-element-aa824db{left:803px;}body.rtl .elementor-15122 .elementor-element.elementor-element-aa824db{right:803px;}.elementor-15122 .elementor-element.elementor-element-aa824db{top:-61px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-15122 .elementor-element.elementor-element-4f3a3902{--width:20%;}.elementor-15122 .elementor-element.elementor-element-56472ea6{--width:30%;}}@media(max-width:1024px){.elementor-15122 .elementor-element.elementor-element-1910c5e8{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-21878446{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:center;}.elementor-15122 .elementor-element.elementor-element-21878446.e-con{--align-self:center;}.elementor-15122 .elementor-element.elementor-element-2497a9a3.elementor-element{--align-self:center;--order:-99999 /* order start hack */;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-element{--align-self:center;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon{font-size:30px;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon svg{height:30px;}.elementor-15122 .elementor-element.elementor-element-383012b8{--min-height:0px;}.elementor-15122 .elementor-element.elementor-element-1a6d1999{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-around;--align-items:center;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 > .elementor-widget-container{margin:0px 0px -9px 0px;}.elementor-15122 .elementor-element.elementor-element-44686921{width:var( --container-widget-width, 40px );max-width:40px;--container-widget-width:40px;--container-widget-flex-grow:0;}.elementor-15122 .elementor-element.elementor-element-44686921 > .elementor-widget-container{margin:0px 0px 5px 0px;}.elementor-15122 .elementor-element.elementor-element-44686921.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}}@media(max-width:767px){.elementor-15122 .elementor-element.elementor-element-1910c5e8{--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-21878446{--width:30%;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15122 .elementor-element.elementor-element-2497a9a3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-15122 .elementor-element.elementor-element-2497a9a3.elementor-element{--align-self:center;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b > .elementor-widget-container{margin:0px 0px -9px 0px;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b.elementor-element{--align-self:center;--order:-99999 /* order start hack */;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon-wrapper{text-align:center;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon{font-size:20px;}.elementor-15122 .elementor-element.elementor-element-2e6c8b7b .elementor-icon svg{height:20px;}.elementor-15122 .elementor-element.elementor-element-383012b8{--width:40%;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-15122 .elementor-element.elementor-element-7b8e37d img{width:100%;}.elementor-15122 .elementor-element.elementor-element-1a6d1999{--width:30%;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:center;--flex-wrap:nowrap;--z-index:1000;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 .elementor-icon{font-size:20px;}.elementor-15122 .elementor-element.elementor-element-518a5fb2 .elementor-icon svg{height:20px;}.elementor-15122 .elementor-element.elementor-element-44686921{width:auto;max-width:auto;}.elementor-15122 .elementor-element.elementor-element-44686921 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 5px 0px;}.elementor-15122 .elementor-element.elementor-element-44686921.elementor-element{--align-self:center;}}@media(max-width:1024px) and (min-width:768px){.elementor-15122 .elementor-element.elementor-element-21878446{--width:25%;}.elementor-15122 .elementor-element.elementor-element-383012b8{--width:70%;}.elementor-15122 .elementor-element.elementor-element-1a6d1999{--width:21%;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-2b89738f *//* Caso general: el logo es una imagen (PNG/SVG) cargada con <img> */
.logo--as-white img {
  filter: invert(1) brightness(200%) grayscale(1);
  /* Si lo quieres aún más “pleno”: añade contrast(110%) */
  /* filter: invert(1) brightness(220%) grayscale(1) contrast(110%); */
  transition: filter .2s ease;
}

/* Si tu logo es un SVG inline (no <img>), fuerza trazos a blanco */
.logo--as-white svg *,
.logo--as-white svg [fill] {
  fill: #fff !important;
  stroke: #fff !important;
}

/* Asegura que en hover del header (cuando cambias fondo) siga blanco */
.hdr-shell:hover .logo--as-white img,
.hdr-shell:focus-within .logo--as-white img {
  filter: invert(1) brightness(220%) grayscale(1);
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-5bd23d2c *//* ============ DESKTOP: mega cerrado por defecto, abre en hover ============ */
@media (min-width:1025px){
  /* Asegura línea superior solo con padres */
  .cats-header{
    display:flex; gap:28px; align-items:flex-start;
    list-style:none; margin:0; padding:0;
  }
  .cats-header > .cats-header__item{ position:relative; }

  .cats-header > .cats-header__item > a{
    color:#fff; text-decoration:none; font-weight:700; font-size:15px; line-height:1;
    padding:12px 0; display:inline-block;
    border-bottom:2px solid transparent;
    transition:border-color .2s ease, opacity .2s ease;
  }
  .cats-header > .cats-header__item:hover > a{ border-color:rgba(255,255,255,.9); }

  /* 🔒 Oculta TODOS los submenús por defecto (cualquier nivel) */
  .cats-header .cats-submenu{ display:none !important; }

  /* 🔓 Muestra SOLO el submenú del ítem padre que tiene hover */
  .cats-header > .cats-header__item:hover > .cats-submenu{
    display:grid !important;
  }

  /* Panel del dropdown (bloque) */
  .cats-header > .cats-header__item > .cats-submenu{
    position:absolute; left:0; top:100%;
    padding:14px 16px 18px;
    min-width:560px;
    grid-template-columns:repeat(3, minmax(160px,1fr));
    gap:12px 28px;
    z-index:10000;

    /* Fondo: si tu header se pone #00AEC7 al hover general, puedes dejarlo transparente;
       si quieres un bloque sutil, descomenta una de estas opciones: */
    /* background: rgba(0,0,0,.04); backdrop-filter: blur(6px) saturate(120%); */
    /* background: rgba(255,255,255,.06); */
  }

  /* “Ver todo” destacado y enlaces */
  .cats-submenu .cats-view-all > a{
    font-weight:800; text-decoration:none; color:#fff; display:inline-block; margin:0 0 6px;
  }
  .cats-submenu > .cats-submenu__item > a{
    color:#fff; text-decoration:none; font-weight:600; display:inline-block; margin:2px 0 4px;
    opacity:.95; transition:opacity .2s ease;
  }
  .cats-submenu > .cats-submenu__item > a:hover{ opacity:1; }

  /* Nietos con guía sutil a la izquierda */
  .cats-submenu > .cats-submenu__item > .cats-submenu{
    list-style:none; margin:6px 0 0 10px; padding:0 0 0 10px;
    border-left:1px solid rgba(255,255,255,.18);
    display:block !important; /* este subnivel sí visible dentro del panel */
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
    color:#fff; text-decoration:none; font-weight:400; display:inline-block; margin:3px 0; opacity:.9;
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a:hover{ opacity:1; }
}

/* ============ MÓVIL/TABLET: no cambiamos tu off-canvas ============ */
/* (sin reglas; el menú vertical queda como lo tienes) */
/* ===========================
   MEGA como BARRA FULL-WIDTH
   con fondo translúcido (glass)
   =========================== */
@media (min-width:1025px){
  /* Solo padres visibles en la fila */
  .cats-header .cats-submenu{ display:none !important; }

  .cats-header > .cats-header__item{ position:static; }       /* importante */
  .cats-header > .cats-header__item:hover > .cats-submenu{
    display:grid !important;
  }

  /* Submenú centrado y limitado a container, pero con fondo full-width */
  .cats-header > .cats-header__item > .cats-submenu{
    /* ancho del contenido */
    --container-max: 1180px;                 /* ajusta a tu diseño */
    width: min(var(--container-max), calc(100vw - 48px));
    margin: 0 auto;

    position: absolute;
    left: 50%; top: 100%;
    transform: translateX(-50%);
    padding: 18px 20px 22px;
    grid-template-columns: repeat(3, minmax(160px, 1fr));
    gap: 12px 28px;
    z-index: 10000;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 16px 36px rgba(0,0,0,.25);

    /* el truco: pseudo de fondo que se extiende a TODO el ancho */
  }
  .cats-header > .cats-header__item > .cats-submenu::before{
    content:"";
    position:absolute;
    left: 50%; top: 0; transform: translateX(-50%);
    width: 100vw; height: 100%;
    background: rgba(255,255,255,.86);              /* blanco translúcido */
    backdrop-filter: saturate(120%) blur(10px);
    -webkit-backdrop-filter: saturate(120%) blur(10px);
    border-radius: inherit;
    z-index: -1;                                    /* detrás del grid */
  }

  /* Tipografía y enlaces legibles sobre fondo claro */
  .cats-submenu .cats-view-all{ display:none !important; }    /* quita “Ver todo” */

  .cats-submenu > .cats-submenu__item > a{
    color:#111; text-decoration:none; font-weight:600;
    display:inline-block; margin:2px 0 6px;
  }
  .cats-submenu > .cats-submenu__item > a:hover{ text-decoration:underline; }

  .cats-submenu > .cats-submenu__item > .cats-submenu{
    list-style:none; margin:6px 0 0 10px; padding:0 0 0 10px;
    border-left:1px solid rgba(0,0,0,.12);
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
    color:#333; font-weight:400; display:inline-block; margin:3px 0;
  }
}

/* Opcional: 4 columnas en pantallas anchas */
@media (min-width:1400px){
  .cats-header > .cats-header__item > .cats-submenu{
    grid-template-columns: repeat(4, minmax(160px,1fr));
  }
}

/* Si prefieres un tinte de marca en vez de blanco, cambia SOLO esta línea:  */
 /* .cats-header > .cats-header__item > .cats-submenu::before{ background: rgba(0,174,199,.85); } */

@media (min-width:1025px){
  /* Estado base: oculto pero transicionable */
  .cats-header > .cats-header__item > .cats-submenu{
    position:absolute; left:50%; top:100%; transform:translateX(-50%) translateY(8px);
    opacity:0; visibility:hidden; pointer-events:none;
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
    z-index:10000;
  }

  /* Mostrar en hover o cuando JS ponga .is-open */
  .cats-header > .cats-header__item:hover > .cats-submenu,
  .cats-header > .cats-header__item.is-open > .cats-submenu{
    opacity:1; visibility:visible; pointer-events:auto;
    transform:translateX(-50%) translateY(0);
  }
}

/* padres */
.cats-header > .cats-header__item > a{
  text-transform: uppercase;
  letter-spacing: .02em;
  font-weight: 700;
}
/* subcategorías */
.cats-submenu > .cats-submenu__item > a{
  text-transform: uppercase;
  letter-spacing: .01em;
  font-weight: 600;
}
/* nietos (sin cambio) */
.cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
  text-transform: none;
}
/* ============ DESKTOP: mega cerrado por defecto, abre en hover ============ */
@media (min-width:1025px){
  /* Asegura línea superior solo con padres */
  .cats-header{
    display:flex; gap:28px; align-items:flex-start;
    list-style:none; margin:0; padding:0;
  }
  .cats-header > .cats-header__item{ position:relative; }

  .cats-header > .cats-header__item > a{
    color:#fff; text-decoration:none; font-weight:700; font-size:15px; line-height:1;
    padding:12px 0; display:inline-block;
    border-bottom:2px solid transparent;
    transition:border-color .2s ease, opacity .2s ease;
  }
  .cats-header > .cats-header__item:hover > a{ border-color:rgba(255,255,255,.9); }

  /* 🔒 Oculta TODOS los submenús por defecto (cualquier nivel) */
  .cats-header .cats-submenu{ display:none !important; }

  /* 🔓 Muestra SOLO el submenú del ítem padre que tiene hover */
  .cats-header > .cats-header__item:hover > .cats-submenu{
    display:grid !important;
  }

  /* Panel del dropdown (bloque) */
  .cats-header > .cats-header__item > .cats-submenu{
    position:absolute; left:0; top:100%;
    padding:14px 16px 18px;
    min-width:560px;
    grid-template-columns:repeat(3, minmax(160px,1fr));
    gap:12px 28px;
    z-index:10000;

    /* Fondo: si tu header se pone #00AEC7 al hover general, puedes dejarlo transparente;
       si quieres un bloque sutil, descomenta una de estas opciones: */
    /* background: rgba(0,0,0,.04); backdrop-filter: blur(6px) saturate(120%); */
    /* background: rgba(255,255,255,.06); */
  }

  /* “Ver todo” destacado y enlaces */
  .cats-submenu .cats-view-all > a{
    font-weight:800; text-decoration:none; color:#fff; display:inline-block; margin:0 0 6px;
  }
  .cats-submenu > .cats-submenu__item > a{
    color:#fff; text-decoration:none; font-weight:600; display:inline-block; margin:2px 0 4px;
    opacity:.95; transition:opacity .2s ease;
  }
  .cats-submenu > .cats-submenu__item > a:hover{ opacity:1; }

  /* Nietos con guía sutil a la izquierda */
  .cats-submenu > .cats-submenu__item > .cats-submenu{
    list-style:none; margin:6px 0 0 10px; padding:0 0 0 10px;
    border-left:1px solid rgba(255,255,255,.18);
    display:block !important; /* este subnivel sí visible dentro del panel */
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
    color:#fff; text-decoration:none; font-weight:400; display:inline-block; margin:3px 0; opacity:.9;
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a:hover{ opacity:1; }
}

/* ============ MÓVIL/TABLET: no cambiamos tu off-canvas ============ */
/* (sin reglas; el menú vertical queda como lo tienes) */
/* ===========================
   MEGA como BARRA FULL-WIDTH
   con fondo translúcido (glass)
   =========================== */
@media (min-width:1025px){
  /* Solo padres visibles en la fila */
  .cats-header .cats-submenu{ display:none !important; }

  .cats-header > .cats-header__item{ position:static; }       /* importante */
  .cats-header > .cats-header__item:hover > .cats-submenu{
    display:grid !important;
  }

  /* Submenú centrado y limitado a container, pero con fondo full-width */
  .cats-header > .cats-header__item > .cats-submenu{
    /* ancho del contenido */
    --container-max: 1180px;                 /* ajusta a tu diseño */
    width: min(var(--container-max), calc(100vw - 48px));
    margin: 0 auto;

    position: absolute;
    left: 50%; top: 100%;
    transform: translateX(-50%);
    padding: 18px 20px 22px;
    grid-template-columns: repeat(3, minmax(160px, 1fr));
    gap: 12px 28px;
    z-index: 10000;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 16px 36px rgba(0,0,0,.25);

    /* el truco: pseudo de fondo que se extiende a TODO el ancho */
  }
  .cats-header > .cats-header__item > .cats-submenu::before{
    content:"";
    position:absolute;
    left: 50%; top: 0; transform: translateX(-50%);
    width: 100vw; height: 100%;
    background: rgba(255,255,255,.86);              /* blanco translúcido */
    backdrop-filter: saturate(120%) blur(10px);
    -webkit-backdrop-filter: saturate(120%) blur(10px);
    border-radius: inherit;
    z-index: -1;                                    /* detrás del grid */
  }

  /* Tipografía y enlaces legibles sobre fondo claro */
  .cats-submenu .cats-view-all{ display:none !important; }    /* quita “Ver todo” */

  .cats-submenu > .cats-submenu__item > a{
    color:#111; text-decoration:none; font-weight:600;
    display:inline-block; margin:2px 0 6px;
  }
  .cats-submenu > .cats-submenu__item > a:hover{ text-decoration:underline; }

  .cats-submenu > .cats-submenu__item > .cats-submenu{
    list-style:none; margin:6px 0 0 10px; padding:0 0 0 10px;
    border-left:1px solid rgba(0,0,0,.12);
  }
  .cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
    color:#333; font-weight:400; display:inline-block; margin:3px 0;
  }
}

/* Opcional: 4 columnas en pantallas anchas */
@media (min-width:1400px){
  .cats-header > .cats-header__item > .cats-submenu{
    grid-template-columns: repeat(4, minmax(160px,1fr));
  }
}

/* Si prefieres un tinte de marca en vez de blanco, cambia SOLO esta línea:  */
 /* .cats-header > .cats-header__item > .cats-submenu::before{ background: rgba(0,174,199,.85); } */

@media (min-width:1025px){
  /* Estado base: oculto pero transicionable */
  .cats-header > .cats-header__item > .cats-submenu{
    position:absolute; left:50%; top:100%; transform:translateX(-50%) translateY(8px);
    opacity:0; visibility:hidden; pointer-events:none;
    transition: opacity .18s ease, visibility .18s ease, transform .18s ease;
    z-index:10000;
  }

  /* Mostrar en hover o cuando JS ponga .is-open */
  .cats-header > .cats-header__item:hover > .cats-submenu,
  .cats-header > .cats-header__item.is-open > .cats-submenu{
    opacity:1; visibility:visible; pointer-events:auto;
    transform:translateX(-50%) translateY(0);
  }
}

/* padres */
.cats-header > .cats-header__item > a{
  text-transform: uppercase;
  letter-spacing: .02em;
  font-weight: 700;
}
/* subcategorías */
.cats-submenu > .cats-submenu__item > a{
  text-transform: uppercase;
  letter-spacing: .01em;
  font-weight: 600;
}
/* nietos (sin cambio) */
.cats-submenu > .cats-submenu__item > .cats-submenu > li > a{
  text-transform: none;
}


.cats-header > .cats-header__item > a {
  font-family: "Gotham", sans-serif !important;
  font-weight: 700;
}

/* Subcategorías */
.cats-submenu > .cats-submenu__item > a {
  font-family: "Gotham", sans-serif !important;
  font-weight: 600;
}

/* Nietos */
.cats-submenu > .cats-submenu__item > .cats-submenu > li > a {
  font-family: "Gotham", sans-serif !important;
  font-weight: 400;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-14b60a8c *//* ===== Íconos (carrito, usuario, etc.) en BLANCO siempre ===== */
.hdr-shell svg{ fill:#fff !important; color:#fff !important; }
.hdr-shell:hover svg,
.hdr-shell:focus-within svg{ fill:#fff !important; color:#fff !important; }

/* ===== FiboSearch en BLANCO ===== */
/* Estado normal (tu configuración actual) */
.hdr-shell .dgwt-wcas-search-input{
  color:#fff !important;
}
.hdr-shell .dgwt-wcas-search-input::placeholder{
  color: rgba(255,255,255,.85) !important;
}
.hdr-shell .dgwt-wcas-sf-wrapp::after{ color:#fff !important; }

/* ===== Al HOVER o al FOCUS -> todo oscuro ===== */
.hdr-shell .dgwt-wcas-sf-wrapp:hover .dgwt-wcas-search-input,
.hdr-shell .dgwt-wcas-search-input:focus{
  color:#111 !important;          /* texto que escribes */
  caret-color:#111;               /* color del cursor */
}

.hdr-shell .dgwt-wcas-sf-wrapp:hover .dgwt-wcas-search-input::placeholder,
.hdr-shell .dgwt-wcas-search-input:focus::placeholder{
  color: rgba(0,0,0,.55) !important; /* placeholder más oscuro */
}

/* Si usas un fondo claro al interactuar, descomenta: */
/*
.hdr-shell .dgwt-wcas-sf-wrapp:hover,
.hdr-shell .dgwt-wcas-sf-wrapp.dgwt-wcas-is-focus{
  background:#fff !important;
  border-color: rgba(0,0,0,.2) !important;
}
*/

/* Lupa/ícono oscuro al interactuar (usa el ::after que ya tienes) */
.hdr-shell .dgwt-wcas-sf-wrapp:hover::after,
.hdr-shell .dgwt-wcas-sf-wrapp.dgwt-wcas-is-focus::after{
  color:#111 !important;
}

/* Suaviza el cambio */
.hdr-shell .dgwt-wcas-search-input,
.hdr-shell .dgwt-wcas-sf-wrapp::after{
  transition: color .15s ease;
}

/* ===== Logo en BLANCO ===== */
/* Opción rápida (convierte tu logo oscuro a blanco visualmente) */
.hdr-shell img.custom-logo,
.hdr-shell img.site-logo,
.hdr-shell .site-logo img{
  filter: brightness(0) invert(1) !important;
  transition: filter .2s ease;
}

/* Si tu logo es SVG inline, fuerza sus trazos a blanco */
.hdr-shell .site-logo svg *{ fill:#fff !important; stroke:#fff !important; }/* End custom CSS */
/* Start custom CSS *//* 1) Quitar el fondo blanco del contenedor de FiboSearch */
.dgwt-wcas-search-form,
.dgwt-wcas-sf-wrapp {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* 2) Asegurar referencia para posicionar el pseudo-icono */
.dgwt-wcas-search-wrapp,
.dgwt-wcas-sf-wrapp {
  position: relative !important;
}

/* 3) OCULTAR la lupa original del plugin (la que queda pegada a la izquierda) */
.dgwt-wcas-ico-magnifier,
.dgwt-wcas-ico.dgwt-wcas-ico-magnifier {
  display: none !important;
}

/* 4) INPUT compacto y con espacio a la derecha para la nueva lupa */
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input,
.dgwt-wcas-sf-wrapp input.dgwt-wcas-search-input {
  background: transparent !important;
  border: 1.5px solid rgba(255,255,255,.6);
  border-radius: 30px;
  padding: 6px 44px 6px 14px;  /* espacio extra a la derecha para el icono */
  height: 34px;
  color: #fff;
  font-size: 14px;
  transition: all .3s ease;
}

/* Hover/focus: se vuelve blanco */
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input:hover,
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input:focus,
.dgwt-wcas-sf-wrapp input.dgwt-wcas-search-input:hover,
.dgwt-wcas-sf-wrapp input.dgwt-wcas-search-input:focus {
  background: #fff !important;
  color: #111;
  border-color: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,.15);
}

/* 5) NUEVA LUPA a la derecha usando ::after (toma el color de 'color') */
.dgwt-wcas-sf-wrapp::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  pointer-events: none;
  color: #fff; /* color por defecto de la lupa */
  /* Usamos máscara SVG para que herede el color */
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7" stroke="black" stroke-width="2" fill="none"/><line x1="16.5" y1="16.5" x2="21" y2="21" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>') no-repeat center / contain;
  mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7" stroke="black" stroke-width="2" fill="none"/><line x1="16.5" y1="16.5" x2="21" y2="21" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>') no-repeat center / contain;
  background: currentColor;
  transition: color .3s ease;
}

/* 6) Cuando el input está en hover/focus, la lupa se pone oscura */
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input:hover ~ .dgwt-wcas-sf-wrapp::after,
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input:focus ~ .dgwt-wcas-sf-wrapp::after { 
  /* (fallback por si el HTML no permite el .elementor-15122 anterior) */
}

.dgwt-wcas-sf-wrapp:focus-within::after {
  color: #111;
}

/* Si usas placeholder blanco */
.dgwt-wcas-search-wrapp input.dgwt-wcas-search-input::placeholder {
  color: rgba(255,255,255,.7);
  font-style: italic;
}/* End custom CSS */