/* header.css — Header BW3D (Theme Builder, post 91). 1 barra estilo Neuros home-2.
   Render: header[data-elementor-type=header] > #..1a2b3c4d > #..7a8b9c0d (barra)
     > #..8b9c0d1e (logo+nav)  +  #..c2d3e4f5 (search+cart+CTA)
   NOTA: _css_classes NO renderiza en CONTAINERS v3 -> containers por .elementor-element-{id};
   los widgets si reciben su clase bw-* (.bw-nav/.bw-search/.bw-cart/.bw-logo/.bw-btn). */

/* Sticky reveal estilo Neuros: el header vive en flujo normal; al pasar su altura,
   bw3d.js agrega .bw-sticky-active y el header BAJA fijo desde el borde superior. */
@keyframes bwHeaderDown { from { transform:translateY(-100%); } to { transform:translateY(0); } }
header[data-elementor-type="header"].bw-sticky-active{
  position:fixed; top:0; left:0; right:0; width:100%; z-index:1000;
  animation:bwHeaderDown .4s var(--eo) both;
}
.admin-bar header[data-elementor-type="header"].bw-sticky-active{ top:32px; }

/* Barra (mainbar) — papel, redondeada, sombra, flotante */
.elementor-element-7a8b9c0d{
  background:var(--white);
  border-radius:var(--r-xl);
  padding:10px 24px !important;
  box-shadow:var(--sh-light);
  min-height:64px;
  transition:padding .3s var(--eo), box-shadow .3s var(--eo);
}
/* Scrolled: pegado al borde superior (sin gap arriba), mismo ancho/inset que en scroll 0.
   Saco solo el padding-top del root (mantengo padding lateral = mismo ancho). Sombra scrolled. */
.bw-sticky-active .elementor-element-1a2b3c4d{ padding-top:0 !important; background-color:transparent !important; }

/* Overflow visible en TODA la cadena del header. El overflow:hidden no estaba en los settings
   ni es el default de Elementor (--overflow:visible) → fuerzo la variable --overflow Y la propiedad. */
.elementor-location-header,
.elementor-location-header .e-con,
.elementor-location-header .e-con > .e-con-inner,
header[data-elementor-type="header"],
.elementor-element-1a2b3c4d,
.elementor-element-7a8b9c0d,
.elementor-element-8b9c0d1e,
.elementor-element-b1c2d3e4{
  --overflow:visible !important;
  overflow:visible !important;
}
.bw-sticky-active .elementor-element-7a8b9c0d{
  border-radius:0px 0px 24px 24px;
  box-shadow:0px 5px 23px 4px rgba(0, 0, 0, 0.1);
}

/* Logo */
.bw-logo img{ display:block; }

/* Nav */
.bw-nav .elementor-nav-menu > li > a.elementor-item{
  color:var(--ink) !important;
  font-family:var(--font-body); font-weight:600; font-size:14px; text-transform:none;
  padding:10px 16px !important; border-radius:var(--r-pill);
  transition:background-color .25s var(--eo), color .25s var(--eo);
}
.bw-nav .elementor-nav-menu > li > a.elementor-item-active{ background:var(--ink); color:var(--paper) !important; }
.bw-nav .elementor-nav-menu > li > a.elementor-item-active .bw-roll{ color:var(--paper) !important; }
/* Hover estilo Neuros: pill gris (no rojo); item activo mantiene pill oscuro */
.bw-nav .elementor-nav-menu > li > a.elementor-item:hover{ background:var(--hairline-l); color:var(--ink) !important; }
.bw-nav .elementor-nav-menu > li > a.elementor-item-active:hover{ background:var(--ink); color:var(--paper) !important; }
.bw-nav .elementor-nav-menu a.elementor-item .bw-roll--ghost{ color:var(--ink); }
.bw-nav .elementor-nav-menu .menu-item-has-children > a.elementor-item::after{
  content:""; display:inline-block; width:.45em; height:.45em; margin-left:.5em;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}

/* Search + Cart (Woo Menu Cart) */
.bw-search .elementor-icon{ font-size:18px; cursor:pointer; color:var(--ink); }
.bw-search:hover .elementor-icon{ color:var(--red); }
.bw-cart .elementor-menu-cart__toggle, .bw-cart .elementor-menu-cart__toggle_button{ background:transparent !important; color:var(--ink); }
.bw-cart .elementor-menu-cart__toggle svg, .bw-cart svg{ fill:currentColor; }
.bw-cart:hover .elementor-menu-cart__toggle{ color:var(--red); }

/* CTA — usa .bw-btn (filled). Compacto en el header */
.bw-right .elementor-button.bw-btn, .elementor-element-c2d3e4f5 .elementor-button.bw-btn{ padding:10px 22px; font-size:14px; }

/* Mobile toggle (hamburguesa nativa del Nav Menu) */
.bw-nav .elementor-menu-toggle{ color:var(--ink); }

@media (max-width:1024px){
  .elementor-element-7a8b9c0d{ padding:8px 16px !important; }
}
