/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

#masthead{
    display:none;
}


.home .col-full-nav{
    margin-top:-20px!important;
}

/* =========================
   HEADER: ESTADO INICIAL
   ========================= */
.mi-header {
    background: transparent !important;
    transition: background 0.3s ease, color 0.3s ease;
}

/* Texto blanco al inicio */
.mi-header .e-n-menu-title-text,.mi-header .menu-oculto a{
	 color:#000;
}

.mi-header .e-n-menu-item,
.mi-header svg,
.mi-header .elementor-button .menu-oculto,
.mi-header .elementor-nav-menu a{
    color: #fff !important;
    fill: #fff !important;
    border-color: #fff !important;
    --e-n-menu-item-color: #ffffff;
    --e-n-menu-item-color-hover: #ffffff;
    transition: color 0.3s ease, fill 0.3s ease, border-color 0.3s ease;
}

/* =========================
   SCROLL (body.scrolled)
   ========================= */
body.scrolled .mi-header {
    background: #ffffff !important;
}

/* Texto negro al hacer scroll */
body.scrolled .mi-header .menu-oculto  a,
body.scrolled .mi-header .e-n-menu-title-text,
body.scrolled .mi-header .e-n-menu-item,
body.scrolled .mi-header svg,
body.scrolled .mi-header .elementor-button .menu-oculto,
body.scrolled .mi-header .elementor-nav-menu a {
    color: #000 !important;
    fill: #000 !important;
    border-color: #000 !important;
    --e-n-menu-item-color: #000000;
    --e-n-menu-item-color-hover: #000000;
}

/* =========================
   HOVER (cuando pasas por el header)
   ========================= */

/* El fondo se vuelve blanco */
.mi-header:hover {
    background: rgba(255,255,255,.75) !important;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,0,0,.06);
}

/* Texto negro al hover */
.mi-header:hover .menu-oculto a,
.mi-header:hover .e-n-menu-title-text,
.mi-header:hover .e-n-menu-item,
.mi-header:hover svg,
.mi-header:hover .elementor-button .menu-oculto,
.mi-header:hover .elementor-nav-menu a{

    color: #000 !important;
    fill: #000 !important;
    border-color: #000 !important;
    --e-n-menu-item-color: #000;
    --e-n-menu-item-color-hover: #000;
}
/* HEADER BLANCO EN TODAS LAS PÁGINAS MENOS EN HOME */
body:not(.home) .mi-header {
    background: rgba(255,255,255,.75) !important;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,0,0,.06);
}

/* Texto negro en todas las páginas menos en home */
body:not(.home) .mi-header .menu-oculto a,
body:not(.home) .mi-header .e-n-menu-title-text,
body:not(.home) .mi-header .e-n-menu-item,
body:not(.home) .mi-header svg,
body:not(.home) .mi-header .elementor-button .menu-oculto,
body:not(.home) .elementor-nav-menu a {
    color: #000 !important;
    fill: #000 !important;
    border-color: #000 !important;
    --e-n-menu-item-color: #000;
    --e-n-menu-item-color-hover: #000;
}

/* Evitar hover en no-home */
body:not(.home) .mi-header:hover {
   background: rgba(255,255,255,.75) !important;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,0,0,.06);
}


/* WooCommerce Product Categories (sidebar) — subcategorías “pro” */

/* Base */
.widget_product_categories ul.product-categories{
  list-style:none;
  margin:0;
  padding:0;
}
.widget_product_categories li{ margin:5px 0; }

/* Link estilo “pill” */
.widget_product_categories a{
  display:block;
  padding:9px 26px 9px 12px;   /* right extra for chevron */
  border-radius:5px;
  text-decoration:none;
  line-height:1.3;
  font-weight:500;
  color:rgba(0,0,0,.82);
  background:rgba(0,0,0,.025);
  border:1px solid rgba(0,0,0,.06);
  position:relative;
  transition:background .12s ease, border-color .12s ease;
}
.widget_product_categories a:hover{
  background:rgba(0,0,0,.05);
  border-color:rgba(0,0,0,.10);
}

/* Activo: fondo + barra lateral */
.widget_product_categories .current-cat > a,
.widget_product_categories .current-cat-parent > a{
  background:rgba(0,0,0,.10);
  box-shadow:inset 3px 0 0 rgba(0,0,0,.35);
  padding-left:14px;           /* compensa la barra */
}

/* Chevron sutil */
.widget_product_categories a:after{
  content:"›";
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  opacity:.35;
}
.widget_product_categories a:hover:after{ opacity:.6; }

/* Hijas (subcategorías) */
.widget_product_categories ul.children{
  margin:6px 0 6px 14px;
  padding:0;
}
.widget_product_categories ul.children a{
  padding:8px 26px 8px 12px;
  color:rgba(0,0,0,.72);
  background:rgba(0,0,0,.018);
  font-size:.95em;
}


.widget-area .widget a {
    font-size: 12px;
}
/* Hover premium: solo fade con micro-delay */
.widget_product_categories a{
  transition:
    background-color .18s ease .10s,
    border-color .18s ease .10s,
    box-shadow .18s ease .10s;
}

/* Hover: sube un pelín el contraste (sin moverse) */
.widget_product_categories a:hover{
  background: rgba(0,0,0,.055);
  border-color: #dc9814;
}

/* Chevron: aparece un poco más al hover (fade) */
.widget_product_categories a:after{
  transition: opacity .18s ease .10s;
}

.widget_product_categories a:hover:after{
  opacity: .65;
}

/* (Opcional) Activo un poco más “premium” */
.widget_product_categories .current-cat > a,
.widget_product_categories .current-cat-parent > a{
  box-shadow: inset 3px 0 0 rgba(0,0,0,.35), 0 1px 0 rgba(0,0,0,.04);
}
/* Quitar subrayado siempre (y evitar que vuelva en hover/visited) */
.widget_product_categories a,
.widget_product_categories a:hover,
.widget_product_categories a:focus,
.widget_product_categories a:visited{
  text-decoration: none !important;
}

/* Fade también en el texto */
.widget_product_categories a{
  transition:
    background-color .18s ease .10s,
    border-color .18s ease .10s,
    color .18s ease .10s,
    box-shadow .18s ease .10s;
}

.widget_product_categories a:hover{
  color: rgba(0,0,0,.90);
}
.widget_product_categories a:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,0,0,.12);
}
.widget_product_categories{ padding-right:0;}




.shoptimizer-archive .col-full{
    margin-top:30px;
}
.woocommerce-breadcrumb{
  font-size:12px;
  color:rgba(0,0,0,.55);
 
}
.woocommerce-breadcrumb a{
  color:rgba(0,0,0,.55);
  text-decoration:none !important;
}
.woocommerce-breadcrumb a:hover{ color:rgba(0,0,0,.75); }
.woocommerce-breadcrumb span:last-child{ color:rgba(0,0,0,.75); font-weight:500; }


body.single-product:has(.woocommerce-breadcrumb) .site-main {
    padding-top: 60px;
}

/* Asegura que el icono está oculto SIEMPRE por defecto */
.card-hover .cart-fab{
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(6px) scale(.95);
  transition: opacity .25s ease, transform .25s ease, visibility 0s linear .25s;
  pointer-events: none;
}

/* Solo aparece cuando haces hover en ESA card */
.card-hover:hover .cart-fab{
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1);
  transition: opacity .25s ease, transform .25s ease, visibility 0s;
  pointer-events: auto;
}
/* El contenedor de imagen será el “anchor” */
.media-box{
  position: relative;
}

/* Botón sobre la imagen (abajo-derecha) */
.media-box .cart-fab{
  position: absolute !important;
  right: 5px !important;
  bottom: 5px !important;

  top: auto !important;
  left: auto !important;

  width: 36px !important;
  height: 36px !important;
  border-radius: 999px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  line-height: 0 !important;
  background: #607088;
  color: #fff !important;

  z-index: 50 !important;
}

.media-box .cart-fab svg{
  display: block;
  width: 16px;
  height: 16px;
}



.card-hover .cart-fab:hover{
  transform: translateY(0) scale(1.06) !important;
}

.card-hover{ position: relative; }

/* El widget botón ocupa toda la card */
.card-hover .card-link{
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
}

/* El <a> del botón cubre toda la card y no se ve */
.card-hover .card-link a.elementor-button,
.card-hover .card-link a.elementor-button-link{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;

  opacity: 0 !important; /* invisible */
  display: block !important;
}

/* El carrito por encima */
.media-box .cart-fab{ z-index: 50 !important; }


.elementor-menu-cart__container{
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
}

.elementor-menu-cart__container .elementor-menu-cart__main,
.elementor-menu-cart__container .dialog-widget-content{
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  height: 100vh !important;
  width: min(420px, 92vw) !important;
  overflow: auto !important;
}
 h2, h3, h4, h5, h6 {
   
    margin-block-start: 2.5rem;
}

/* Make sure the product card wrapper is relative */
.elementor-loop-item {
  position: relative;
}

/* The badge */
.wc-discount-badge{
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 20;

  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 12px;
  line-height: 1;

  background: #E53935;
  color: #fff;
}


.subcats-tabs {
  width: 100%;
}

.subcats-tabs__inner{
  display:flex;
  gap: 26px;
  align-items:center;
  overflow-x:auto;
  white-space:nowrap;
  -webkit-overflow-scrolling:touch;
  padding: 6px 4px;
  scrollbar-width: none;
}
.subcats-tabs__inner::-webkit-scrollbar{ display:none; }

.subcats-tabs__item{
  position: relative;
  display:inline-flex;
  align-items:center;
  padding: 12px 2px;
  text-decoration:none;
  font-weight: 500;
  color: #fff;
  opacity: .9;
  transition: opacity .2s ease, transform .2s ease;
}

.subcats-tabs__item:hover{
  opacity: 1;
  transform: translateY(-1px);
}

/* subrayado animado */
.subcats-tabs__item::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .22s ease;
  opacity: .9;
}

.subcats-tabs__item:hover::after{
  transform: scaleX(1);
}

.subcats-tabs__item.is-active{
  opacity: 1;
  font-weight: 400;
}
.subcats-tabs__item.is-active::after{
  transform: scaleX(1);
}
.subcats-tabs__item--all{
  opacity: .75;
}
.subcats-tabs__item--all:hover{
  opacity: 1;
}
/* Padre/contendor: estilo distinto */
.subcats-tabs__item--parent{
  opacity: 1;
  font-weight: 400;
  padding: 10px 12px;        /* más “chip” */
  border-radius:5px;
  background-color: #fff;
  color:#000;
}

/* Quita el subrayado animado del padre (opcional) */
.subcats-tabs__item--parent::after{
  display: none;
}



/* Pequeño separador entre padre y subcategorías */
.subcats-tabs__item--parent{
  margin-right: 6px;
}

a {
  color:#607088;
}
a:hover {
  color:#000;
}


@media (min-width: 768px) and (max-width: 1279px) {


  
}


@media (max-width: 767px){

  /* En móvil: el botón NO debe crecer con flex */
  .single-product form.cart .single_add_to_cart_button,
  .single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    flex: 0 0 auto !important;     /* anula flex:1 1 260px */
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Normaliza el alto (por si el theme lo infla) */
  .single-product form.cart .single_add_to_cart_button,
  .single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    height: auto !important;
    min-height: 52px !important;
    padding: 14px 18px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
  }

 .subcats-tabs__item{
  font-size: 12px;
 }


}

.dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
  background-color: #607088;
}
.dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit:before{
  border-color: transparent #607088;
}

/* Subcats tabs si ahora es UL/LI: quitar bullets y reset */
.subcats-tabs__inner{
  list-style: none;
  margin: 0;
  padding: 6px 4px; /* conserva tu padding */
}

.subcats-tabs__inner li,
.subcats-tabs__li{
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ===== Flechas minimalistas (no “botón”, solo hint) ===== */

/* el contenedor es el ancla */
.subcats-tabs{ position:relative; }

/* deja espacio para las flechas */
.subcats-tabs__inner{
  padding-left: 34px !important;
  padding-right: 34px !important;
  mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%) !important;
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%) !important;
}

/* flechas: pequeñas + discretas + sin “bola” */
.subcats-tabs::before,
.subcats-tabs::after{
  content:"";
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:26px;
  height:26px;
  z-index:999;
  pointer-events:none;

  border-radius: 999px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 6px 18px rgba(0,0,0,.10);

  background-repeat:no-repeat;
  background-position:center;
  background-size:14px 14px;
}

/* izquierda */
.subcats-tabs::before{
  left:6px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z'/%3E%3C/svg%3E");
}

/* derecha */
.subcats-tabs::after{
  right:6px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='m8.59 16.59 1.41 1.41 6-6-6-6-1.41 1.41L13.17 12z'/%3E%3C/svg%3E");
}


/* Flechas: ocultas por defecto */
.subcats-tabs::before,
.subcats-tabs::after{
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility 0s linear .18s;
}

/* Solo se ven si hay overflow */
.subcats-tabs.has-scroll::before,
.subcats-tabs.has-scroll::after{
  opacity: 1;
  visibility: visible;
  transition: opacity .18s ease, visibility 0s;
}

/* Oculta izquierda si estás al inicio */
.subcats-tabs.has-scroll.at-start::before{
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility 0s linear .18s;
}

/* Oculta derecha si estás al final */
.subcats-tabs.has-scroll.at-end::after{
  opacity: 0;
  visibility: hidden;
  transition: opacity .18s ease, visibility 0s linear .18s;
}

/* solo para checkout
[type=button], [type=submit], button {
  border: 1px solid #607088;
  color:#607088;
}
[type=button]:hover, [type=submit]:hover, button :hover{
  border: 1px solid #607088;
  background:#607088;
  color:#fff;
}
*/




/* WooCommerce checkout – color del focus */
.woocommerce-checkout input:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout .select2-container--default .select2-selection--single:focus,
.woocommerce-checkout .select2-container--default .select2-selection--single.select2-selection--focus {
  border-color: #ff6a00 !important;   /* tu color */
  box-shadow: 0 0 0 3px rgba(255,106,0,.25) !important; /* “halo” */
  outline: none !important;
}

/* Si aparece un borde externo del navegador */
.woocommerce-checkout input:focus-visible,
.woocommerce-checkout textarea:focus-visible,
.woocommerce-checkout select:focus-visible {
  outline: none !important;
}

@media (max-width: 1024px){
  /* El overlay trigger tapa todo: fuera */
  .dgwt-wcas-enable-mobile-form{
    display: none !important;
  }

  /* Asegura layout correcto */
  .dgwt-wcas-sf-wrapp{
    position: relative;
  }

  /* Botón lupa visible y clicable */
  .dgwt-wcas-search-submit{
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    z-index: 2;
  }

  .dgwt-wcas-search-input{
    padding-right: 44px !important;
  }

  .dgwt-wcas-search-submit svg{
    display: block;
    width: 18px;
    height: 18px;
  }
}

.woocommerce-checkout [type=button], .woocommerce-checkout [type=submit], .woocommerce-checkout button {
background-color: transparent;
    border: 1px solid #607088;
    border-radius: 3px;
    color: #607088;

}
.woocommerce-checkout [type=button]:hover, .woocommerce-checkout [type=submit]:hover, .woocommerce-checkout button:hover {
background-color: #607088;
    border: 1px solid #607088;
    border-radius: 3px;
    color: #fff;

}

/* Stock + tooltip (click) */
.single-product .voltanna-stock{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap;}
.single-product .voltanna-stock__info{
  width:18px;height:18px;border-radius:999px;border:1px solid currentColor;background:transparent;
  padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
  font-size:12px;line-height:1;position:relative;color:#607088;;border-color:#607088;;
}

/* Desktop: arriba */
.single-product .voltanna-stock__tooltip{
  position:absolute;left:0;bottom:calc(100% + 10px);
  width:max-content;max-width:520px;background:#111;color:#fff;
  padding:.75rem 1rem;border-radius:14px;font-size:13px;line-height:1.35;
  opacity:0;visibility:hidden;pointer-events:none;z-index:99999;white-space:normal;
}
.single-product .voltanna-stock__info.is-open .voltanna-stock__tooltip{opacity:1;visibility:visible;pointer-events:auto;}
.single-product .voltanna-stock__tooltip::before{
  content:"";position:absolute;bottom:-8px;left:9px;
  border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #111;
}

/* Móvil: fixed pero colocado junto al icono vía JS (variables CSS) */
@media (max-width: 767px){
  .single-product .voltanna-stock__tooltip{
    position:fixed;
    left: var(--tt-left, 16px);
    top:  var(--tt-top, 120px);
    bottom:auto;
    width: calc(100vw - 32px);
    max-width: 520px;
  }
  .single-product .voltanna-stock__tooltip::before{display:none;}
}


.product .out-of-stock {
    color: var(--wc-red);
}
.in-stock{
  color:#008f39!important;
}

.lfe-special-shipping-notice {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 18px;
	border: 1px solid #d9e2ec;
	border-left: 4px solid #5f748f;
	border-radius: 10px;
	background: #f6f8fb;
	margin: 15px 0;
}

.lfe-special-shipping-notice__icon {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	border-radius: 999px;
	background: #5f748f;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 24px;
	text-align: center;
}

.lfe-special-shipping-notice__content {
	flex: 1 1 auto;
}

.lfe-special-shipping-notice__title {
	display: block;
	margin: 0 0 6px;
	color: #1f2937;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}

.lfe-special-shipping-notice__text {
	margin: 0;
	color: #4b5563;
	font-size: 12px;
	line-height: 1.6;
}