/* =========================================================
   BOTÓN AÑADIR AL CARRITO
   - Cambia color, borde y hover del botón principal
   ========================================================= */
button.btn.btn-primary.btn-lg.add-to-cart {
  background: #e66900 !important;
  color: #fff !important;
  border: 1px solid #e66900 !important;
  border-radius: 6px;
  padding: 13px 22px;
  font-weight: 700;
  transition: all 0.2s ease;
}

button.btn.btn-primary.btn-lg.add-to-cart:hover {
  background: #e64900 !important;
  border-color: #e64900 !important;
  color: #fff !important;
}


/* =========================================================
   DESCRIPCIÓN DE CATEGORÍA CON "VER MÁS"
   - Este bloque recorta el texto inicial
   - El botón "Ver más" lo expande
   ========================================================= */

/* Contenedor general de la descripción */
.category-description.category-description-top {
  position: relative;
}

/* 
   Altura visible inicial del texto SEO
   - Sube este valor si quieres mostrar más texto
   - Baja este valor si quieres mostrar menos texto
*/
.category-description.category-description-top .rte-content {
  position: relative;
  overflow: hidden;
  max-height: 135px;
  transition: max-height 0.3s ease;
}

/* Cuando se expande con el botón */
.category-description.category-description-top .rte-content.ay-expanded {
  max-height: 5000px;
}

/* Difuminado al final del texto cuando está colapsado */
.category-description.category-description-top .rte-content:not(.ay-expanded)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 60px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 85%);
}

/* Separación entre el texto y el botón "Ver más" */
.ay-read-more-wrap {
  margin-top: 4px;
}

/* Estilo del botón "Ver más" */
.ay-read-more-btn {
  display: inline-block !important;
  background: none !important;
  border: 0 !important;
  padding: 0 !important;
  color: #e66900 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Hover del botón "Ver más" */
.ay-read-more-btn:hover {
  color: #e64900 !important;
  text-decoration: underline !important;
}


/* =========================================================
   SUBCATEGORÍAS EN MODO SLIDER HORIZONTAL
   - Este bloque controla el carrusel lateral de subcategorías
   ========================================================= */

/* 
   Contenedor general del slider
   - margin-bottom controla el espacio con la zona de productos
   - padding lateral deja sitio a las flechas
*/
.ay-subcat-slider-wrapper {
  position: relative !important;
  margin-bottom: -15px !important;
  padding: 0 46px !important;
}

/* 
   Zona que se desplaza lateralmente
   - overflow-x: auto permite scroll horizontal
   - white-space ayuda a que no se rompa el layout
*/
.ay-subcat-slider {
  display: block !important;
  width: 100% !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth !important;
  white-space: nowrap !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

/* Oculta la barra de scroll en Chrome/Safari */
.ay-subcat-slider::-webkit-scrollbar {
  display: none !important;
}

/* 
   Contenedor interno de las tarjetas
   - Esto fuerza el layout horizontal real
*/
.ay-subcat-track {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0px !important;
  width: max-content !important;
  min-width: 100% !important;
  white-space: normal !important;
}

/* 
   Cada tarjeta de subcategoría
   - width / min-width / max-width controlan el ancho fijo
*/
.ay-subcat-slide {
  display: block !important;
  flex: 0 0 180px !important;
  width: 180px !important;
  min-width: 180px !important;
  max-width: 180px !important;
  float: none !important;
  clear: none !important;
  box-sizing: border-box !important;
}

/* En móvil hacemos las tarjetas un poco más pequeñas */
@media (max-width: 767px) {
  .ay-subcat-slide {
    flex: 0 0 140px !important;
    width: 140px !important;
    min-width: 140px !important;
    max-width: 140px !important;
  }
}

/* Contenido interno de cada subcategoría */
.subcategory-slide-inner {
  display: block !important;
  text-align: center !important;
}

/* Separación entre imagen y texto */
.subcategory-slide-inner .subcategory-image {
  display: block !important;
  margin-bottom: 8px !important;
}

/* Hace clicable toda la imagen */
.subcategory-slide-inner .subcategory-image a {
  display: block !important;
}

/* Imagen de subcategoría */
.subcategory-slide-inner .subcategory-image img {
  display: block !important;
  margin: 0 auto !important;
  border-radius: 6px !important;
  max-width: 100% !important;
  height: auto !important;
}

/* Nombre de la subcategoría */
.subcategory-slide-inner .subcategory-name {
  display: block !important;
  margin-top: 8px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  white-space: normal !important;
}


/* =========================================================
   FLECHAS DEL SLIDER DE SUBCATEGORÍAS
   - Botones izquierda/derecha
   ========================================================= */

/* Botones base */
.ay-subcat-prev,
.ay-subcat-next {
  position: absolute !important;
  top: 34% !important;
  width: 34px !important;
  height: 34px !important;
  background: rgba(0, 0, 0, 0.7) !important;
  border: 0 !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  z-index: 20 !important;
  transform: translateY(-50%) !important;
}

/* Flecha izquierda */
.ay-subcat-prev {
  left: 0 !important;
}

/* Flecha derecha */
.ay-subcat-next {
  right: 0 !important;
}

/* Dibujamos el icono de flecha con borders */
.ay-subcat-prev::before,
.ay-subcat-next::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 8px !important;
  height: 8px !important;
  border-top: 2px solid #fff !important;
  border-right: 2px solid #fff !important;
}

/* Rotación flecha izquierda */
.ay-subcat-prev::before {
  transform: translate(-35%, -50%) rotate(-135deg) !important;
}

/* Rotación flecha derecha */
.ay-subcat-next::before {
  transform: translate(-65%, -50%) rotate(45deg) !important;
}

/* =========================================================
   FICHA PRODUCTO - LAYOUT GENERAL
   ========================================================= */

/* Ocultar sidebar derecha en ficha de producto */
body#product .product-sidebar {
  display: none !important;
}

/* PC: imagen 7 columnas / información 5 columnas */
@media (min-width: 768px) {
  body#product .product-info-row > .col-product-image {
    width: 58.33333333% !important;
    flex: 0 0 58.33333333% !important;
    max-width: 58.33333333% !important;
  }

  body#product .product-info-row > .col-product-info {
    width: 41.66666667% !important;
    flex: 0 0 41.66666667% !important;
    max-width: 41.66666667% !important;
  }
}


/* =========================================================
   IMAGEN PRODUCTO
   ========================================================= */

/* Imagen principal en PC */
body#product .product-cover img,
body#product .js-qv-product-cover {
  width: 100%;
  height: 650px;
  object-fit: contain;
}

/* Imagen principal en móvil */
@media (max-width: 768px) {
  body#product .product-cover img,
  body#product .js-qv-product-cover {
    width: 100%;
    height: 382px;
    object-fit: contain;
  }
}


/* =========================================================
   TÍTULO PRODUCTO Y LOGO MARCA
   ========================================================= */

/* H1 del producto */
body#product h1.page-title {
  font-size: 24px !important;
  text-transform: uppercase;
}

/* Logo fabricante general */
body#product .product-manufacturer img {
  max-width: 100px !important;
  height: auto;
}

/* PC: logo a la derecha del bloque de información */
@media (min-width: 769px) {
  body#product .product_header_container {
    position: relative;
    padding-right: 110px;
  }

  body#product .product-manufacturer {
    position: absolute;
    top: 0;
    right: 0;
    width: 90px;
    text-align: right;
  }

  body#product .product-manufacturer img {
    max-width: 90px !important;
    height: auto;
  }
}

/* Móvil: título arriba, precio izquierda y logo derecha */
@media (max-width: 768px) {
  body#product .product_header_container {
    padding-right: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 70px;
    column-gap: 20px !important;
    align-items: start;
    width: 100% !important;
    max-width: 100% !important;
  }

  body#product .product_header_container h1.page-title {
    grid-column: 1 / 3;
  }

  body#product .product-prices {
    grid-column: 1;
    grid-row: 2;
    width: 100% !important;
    max-width: 100% !important;
  }

  body#product .product-manufacturer {
    grid-column: 2;
    grid-row: 2;
    position: static !important;
    width: 70px !important;
    margin: 0 !important;
    text-align: right !important;
  }

  body#product .product-manufacturer img {
    max-width: 70px !important;
    height: auto !important;
  }
}


/* =========================================================
   BLOQUE PRECIO / REFERENCIA / ENVÍO
   ========================================================= */

/* Estructura general precio */
body#product .product-prices {
  display: block !important;
}

/* Referencia */
body#product .product-reference {
  display: block !important;
  margin-bottom: 5px;
}

/* Badge de disponibilidad/envío */
body#product #product-availability {
  display: block !important;
  width: fit-content !important;
  max-width: max-content !important;
  margin-bottom: 6px;
}

/* Precio debajo del envío */
body#product .product-prices > div:not(.product-reference) {
  display: block !important;
}

/* Precio + impuestos en línea */
body#product .current-price,
body#product .tax-shipping-delivery-label {
  display: inline-block !important;
  vertical-align: middle;
}

body#product .tax-shipping-delivery-label {
  margin-left: 8px;
}

/* Ocultar texto "Envíos en 24H" */
body#product .delivery-information {
  display: none !important;
}

/* Móvil: tamaños del bloque precio */
@media (max-width: 768px) {
  body#product .product-reference {
    font-size: 15px !important;
  }

  body#product #product-availability {
    font-size: 14px !important;
    padding: 5px 10px !important;
  }

  body#product .product-price.current-price-value {
    font-size: 28px !important;
    font-weight: 700;
    line-height: 1.2;
  }

  body#product .regular-price {
    font-size: 16px !important;
  }

  body#product .discount {
    font-size: 14px !important;
  }

  body#product .tax-shipping-delivery-label {
    font-size: 15px !important;
  }
}



/* =========================================================
   AJUSTES MÓVIL - ANCHO COMPLETO
   ========================================================= */

@media (max-width: 768px) {
  body#product .product-info-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body#product .product-info-row > div {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body#product .col-product-info,
  body#product #col-product-info {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  body#product .container,
  body#product .inner-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}



/* PC - BOTÓN GRANDE */
/* ===================== */
@media (min-width: 769px) {
  body#product button.add-to-cart {
    font-size: 16px !important;
    padding: 19px 21px !important;
    font-weight: 700 !important;
  }
}
/* =========================================================
   TABS: DESCRIPCIÓN / DETALLES / REVIEWS
   ========================================================= */

/* Mayúsculas en tabs */
body#product #product-infos-tabs .nav-link {
  text-transform: uppercase;
}

/* Tamaño tabs PC */
body#product .product-tabs .nav-link {
  font-size: 18px !important;
}

/* Móvil: tabs en varias columnas compactas */
@media (max-width: 768px) {
  body#product #product-infos-tabs {
    display: flex !important;
    flex-flow: row wrap !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 0 15px 0 !important;
  }

  body#product #product-infos-tabs > li.nav-item {
    width: fit-content !important;
    min-width: 0 !important;
    max-width: fit-content !important;
    flex: 0 0 fit-content !important;
    display: inline-block !important;
  }

  body#product #product-infos-tabs > li.nav-item > a.nav-link {
    width: fit-content !important;
    min-width: 0 !important;
    max-width: fit-content !important;
    display: inline-block !important;
    padding: 8px 10px !important;
    white-space: nowrap !important;
    font-size: 16px !important;
  }
}


/* =========================================================
   DESCRIPCIÓN PRODUCTO - COLOR Y LEGIBILIDAD
   ========================================================= */

/* Color de toda la descripción */
body#product .product-description,
body#product .product-description p,
body#product .product-description h2,
body#product .product-description h3,
body#product .product-description h4,
body#product .product-description li,
body#product .product-description span,
body#product .rte-content,
body#product .rte-content p,
body#product .rte-content h2,
body#product .rte-content h3,
body#product .rte-content h4,
body#product .rte-content li,
body#product .rte-content span {
  color: #181717 !important;
}

/* Texto general descripción */
body#product .product-description,
body#product .product-description p,
body#product .rte-content,
body#product .rte-content p {
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* H2 descripción en PC */
body#product .product-description h2,
body#product .rte-content h2 {
  font-size: 16px !important;
  line-height: 1.3 !important;
  margin-bottom: 10px;
}

/* H3 descripción en PC */
body#product .product-description h3,
body#product .rte-content h3 {
  font-size: 20px !important;
  line-height: 1.3 !important;
  margin-bottom: 8px;
}

/* Móvil: descripción más legible */
@media (max-width: 768px) {
  body#product .product-description h2,
  body#product .rte-content h2 {
    font-size: 20px !important;
    line-height: 1.3 !important;
    margin-bottom: 10px;
  }

  body#product .product-description h3,
  body#product .rte-content h3 {
    font-size: 18px !important;
    line-height: 1.3 !important;
    margin-bottom: 8px;
  }

  body#product .product-description p,
  body#product .product-description li,
  body#product .rte-content p,
  body#product .rte-content li {
    font-size: 15px !important;
    line-height: 1.6 !important;
  }
}


/* =========================================================
   BLOQUE "TAMBIÉN PODRÍA INTERESARTE"
   ========================================================= */

/* Título del bloque */
body#product .section-title {
  font-size: 22px !important;
  text-transform: uppercase;
}

/* Precio en productos del slider */
body#product .product-price {
  font-size: 20px !important;
}


/* =========================================================
   OCULTAR REDES SOCIALES
   ========================================================= */

body#product .social-sharing {
  display: none !important;
}


/* =========================================================
   MÓDULO COMPRADOS JUNTOS
   ========================================================= */

/* Contenedor general */
body#product .block_abs_usually_bought {
  margin-top: 16px !important;
  margin-bottom: -40px !important;
  background-color: #fff !important;
  overflow: auto !important;
  padding: 0 !important;
}

/* Lista de productos */
body#product ul.products_abs_u_b_together,
body#product ul.list_products_abs_u_b_together {
  display: block;
  float: left;
  margin: 24px 4px 0 0 !important;
  padding: 0 !important;
  margin-bottom: 1.25rem !important;
}

/* Imágenes comprados juntos en PC */
@media (min-width: 1200px) {
  body#product .block_abs_usually_bought li[class^="absimgfbt"] img {
    max-width: 103px !important;
    height: auto;
  }
}

/* Textos internos comprados juntos */
body#product .abs-aclarat-list_u_b_together,
body#product .abs-freq-bo-t-no-sel {
  padding-bottom: 0 !important;
}

/* Precio total comprados juntos */
body#product .price-abs-u-b-tog {
  font-size: 16px !important;
}

/* Botón comprados juntos */
body#product .bt-abs-fbt-modal button {
  font-size: 16px !important;
}


/* =========================================================
   INFO ADICIONAL PRODUCTO
   ========================================================= */

body#product .product-additional-info {
  padding: 0 !important;
}


/* =========================================================
   MÓVIL - DESACTIVAR SEGUNDA IMAGEN EN HOVER
   - Evita que haya que tocar 2 veces para abrir producto
   ========================================================= */

@media (max-width: 768px) {
  .product-miniature .product-thumbnail img {
    transform: none !important;
    opacity: 1 !important;
  }

  .product-miniature .product-thumbnail:hover img {
    opacity: 1 !important;
  }

  .product-miniature .product-thumbnail .second-image {
    display: none !important;
  }
}

/* NOTIFICACIÓN AÑADIDO AL CARRITO */
.ns-box {
  background: #e66900 !important;
  color: #fff !important;
}

/* MIGAS DE PAN MOVIL */
@media (max-width: 768px) {
  #wrapper .breadcrumb {
    font-size: 14px !important;
 margin-top: 1px !important; 
 }
}

/* =========================================================
   BARRA STICKY PRODUCTO MÓVIL
   Aparece solo al bajar por debajo del botón normal
   ========================================================= */

.ay-mobile-sticky-product-bar {
  display: none;
}

@media (max-width: 768px) {

  body#product {
    padding-bottom: 90px;
  }

  .ay-mobile-sticky-product-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999;
    background: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    box-shadow: 0 -4px 14px rgba(0,0,0,0.18);
    transform: translateY(120%);
    opacity: 0;
    pointer-events: none;
    transition: all 0.25s ease;
  }

  .ay-mobile-sticky-product-bar.is-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }

  .ay-sticky-product-img {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border: 1px solid #eee;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
  }

  .ay-sticky-product-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .ay-sticky-product-info {
    flex: 1;
    min-width: 0;
  }

  .ay-sticky-product-name {
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    color: #222;
    max-height: 30px;
    overflow: hidden;
  }

  .ay-sticky-product-price {
    font-size: 16px;
    font-weight: 700;
    color: #e66900;
    margin-top: 3px;
  }

  .ay-sticky-product-action {
    min-width: 105px;
  }

  .ay-sticky-product-action button.add-to-cart {
    width: 100% !important;
    font-size: 14px !important;
    padding: 11px 8px !important;
    background: #e66900 !important;
    border-color: #e66900 !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
  }

  .ay-sticky-product-action button.add-to-cart i {
    display: none !important;
  }
}

/* ARRIBA DEL MENU MOSTRAR ENVIO GRATIS */

.ay-mobile-top-shipping {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background: #000 !important;
  color: #fff !important;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 8px;
  line-height: 1.2;
  text-align: center !important;
  box-sizing: border-box;
  z-index: 9999;
}

.ay-mobile-top-shipping .ay-shipping-icon,
.ay-mobile-top-shipping .ay-shipping-text {
  color: #fff !important;
}

.ay-mobile-top-shipping .ay-shipping-icon {
  font-size: 13px;
}

@media (max-width: 768px) {
  .ay-mobile-top-shipping {
    font-size: 14px;
  }
}

/* INFORMACION SOBRE DEVOLUCIONES VERSION MOVIL */
.ay-mobile-product-benefits {
  display: none;
}

@media (max-width: 768px) {
  .ay-mobile-product-benefits {
    display: block;
    margin: 16px 0 8px;
    padding: 0 2px 16px;
    border-bottom: 1px solid #ddd;
  }

  .ay-mobile-benefit {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 14px;
    font-size: 14px;
    color: #111;
    line-height: 1.35;
    font-weight: 500;
  }

  .ay-mobile-benefit i {
    width: 18px;
    min-width: 18px;
    margin-top: 2px;
    color: #000;
    font-size: 15px;
    text-align: center;
  }

  .ay-mobile-benefit strong {
    font-weight: 700;
  }
}
.ay-google-logo {
  width: 44px;
  height: auto;
  margin-top: 2px;
}

.ay-google-trust {
  align-items: center;
}

.ay-stars {
  color: #f5a623;
  font-size: 14px;
  letter-spacing: 1px;
}


/* Separador único encima de Google Reviews */
.lggooglereviews_place.container {
  margin-top: 40px !important;
  padding-top: 30px !important;
  border-top: 2px solid #e5e5e5 !important;
}


/* BOTON GOOGLE REVIEWS */
.ay-google-reviews-btn {
  display: inline-block !important;
  background: #e66900 !important;
  color: #fff !important;
  border: 1px solid #e66900 !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  margin-top: 8px !important;
}

.ay-google-reviews-btn:hover {
  background: #e64900 !important;
  border-color: #e64900 !important;
  color: #fff !important;
  text-decoration: none !important;
}
/* FORZAR LOGO GOOGLE */
body .lg-google-based img.ay-google-logo {
  width: 120px !important;
  max-width: none !important;
  height: auto !important;
}

@media (max-width: 768px) {
  body#product .product-cover {
    height: 420px !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }
/* FORZAR imagen producto tamaño */
  body#product .product-cover img {
    max-height: 420px !important;
    height: 100% !important;
    width: auto !important;
    object-fit: contain;
  }
}

/* =========================================================
   AJUSTE ESPACIO ENTRE IMAGEN PRINCIPAL Y MINIATURAS (MÓVIL)
   ========================================================= */
@media (max-width: 768px) {

  /* Quitar espacio inferior de la imagen grande */
  body#product .product-cover {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Quitar espacio extra del contenedor del slider principal */
  body#product #product-images-large {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Subir ligeramente las miniaturas */
  body#product .col-left-product-thumbs {
    margin-top: -25px !important; /* Ajustar valor si quieres más/menos */
  }

  /* Eliminar posibles márgenes internos del contenedor de thumbs */
  body#product .js-qv-mask {
    margin-top: 0 !important;
  }

}
/* =========================================================
   BENEFICIOS BAJO IMAGEN PRODUCTO - SOLO PC
   Diseño en 3 columnas horizontales
   ========================================================= */
.ay-desktop-product-benefits {
  display: none;
}

@media (min-width: 769px) {
  body#product .ay-desktop-product-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    width: 100%;
    max-width: 680px;
    margin: 28px auto 0;
  }

  body#product .ay-desktop-benefit {
    min-height: 120px;
    padding: 22px 16px;
    border: 2px solid #e5e5e5;
    background: #fff;
    border-radius: 10px;
    text-align: center;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;

    font-size: 14px;
    color: #111;
    line-height: 1.35;
  }

  body#product .ay-desktop-benefit i {
    color: #e66900;
    font-size: 24px;
    margin-bottom: 2px;
  }

  body#product .ay-desktop-benefit strong {
    display: block;
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 4px;
  }

  body#product .ay-desktop-benefit span {
    font-size: 13px;
    color: #555;
  }

  body#product .ay-stars {
    display: block;
    margin-top: 4px;
    color: #f5a400 !important;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 13px !important;
  }
}

/* =========================================================
   CATEGORÍAS BAJO BENEFICIOS - SOLO PC
   ========================================================= */
body#product .ay-product-categories-under-benefits {
  display: none;
}

@media (min-width: 769px) {
  body#product .ay-product-categories-under-benefits {
    display: block;
    width: 100%;
    max-width: 680px;
    margin: 14px auto 0;
  }

  body#product .ay-product-categories-under-benefits ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
}


/* =========================================================
   CATEGORÍAS BAJO BENEFICIOS - SOLO MÓVIL
   ========================================================= */
body#product .ay-product-categories-under-mobile-benefits {
  display: none;
}

@media (max-width: 768px) {
  body#product .ay-product-categories-under-mobile-benefits {
    display: block;
    margin: 0 0 18px;
  }

  body#product .ay-product-categories-under-mobile-benefits ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  body#product .ay-product-categories-under-mobile-benefits li {
    display: inline-block;
    width: auto !important;
  }
}


/* =========================================================
   ESTILO GENERAL TAGS CATEGORÍAS
   ========================================================= */
body#product .ay-product-category-tag {
  display: inline-block;
  width: auto !important;
  padding: 6px 11px;
  background: #f4f4f4;
  color: #666;
  font-size: 13px;
  border-radius: 4px;
  text-decoration: none;
  white-space: nowrap;
}

body#product .ay-product-category-tag:hover {
  background: #e66900;
  color: #fff;
}

@media (max-width: 768px) {
  body#product .ay-product-category-tag {
    padding: 6px 10px;
    font-size: 12px;
  }
}

/* =========================================================
   MINIATURAS PRODUCTO MÓVIL POR ENCIMA DE IMAGEN PRINCIPAL
   ========================================================= */
@media (max-width: 768px) {

  /* Imagen principal por debajo */
  body#product .col-left-product-cover,
  body#product .product-cover,
  body#product #product-images-large {
    position: relative;
    z-index: 1;
  }

  /* Miniaturas por encima */
  body#product .col-left-product-thumbs,
  body#product .js-qv-mask,
  body#product #product-images-thumbs {
    position: relative;
    z-index: 5;
    overflow: visible !important;
  }

  /* Cada miniatura también por encima */
  body#product #product-images-thumbs .swiper-slide,
  body#product #product-images-thumbs .thumb-container,
  body#product #product-images-thumbs img {
    position: relative;
    z-index: 6;
  }
}
/* =========================================================
   INFO ORDERS - 2 COLUMNAS EN MÓVIL
   La clase info-orders está dentro del widget, no en la columna
   ========================================================= */
@media (max-width: 768px) {

  .elementor-column:has(.info-orders) {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
  }

  .elementor-row,
  .elementor-container {
    display: flex !important;
    flex-wrap: wrap !important;
  }

  .info-orders .elementor-icon {
    font-size: 24px !important;
  }

  .info-orders .elementor-icon-box-description,
  .info-orders .elementor-icon-box-description span {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
}

/* =========================================================
   INFO ORDERS - AJUSTE TAMAÑOS MÓVIL
   ========================================================= */
@media (max-width: 768px) {

  /* Icono más pequeño */
  .info-orders .elementor-icon {
    font-size: 26px !important;   /* antes 34px */
  }

  /* Título */
  .info-orders .elementor-icon-box-title,
  .info-orders .elementor-icon-box-title a {
    font-size: 14px !important;   /* antes ~20px */
    font-weight: 700;
    line-height: 1.2;
  }

  /* Descripción */
  .info-orders .elementor-icon-box-description,
  .info-orders .elementor-icon-box-description span {
    font-size: 11px !important;
    line-height: 1.3;
  }

  /* Espaciado general más compacto */
  .info-orders .elementor-icon-box-wrapper {
    gap: 6px !important;
  }

}

/* =========================================================
   BARRA CONTACTO SOLO PC
   ========================================================= */

.ay-top-contact-pc {
  display: none;
}

@media (min-width: 769px) {

  .ay-top-contact-pc {
    display: block;
    width: 100%;
    background: #000;
    color: #fff;
    font-size: 13px;
    padding: 6px 0;
  }

  .ay-top-contact-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 15px;
    display: flex;
    gap: 28px;
    align-items: center;
  }

  .ay-top-contact-inner a {
    color: #fff !important;
    text-decoration: none;
  }

  .ay-top-contact-inner i {
    margin-right: 6px;
  }
.ay-top-contact-inner .fa-phone,
.ay-top-contact-inner .fa-envelope,
.ay-top-free-shipping .ay-shipping-icon {
    color: #f39200 !important;
}

  /* ENVÍO GRATIS */

  .ay-top-free-shipping{
    display:flex;
    align-items:center;
    gap:6px;
    color:#fff;
    font-size:13px;
    font-weight:600;
  }

  .ay-top-free-shipping .ay-shipping-icon,
  .ay-top-free-shipping .ay-shipping-text{
    color:#fff !important;
  }
}

/* =========================================================
   OCULTAR ENVÍO GRATIS SEPARADO EN PC
   ========================================================= */

@media (min-width: 769px) {

  .ay-mobile-top-shipping {
    display: none !important;
  }

}

/* =========================================================
   BUSCADOR HEADER - BORDES REDONDEADOS
   ========================================================= */
#search_widget .input-group {
  border-radius: 30px;
  overflow: hidden; /* 👈 CLAVE para que todo respete el borde */
}

/* Input */
#search_widget input.form-search-control {
  border-radius: 30px 0 0 30px !important;
  border: none;
}

/* Botón */
#search_widget .search-btn {
  border-radius: 0 30px 30px 0 !important;
  border: none;
}

/* =========================================================
   MEGA MENÚ - ENLACES SUBMENÚ FORZADO
   ========================================================= */
body .cbp-hrsub a,
body .cbp-hrsub a span,
body .cbp-menu-column-inner a,
body .cbp-menu-column-inner a span {
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #555 !important;
  line-height: 1.7 !important;
  text-decoration: none !important;
}

/* Hover enlaces */
body .cbp-hrsub a:hover,
body .cbp-hrsub a:hover span,
body .cbp-menu-column-inner a:hover,
body .cbp-menu-column-inner a:hover span {
  color: #e66900 !important;
}

/* Títulos de columnas */
body .cbp-hrsub .cbp-column-title,
body .cbp-hrsub .cbp-menu-column-title,
body .cbp-menu-column-title,
body .cbp-menu-column-inner > span,
body .cbp-menu-column-inner > p:first-child {
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #333 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px;
}

/* =========================================================
   MENÚ MÓVIL - DISEÑO MEJORADO
   ========================================================= */
@media (max-width: 768px) {

  /* Panel lateral */
  body .mobile-menu__submenu {
    background: #fff;
  }

  /* Título superior: ARMAS AIRSOFT */
  body .mobile-menu__title,
  body .mobile-menu__header,
  body .mobile-menu__header span,
  body .mobile-menu__back {
    font-size: 16px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px;
    color: #222 !important;
  }

  /* Categorías principales: FUSILES, SUBFUSILES... */
  body .mobile-menu__column-title {
    display: block;
    margin: 20px 0 8px;
    padding-bottom: 6px;
    border-bottom: 1px solid #eee;

    font-size: 17px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px;
    color: #333 !important;
  }

  /* Enlaces subcategorías */
  body .mobile-menu__column p a {
    display: block !important;
    margin: 0;
    padding: 5px 0 !important;
    text-align: left !important;
    text-decoration: none !important;
  }

  /* Texto subcategorías */
  body .mobile-menu__column p a span {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.25px;
    line-height: 1.35 !important;
    color: #222 !important;
  }
}



/* =========================================================
   LOGO MÓVIL MÁS PEQUEÑO
   ========================================================= */
@media (max-width: 768px) {

  #header .header-logo {
    max-width: 300px !important;
    width: 300px !important;
  }

  #header .header-logo img.logo,
  #header img.logo.img-fluid {
    width: 300px !important;
    max-width: 300px !important;
    height: auto !important;
  }

}

/* =========================================================
   QUITAR ESPACIOS DEL LOGO EN MÓVIL
   ========================================================= */
@media (max-width: 768px) {

  #header .header-logo {
    padding: 0 !important;
    margin: 0 !important;
  }

  #header .header-logo img.logo {
    display: block;
    margin: 0 auto !important;
  }

  /* Reduce altura general del header */
  #header .mobile-main-bar,
  #mobile-header {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: auto !important;
  }

  /* Quita margen del bloque envío gratis */
  .ay-mobile-top-shipping {
    margin-bottom: 0 !important;
  }

}

/* =========================================================
   CAMPO CANTIDAD PRODUCTO
   ========================================================= */

#quantity_wanted {
  font-size: 19px !important;      /* número más grande */
  font-weight: 600 !important;     /* número más grueso */
  border: 2px solid #cfcfcf !important; /* borde más visible */
  border-radius: 6px;
  text-align: center;
  color: #111 !important;
  background: #fff !important;
  box-shadow: none !important;
}

/* Botones + y - */
.bootstrap-touchspin .input-group-btn-vertical > .btn {
  background: #f5f5f5 !important;
  border-left: 2px solid #d5d5d5 !important;
}

}

/* =========================================================
   BOTÓN AÑADIR AL CARRITO - SOLO MÓVIL
   ========================================================= */
@media (max-width: 768px) {

  button.btn.btn-primary.btn-lg.add-to-cart {
    font-size: 16px !important;   /* tamaño texto */
    font-weight: 700 !important;
    height: 52px !important;      /* opcional, más alto */
    padding: 14px 20px !important;
  }

  button.btn.btn-primary.btn-lg.add-to-cart i {
    font-size: 16px !important;   /* icono carrito */
  }

}

/* =========================================================
   FIX CABECERA SUPERIOR MÓVIL SIN MOVERSE LATERALMENTE
   ========================================================= */
@media (max-width: 768px) {

  #header,
  #mobile-header,
  #header .header-nav,
  #header .header-top,
  #header .mobile-header {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
  }

  #header .header-nav > .container,
  #header .header-top > .container,
  #mobile-header > .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

}

/* =========================================================
   MENÚ MÓVIL - FOOTER (IDIOMA / MONEDA / LOGIN)
   ========================================================= */
@media (max-width: 768px) {


  /* Links: idioma, moneda, login */
  body .mobile-menu__footer a,
  body .mobile-menu__footer span,
  body .mobile-menu__footer button {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
  }

  /* Espaciado entre elementos */
  body .mobile-menu__footer > * {
    margin-bottom: 10px;
  }

}

body .mobile-menu__footer {
  border-top: 1px solid #eee;
  background: #e27400;
}


/* =========================================================
   HEADER MÓVIL - LOGO MÁS PEQUEÑO + ICONOS MÁS GRANDES
   ========================================================= */
@media (max-width: 768px) {


  /* Iconos del header más grandes */
  #mobile-header i,
  #header .mobile-main-bar i,
  #header .col-mobile-btn i,
  #header .mobile-cart i,
  #header .mobile-user i,
  #header .mobile-menu i {
    font-size: 24px !important;
    line-height: 1 !important;
  }

  /* Botones/iconos con más zona táctil */
  #mobile-header .col-mobile-btn,
  #header .col-mobile-btn,
  #header .mobile-main-bar a {
    min-width: 42px !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Ajuste de altura de la barra */
  #mobile-header,
  #header .mobile-main-bar {
    min-height: 52px !important;
  }
}
/* X cerrar menú móvil más grande */
@media (max-width: 768px) {

  .mobile-menu__close i,
  .mobile-menu__close .fa,
  .mobile-menu__close .fa-times {
    font-size: 28px !important;
  }

}

/* Línea naranja header móvil con difuminado */
@media (max-width: 768px) {

  #header {
    position: relative !important;
    overflow: visible !important;
    z-index: 10 !important;
  }

  #header::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 4px;
    background: #ff7b00;

    /* MUY IMPORTANTE */
    z-index: 1;

  }

  /* Menú móvil por encima */
  .mobile-menu,
  .mobile-menu__wrapper,
  .mobile-menu__content {
    z-index: 99999 !important;
  }

}

/* Flechas desplegable menú naranja */
.cbp-submenu-aindicator {
  color: #e66900 !important;
 }



/* BOTÓN BUSCADOR SIEMPRE NARANJA */
#search_widget button.search-btn {
  background-color: #e66900 !important;
  background: #e66900 !important;
  border: 1px solid #e66900 !important;
}

#search_widget button.search-btn i.fa-search {
  color: #000 !important;
}
#search_widget button[type="submit"].search-btn {
  background-color: #e66900 !important;
  background-image: none !important;
  color: #000 !important;
}

#search_widget button[type="submit"].search-btn .fa {
  color: #000 !important;
}
/* Hover botón buscador */
#search_widget button.search-btn:hover,
#search_widget button[type="submit"].search-btn:hover {
  background: #ff7b00 !important;
  border-color: #ff7b00 !important;
  transition: all 0.2s ease;
}

/* Mantener lupa negra */
#search_widget button.search-btn:hover i,
#search_widget button[type="submit"].search-btn:hover .fa {
  color: #000 !important;
}

/* EASY CHECKOUT - Login Google más visual */
.steco_social_login_box {
  margin-bottom: 18px !important;
}

.steco_social_login_box .steco_sub_heading {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #222 !important;
  margin-bottom: 8px !important;
  text-transform: uppercase;
}

/* Botón Google */
.steco_social_login.steco_social_google {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;

  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 16px !important;

  background: #fff !important;
  color: #222 !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 8px !important;

  font-size: 15px !important;
  font-weight: 700 !important;
  text-decoration: none !important;

  box-shadow: 0 3px 10px rgba(0,0,0,0.08) !important;
  transition: all 0.2s ease !important;
}

/* Ocultar icono viejo */
.steco_social_login.steco_social_google i {
  display: none !important;
}

/* Crear G oficial */
.steco_social_login.steco_social_google::before {
  content: "G";

  font-family: Arial, sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1;

  background: conic-gradient(
    #4285F4 0deg 90deg,
    #34A853 90deg 180deg,
    #FBBC05 180deg 270deg,
    #EA4335 270deg 360deg
  );

  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  margin-right: 10px;
}


/* =========================================================
   SEO MINIATURAS PRODUCTO
   Evita que la segunda imagen hover bloquee el click
   sobre la imagen principal enlazada
   ========================================================= */

.product-thumbnail-second {
  pointer-events: none !important;
}

/* =========================================================
   ABRIR CARRITO LATERAL AL AÑADIR PRODUCTO
   ========================================================= */

@media (max-width: 768px) {
  #ps-shoppingcart.side-cart #_desktop_blockcart-content.show,
  #_desktop_blockcart-content.show {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    right: 0 !important;
  }
}


/* =========================================================
   CARRITO LATERAL MÓVIL - MEJORA VISUAL
   ========================================================= */
@media (max-width: 768px) {

  #_mobile_blockcart-content {
    width: 92vw !important;
    max-width: 380px !important;
    padding: 18px !important;
  }

  #_mobile_blockcart-content .modal-title {
    font-size: 22px !important;
    font-weight: 800 !important;
  }

  #_mobile_blockcart-content #js-cart-close {
    font-size: 34px !important;
    width: 46px !important;
    height: 46px !important;
    line-height: 46px !important;
    opacity: 1 !important;
    color: #111 !important;
  }

  #_mobile_blockcart-content .cart-products li {
    padding: 16px 0 !important;
  }

  #_mobile_blockcart-content .col-info a {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
  }

  #_mobile_blockcart-content .product-image img {
    max-width: 78px !important;
  }

  #_mobile_blockcart-content .block-cart-product-quantity {
    font-size: 16px !important;
    height: 44px !important;
  }

  #_mobile_blockcart-content .remove-from-cart i {
    font-size: 24px !important;
  }

  #_mobile_blockcart-content .cart-summary-line,
  #_mobile_blockcart-content .cart-totals {
    font-size: 16px !important;
  }

  #_mobile_blockcart-content .cart-totals .label,
  #_mobile_blockcart-content .cart-totals .value {
    font-size: 20px !important;
    font-weight: 900 !important;
  }

  #_mobile_blockcart-content .iqitfreedeliverycount {
    font-size: 14px !important;
    padding: 12px !important;
    margin: 14px 0 !important;
  }

  #_mobile_blockcart-content .cart-buttons .btn-primary {
    font-size: 18px !important;
    font-weight: 900 !important;
    padding: 16px 12px !important;
    border-radius: 8px !important;
    background: #e66900 !important;
    border-color: #e66900 !important;
  }
}

/* =========================================================
   CANTIDAD CARRITO MÓVIL - FLECHAS MÁS PEQUEÑAS
   ========================================================= */
@media (max-width: 768px) {

  #_mobile_blockcart-content .bootstrap-touchspin {
    width: 76px !important;
    min-width: 76px !important;
    display: flex !important;
  }

  #_mobile_blockcart-content .block-cart-product-quantity {
    width: 44px !important;
    min-width: 44px !important;
    height: 42px !important;
    font-size: 14px !important;
    padding: 0 !important;
    text-align: center !important;
  }

  #_mobile_blockcart-content .input-group-btn-vertical {
    width: 24px !important;
    display: flex !important;
    flex-direction: column !important;
  }

  #_mobile_blockcart-content .input-group-btn-vertical .btn-touchspin {
    width: 24px !important;
    height: 21px !important;
    min-height: 21px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
  }

  #_mobile_blockcart-content .input-group-btn-vertical .btn-touchspin i {
    font-size: 12px !important;
    line-height: 1 !important;
  }
}


/* =========================================================
   CARRITO MÓVIL POR ENCIMA DE SLIDERS / BANNERS
   ========================================================= */
@media (max-width: 768px) {

  #mobile-cart-wrapper,
  #_mobile_blockcart-content,
  #_mobile_blockcart-content.show {
    z-index: 999999 !important;
  }

  #_mobile_blockcart-content {
    position: fixed !important;
    background: #fff !important;
  }

  .dropdown-menu.show {
    z-index: 999999 !important;
  }

  /* sliders debajo */
  .swiper,
  .swiper-container,
  .slick-slider,
  .owl-carousel,
  .swiper-button-next,
  .swiper-button-prev,
  .slick-arrow,
  .owl-prev,
  .owl-next {
    z-index: 1 !important;
  }
}


/* =========================================================
   CARRITO MÓVIL - FIJAR ARRIBA AL ABRIR
   ========================================================= */
@media (max-width: 768px) {

  #_mobile_blockcart-content.show {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: 0 !important;

    width: 92vw !important;
    max-width: 380px !important;

    height: auto !important;
    max-height: 100vh !important;

    overflow-y: auto !important;

    transform: none !important;

    z-index: 9999999 !important;

    padding: 18px !important;
  }

  /* Título */
  #_mobile_blockcart-content .modal-title {
    font-size: 22px !important;
    font-weight: 800 !important;
  }

  /* Botón cerrar */
  #_mobile_blockcart-content #js-cart-close {
    font-size: 34px !important;
    width: 44px !important;
    height: 44px !important;
    line-height: 44px !important;
    color: #111 !important;
    opacity: 1 !important;
  }

  /* Nombre productos */
  #_mobile_blockcart-content .col-info a {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
  }

  /* Imagen */
  #_mobile_blockcart-content .product-image img {
    max-width: 78px !important;
  }

  /* Papelera */
  #_mobile_blockcart-content .remove-from-cart i {
    font-size: 22px !important;
  }

  /* Totales */
  #_mobile_blockcart-content .cart-summary-line,
  #_mobile_blockcart-content .cart-totals {
    font-size: 16px !important;
  }

  #_mobile_blockcart-content .cart-totals .label,
  #_mobile_blockcart-content .cart-totals .value {
    font-size: 20px !important;
    font-weight: 900 !important;
  }

  /* Botón tramitar */
  #_mobile_blockcart-content .cart-buttons .btn-primary {
    font-size: 18px !important;
    font-weight: 900 !important;
    padding: 16px 12px !important;
    border-radius: 10px !important;
    background: #e66900 !important;
    border-color: #e66900 !important;
  }

}

/* =========================================================
   CARRITO MÓVIL - CAPA SUPERIOR
   ========================================================= */
@media (max-width: 768px) {

  #_mobile_blockcart-content.show {
    z-index: 2147483647 !important;
  }

  #mobile-cart-wrapper,
  #ps-shoppingcart,
  .dropdown-menu.show {
    z-index: 2147483647 !important;
  }

}

/* =========================================================
   BOTÓN SEGUIR COMPRANDO
   ========================================================= */
@media (max-width: 768px) {
  #_mobile_blockcart-content .cart-buttons .btn-secondary {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    padding: 14px !important;
    margin-top: 10px !important;
  }
}

/* =========================================================
   BOTÓN SEGUIR COMPRANDO
   ========================================================= */
@media (max-width: 768px) {

  #_mobile_blockcart-content .cart-buttons .btn-secondary {

    display: block !important;

    background: #f5f5f5 !important;
    border: 2px solid #e5e5e5 !important;
    color: #111 !important;

    font-size: 16px !important;
    font-weight: 800 !important;

    border-radius: 10px !important;

    padding: 14px !important;

    margin-top: 10px !important;

    text-transform: uppercase !important;
  }

}

/* =========================================================
   LOGO HEADER
   ========================================================= */

#desktop_logo img.logo {
    max-height: 70px !important;
    width: auto !important;
}


/* =========================================================
   TÍTULOS PRODUCTOS EN MAYÚSCULAS
   ========================================================= */

.product-title,
.product-title a,
.h3.product-title,
.js-product-miniature .product-title {
    text-transform: uppercase;
}


/* =========================================================
   AJUSTES VISUALES TÍTULOS PRODUCTO
   ========================================================= */

.product-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 4px;
}

/* =========================================================
   ICONO IZQUIERDA - SEGUIR COMPRANDO
   ========================================================= */

#_mobile_blockcart-content .cart-buttons .btn-secondary::before {
    content: "←";
    display: inline-block;
    margin-right: 10px;
    font-size: 18px;
    font-weight: 700;
    vertical-align: middle;
}

/* =========================================================
   BOTÓN TRAMITAR PEDIDO EN MAYÚSCULAS
   ========================================================= */

#_mobile_blockcart-content .cart-buttons .btn-primary {
    text-transform: uppercase !important;
}

/* =========================================================
   BOTÓN AÑADIR AL CARRITO LISTADOS MÓVIL
   ========================================================= */
@media (max-width: 768px) {

  .btn.btn-primary.btn-lg.add-to-cart {
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

}

/* =========================================================
   FICHAS PRODUCTO PREMIUM - AIRSOFTYECLA
   REVISADO Y LIMPIO
   ========================================================= */

/* =========================================================
   TARJETA PRODUCTO
   ========================================================= */

.js-product-miniature {
    background: #fff !important;
    border: 1px solid #ececec !important;
    border-radius: 16px !important;

    padding: 12px !important;

    overflow: hidden !important;

    box-shadow: 0 4px 18px rgba(0,0,0,.05) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease !important;
}

/* Hover tarjeta */
.js-product-miniature:hover {
    transform: translateY(-5px) !important;

    border-color: #e66900 !important;

    box-shadow: 0 12px 30px rgba(0,0,0,.12) !important;
}

/* =========================================================
   CONTENIDO INTERIOR
   ========================================================= */

.js-product-miniature .product-description {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;

    gap: 4px !important;
}

/* =========================================================
   IMAGEN PRODUCTO
   ========================================================= */

.js-product-miniature .thumbnail-container,
.js-product-miniature .product-thumbnail {

    min-height: 300px !important;

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

    margin-bottom: 2px !important;

    overflow: hidden !important;
}

/* Imagen */
.js-product-miniature img,
.js-product-miniature .product-thumbnail img:first-child {

    width: 100% !important;
    height: 100% !important;

    max-height: 285px !important;

    object-fit: cover !important;

    transform: scale(1.12) !important;

    transform-origin: center center !important;

    transition: transform .25s ease !important;
}

/* Hover imagen */
.js-product-miniature:hover img,
.js-product-miniature:hover .product-thumbnail img:first-child {
    transform: scale(1.16) !important;
}

/* =========================================================
   TÍTULO PRODUCTO
   ========================================================= */

.js-product-miniature .product-title,
.js-product-miniature .product-title a,
.js-product-miniature .h3.product-title {

    font-size: 15px !important;
    font-weight: 800 !important;

    line-height: 1.25 !important;

    color: #202020 !important;

    text-align: center !important;

    text-transform: uppercase !important;

    margin-top: 0 !important;
    margin-bottom: 2px !important;

    min-height: 38px !important;

    padding-bottom: 2px !important;
}

/* =========================================================
   MARCA
   ========================================================= */

.js-product-miniature .product-brand,
.js-product-miniature .manufacturer-name,
.js-product-miniature .manufacturer {

    font-size: 12px !important;

    color: #888 !important;

    text-align: center !important;

    margin-bottom: 2px !important;
}

/* =========================================================
   PRECIOS
   ========================================================= */

.js-product-miniature .product-price,
.js-product-miniature .price {

    font-size: 25px !important;
    font-weight: 900 !important;

    color: #e66900 !important;

    text-align: center !important;

    margin-bottom: 4px !important;
}

/* Precio anterior */
.js-product-miniature .regular-price {

    font-size: 13px !important;

    color: #999 !important;
}

/* =========================================================
   BOTÓN AÑADIR AL CARRITO
   ========================================================= */

.js-product-miniature .add-to-cart,
.js-product-miniature .btn-product-list {

    width: 100% !important;

    background: #e66900 !important;
    border: 1px solid #e66900 !important;

    color: #fff !important;

    border-radius: 10px !important;

    font-size: 14px !important;
    font-weight: 900 !important;

    line-height: 1 !important;

    white-space: nowrap !important;

    padding: 12px 10px !important;

    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease !important;
}

/* Hover botón */
.js-product-miniature .add-to-cart:hover,
.js-product-miniature .btn-product-list:hover {

    background: #d95f00 !important;
    border-color: #d95f00 !important;

    transform: translateY(-1px) !important;
}

/* Icono carrito */
.js-product-miniature .add-to-cart i {
    margin-right: 5px !important;
}

/* =========================================================
   FLAGS / ETIQUETAS
   ========================================================= */

.js-product-miniature .product-flag {

    background: #e66900 !important;

    color: #fff !important;

    border-radius: 6px !important;

    font-size: 13px !important;
    font-weight: 800 !important;

    padding: 6px 10px !important;

    box-shadow: 0 2px 8px rgba(230,105,0,.25) !important;
}

/* =========================================================
   AMAZZING FILTER - BOTÓN FILTRO
   ========================================================= */

#af_mobile_filter,
.compact-toggle,
.compact-toggle-btn,
.compact-toggle-wrapper {

    background: #111 !important;

    border-color: #111 !important;
}

/* Texto */
.compact-toggle-text {
    color: #fff !important;
}

/* Iconos */
.compact-toggle-icon,
.compact-toggle i,
.compact-toggle svg {

    color: #fff !important;

    fill: #fff !important;
}

/* Hover */
.compact-toggle:hover,
.compact-toggle-btn:hover {
    background: #222 !important;
}

/* =========================================================
   AMAZZING FILTER MÓVIL
   ========================================================= */

@media (max-width: 768px) {

    #amazzing_filter,
    #amazzing_filter * {
        font-size: 16px !important;
    }

    #amazzing_filter .title_block {
        font-size: 18px !important;
        font-weight: 800 !important;
    }

    #amazzing_filter .af_subtitle {
        font-size: 17px !important;
        font-weight: 800 !important;

        padding: 14px 0 !important;
    }

    #amazzing_filter .af-checkbox-label,
    #amazzing_filter .af-checkbox-label .name {

        font-size: 16px !important;

        line-height: 1.5 !important;
    }

    #amazzing_filter .count {
        font-size: 14px !important;
    }

    #amazzing_filter input[type="checkbox"] {

        width: 20px !important;
        height: 20px !important;
    }

    #amazzing_filter .viewFilteredProducts {

        font-size: 17px !important;
        font-weight: 800 !important;

        padding: 15px !important;
    }
}

/* =========================================================
   MOBILE PRODUCTOS
   ========================================================= */

@media (max-width: 768px) {

    .js-product-miniature {

        padding: 14px !important;

        border-radius: 14px !important;
    }

    .js-product-miniature .thumbnail-container,
    .js-product-miniature .product-thumbnail {

        min-height: 180px !important;
    }

    .js-product-miniature img,
    .js-product-miniature .product-thumbnail img:first-child {

        max-height: 170px !important;
    }

    .js-product-miniature .product-title,
    .js-product-miniature .product-title a {

        font-size: 13px !important;

        line-height: 1.15 !important;

        min-height: 34px !important;
    }

    .js-product-miniature .product-price,
    .js-product-miniature .price {

        font-size: 22px !important;
    }

    .js-product-miniature .add-to-cart,
    .js-product-miniature .btn-product-list {

        font-size: 13px !important;

        padding: 11px 6px !important;
    }
}

/* =========================================================
   IMAGEN PRODUCTO - AJUSTE REAL
   ========================================================= */

.js-product-miniature .thumbnail-container,
.js-product-miniature .product-thumbnail {

    min-height: 300px !important;

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

    overflow: hidden !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Enlace imagen */
.js-product-miniature .product-thumbnail {

    width: 100% !important;
}

/* Imagen */
.js-product-miniature .product-thumbnail img {

    width: 100% !important;
    height: 100% !important;

    max-height: 290px !important;

    object-fit: contain !important;

    transform: scale(1.08) !important;

    transition: transform .25s ease !important;

    display: block !important;
}

/* Hover */
.js-product-miniature:hover .product-thumbnail img {

    transform: scale(1.12) !important;
}

/* =========================================================
   MOBILE - ARREGLAR IMAGEN PRODUCTO MINIATURA
   ========================================================= */
@media (max-width: 768px) {

  .js-product-miniature .thumbnail-container,
  .js-product-miniature .product-thumbnail {
      min-height: 170px !important;
      height: 170px !important;
      max-height: 170px !important;

      margin: 0 !important;
      padding: 0 !important;

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

      overflow: hidden !important;
  }

  .js-product-miniature .product-thumbnail img {
      width: 100% !important;
      height: 100% !important;

      max-width: 100% !important;
      max-height: 160px !important;

      object-fit: contain !important;

      transform: scale(1.14) !important;
      transform-origin: center center !important;
  }

  .js-product-miniature:hover .product-thumbnail img {
      transform: scale(1.04) !important;
  }
}

/* =========================================================
   ENLACES MARCAS MINIATURAS
   ========================================================= */
.js-product-miniature .product-brand,
.js-product-miniature .ay-brand-link {
    position: relative !important;
    z-index: 999 !important;
    cursor: pointer !important;
}

/* =========================================================
   MODAL PRODUCTO MOBILE - AIRSOFTYECLA PREMIUM
   ========================================================= */
@media (max-width: 768px) {

  /* Modal */
#product-modal {
  z-index: 999999 !important;
  padding: 12px !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

  /* Dialog */
 #product-modal .modal-dialog {
  margin: 1vh auto 0 auto !important;
  width: 100% !important;
  max-width: 480px !important;
  min-height: auto !important;
  height: auto !important;
}
  /* Caja */
  #product-modal .modal-content {

    width: 100% !important;

    max-height: calc(100dvh - 24px) !important;

    border-radius: 18px !important;

    overflow: visible !important;

    border: none !important;

    background: #fff !important;

    box-shadow: 0 20px 60px rgba(0,0,0,.45) !important;

    position: relative !important;
  }

  /* Header */
  #product-modal .modal-header {

    height: 42px !important;

    min-height: 42px !important;

    padding: 0 56px 0 12px !important;

    background: #111 !important;

    border-bottom: 2px solid #e66900 !important;

    display: flex !important;

    align-items: center !important;
  }

  /* Título */
  #product-modal .modal-title {

    font-size: 0 !important;
  }

  #product-modal .modal-title::after {

    content: "Ver imagen ampliada";

    font-size: 13px;

    font-weight: 700;

    color: #fff;

    letter-spacing: .3px;

    text-transform: uppercase;
  }

  /* Botón cerrar */
  #product-modal .close {

    position: absolute !important;

    top: 8px !important;

    right: 8px !important;

    width: 42px !important;

    height: 42px !important;

    border-radius: 50% !important;

    background: #e66900 !important;

    color: #fff !important;

    font-size: 30px !important;

    line-height: 36px !important;

    text-align: center !important;

    opacity: 1 !important;

    border: 3px solid #fff !important;

    box-shadow: 0 6px 18px rgba(0,0,0,.25) !important;

    z-index: 10000 !important;

    padding: 0 !important;

    text-shadow: none !important;
  }

  #product-modal .close span {

    position: relative !important;

    top: -1px !important;
  }

  /* Body */
  #product-modal .modal-body {

    padding: 10px !important;

    background: #fff !important;

    text-align: center !important;

    overflow: visible !important;

    touch-action: auto !important;
  }

  /* Contenedor imagen */
  #product-modal .easyzoom-modal,
  #product-modal .js-modal-product-cover-easyzoom {

    overflow: hidden !important;

    touch-action: none !important;

    position: relative !important;
  }

  /* Imagen */
  #product-modal .product-cover-modal {

    touch-action: none !important;

    transform-origin: center center !important;

    transition: transform .12s ease-out !important;

    will-change: transform !important;

    max-width: 100% !important;

    max-height: 58vh !important;

    width: auto !important;

    height: auto !important;

    object-fit: contain !important;

    margin: 0 auto !important;

    display: block !important;

    user-select: none !important;

    -webkit-user-drag: none !important;
  }

  /* Thumbnails */
  #product-modal #thumbnails {

    margin-top: 10px !important;
  }

  #product-modal .thumb-container {

    border-radius: 10px !important;

    overflow: hidden !important;
  }

  /* Flechas */
  #product-modal .swiper-button-prev,
  #product-modal .swiper-button-next {

    width: 32px !important;

    height: 32px !important;

    background: rgba(0,0,0,.55) !important;

    border-radius: 50% !important;

    z-index: 15 !important;
  }

  /* Ocultar sliders inferiores */
  body.modal-open .product-accessories .swiper-button-prev,
  body.modal-open .product-accessories .swiper-button-next,
  body.modal-open .featured-products .swiper-button-prev,
  body.modal-open .featured-products .swiper-button-next,
  body.modal-open #product-images-large .swiper-button-prev,
  body.modal-open #product-images-large .swiper-button-next {

    opacity: 0 !important;

    pointer-events: none !important;
  }

  /* Evitar conflicto táctil con botones */
  #product-modal .ay-modal-cart-box,
  #product-modal .ay-modal-cart-box * {

    touch-action: manipulation !important;
  }
}

/* =========================================================
   BLOQUEAR SCROLL DEL FONDO
   ========================================================= */

body.modal-open {

  overflow: hidden !important;

  width: 100% !important;
}

/* Restaurar viewport correctamente */
body:not(.modal-open) {

  overflow-x: hidden !important;

  overflow-y: auto !important;

  position: static !important;

  height: auto !important;

  touch-action: auto !important;

  transform: none !important;
}

/* Evitar bugs viewport móvil */
html,
body,
#wrapper,
#inner-wrapper,
#content-wrapper,
#main {

  transform: none !important;

  zoom: 1 !important;
}

/* Fondo oscuro modal */
.modal-backdrop {

  z-index: 999998 !important;

  background: rgba(0,0,0,.82) !important;
}

/* =========================================================
   BOTON AÑADIR CARRITO MODAL ZOOM + PRECIO
   ========================================================= */

@media (max-width: 768px) {

  #product-modal .ay-modal-cart-box {

    margin-top: 12px !important;

    padding: 10px !important;

    background: #f6f6f6 !important;

    border-radius: 14px !important;

    display: flex !important;

    align-items: center !important;

    gap: 10px !important;
  }

  /* Precio */
  #product-modal .ay-modal-price {

    flex: 1 !important;

    text-align: left !important;

    white-space: nowrap !important;
  }

  #product-modal .ay-price-value {

    display: block !important;

    font-size: 22px !important;

    font-weight: 900 !important;

    color: #111 !important;

    line-height: 1 !important;
  }

  /* Botón */
  #product-modal .ay-modal-add-cart {

    flex: 0 0 auto !important;

    min-width: 145px !important;

    height: 46px !important;

    border: none !important;

    border-radius: 12px !important;

    background: #e66900 !important;

    color: #fff !important;

    font-size: 14px !important;

    font-weight: 900 !important;

    text-transform: uppercase !important;

    letter-spacing: .3px !important;

    box-shadow: 0 8px 20px rgba(230,105,0,.35) !important;

    transition: transform .12s ease !important;
  }

  #product-modal .ay-modal-add-cart:active {

    transform: scale(.98) !important;
  }
}

/* Bloquear pinch zoom fuera de la imagen */
body.modal-open #wrapper,
body.modal-open #inner-wrapper,
body.modal-open #content-wrapper,
body.modal-open #main {

  touch-action: none !important;
}

/* =========================================================
   BANNERS CATEGORÍAS - TEXTO CENTRADO SOBRE IMAGEN
   ========================================================= */

.elementor-iqit-banner {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 14px !important;
}

/* Contenedor del texto */
.elementor-iqit-banner-content {
    position: absolute !important;

    top: 50% !important;
    left: 50% !important;

    transform: translate(-50%, -50%) !important;

    width: 100% !important;

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

    text-align: center !important;

    z-index: 5 !important;

    padding: 20px !important;
}

/* Título */
.elementor-iqit-banner-title {
    color: #fff !important;

    font-size: 23px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;

    text-transform: uppercase !important;

    margin-bottom: 10px !important;

    text-shadow:
        0 2px 10px rgba(0,0,0,.65) !important;
}

/* Subtítulo */
.elementor-iqit-banner-description,
.elementor-iqit-banner-subtitle {
    color: #ff9100 !important;

    font-size: 15px !important;
    font-weight: 700 !important;

    text-transform: uppercase !important;

    letter-spacing: .5px !important;

    text-shadow:
        0 2px 10px rgba(0,0,0,.65) !important;
}

/* Overlay oscuro elegante */
.elementor-iqit-banner-overlay {
    background:
        linear-gradient(
            to top,
            rgba(0,0,0,.65),
            rgba(0,0,0,.20)
        ) !important;

    opacity: 1 !important;
}

/* Imagen */
.elementor-iqit-banner-img img {
    width: 100% !important;
    height: 100% !important;

    object-fit: cover !important;

    transition: transform .35s ease !important;
}

/* Hover premium */
.elementor-iqit-banner:hover img {
    transform: scale(1.05) !important;
}

/* MOBILE */
@media (max-width: 768px) {

    .elementor-iqit-banner-title {
        font-size: 24px !important;
    }

    .elementor-iqit-banner-description,
    .elementor-iqit-banner-subtitle {
        font-size: 14px !important;
    }
}

/* =========================================================
   SUBTITULO DEBAJO DEL TITULO
   ========================================================= */

/* Fuerza el orden correcto */
.elementor-iqit-banner-content {
    display: flex !important;
    flex-direction: column !important;
}

/* TITULO */
.elementor-iqit-banner-title {
    order: 1 !important;
    margin-bottom: 12px !important;
}

/* SUBTITULO */
.elementor-iqit-banner-description,
.elementor-iqit-banner-subtitle {
    order: 2 !important;
}

/* =========================================================
   FLECHA DESPUÉS DEL TITULO
   ========================================================= */

.elementor-iqit-banner-title::after {

    content: "→"; /* icono */

    display: inline-block !important;

    margin-left: 10px !important;

    color: #ff9100 !important;

    font-size: .9em !important;

    transition: transform .25s ease !important;
}

/* Hover */
.elementor-iqit-banner:hover .elementor-iqit-banner-title::after {

    transform: translateX(5px) !important;
}

/* =========================================================
   BANNERS CATEGORÍAS - 2 COLUMNAS EN MÓVIL
   ========================================================= */

@media (max-width: 768px) {

    /* columna banner */
    .elementor-column.elementor-col-25 {
        width: 50% !important;
        max-width: 50% !important;

        padding: 6px !important;
    }

    /* imagen más compacta */
    .elementor-iqit-banner-img img {
        height: 120px !important;

        object-fit: cover !important;
    }

    /* titulo */
    .elementor-iqit-banner-title {

        font-size: 16px !important;

        line-height: 1.1 !important;
    }

    /* subtitulo */
    .elementor-iqit-banner-description,
    .elementor-iqit-banner-subtitle {

        font-size: 10px !important;
    }

}

/* =========================================================
   HOME CATEGORÍAS - SLIDER MÓVIL
   Clase en la SECCIÓN PADRE: section-sliderhome2
   ========================================================= */

@media (max-width: 768px) {

  .section-sliderhome2 > .elementor-container > .elementor-row {
      display: flex !important;
      flex-wrap: nowrap !important;
      overflow-x: auto !important;
      overflow-y: hidden !important;
      gap: 12px !important;
      padding: 0 14px 14px 14px !important;
      scroll-snap-type: x mandatory !important;
      -webkit-overflow-scrolling: touch !important;
      scrollbar-width: none !important;
  }

  .section-sliderhome2 > .elementor-container > .elementor-row::-webkit-scrollbar {
      display: none !important;
  }

  .section-sliderhome2 > .elementor-container > .elementor-row > .elementor-column {
      flex: 0 0 40% !important;
      max-width: 40% !important;
      width: 40% !important;
      scroll-snap-align: start !important;
  }

  .section-sliderhome2 .elementor-iqit-banner-img img {
      height: 100px !important;
      object-fit: cover !important;
      border-radius: 14px !important;
  }

  .section-sliderhome2 .elementor-iqit-banner-title {
      font-size: 15px !important;
      line-height: 1.1 !important;
  }

  .section-sliderhome2 .elementor-iqit-banner-subtitle,
  .section-sliderhome2 .elementor-iqit-banner-description {
      font-size: 9px !important;
      line-height: 1.1 !important;
      letter-spacing: .3px !important;
  }
}

/* =========================================================
   TITULOS HOME MOBILE
   Clase sección: titulos-home1
   ========================================================= */

@media (max-width: 768px) {

  .titulos-home1 .elementor-heading-title {

      font-size: 14px !important;

      font-weight: 900 !important;

      text-transform: uppercase !important;

      letter-spacing: -.5px !important;

      line-height: 1.1 !important;

      color: #111 !important;

      margin-bottom: 6px !important;

      text-align: left !important;
  }

  .titulos-home1 p {

      font-size: 10px !important;

      line-height: 1.4 !important;

      color: #666 !important;

      margin-bottom: 10px !important;
  }

}

/* =========================================================
   HOME MÓVIL - TÍTULOS DE SECCIONES
   Clase en Elementor: titulos-home1
   ========================================================= */

@media (max-width: 768px) {

  .titulos-home1 {
    margin: 26px 0 14px 0 !important;
    padding: 0 14px !important;
  }

  .titulos-home1 .elementor-heading-title,
  .titulos-home1 .elementor-heading-title span {
    display: block !important;

    font-size: 22px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    letter-spacing: -0.4px !important;

    color: #111 !important;
    text-transform: uppercase !important;
  }

  .titulos-home1 .elementor-heading-title::after {
    content: "" !important;
    display: block !important;

    width: 54px !important;
    height: 3px !important;

    margin-top: 9px !important;

    background: #e66900 !important;
    border-radius: 99px !important;
  }
}

/* =========================================================
   HOME - TÍTULOS SECCIONES PREMIUM
   Clase Elementor: titulos-home1
   ========================================================= */

/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 769px) {

  .titulos-home1 {
    margin: 42px 0 22px 0 !important;
    padding: 0 !important;
  }

  .titulos-home1 .elementor-heading-title,
  .titulos-home1 .elementor-heading-title span {

    display: inline-block !important;

    font-size: 34px !important;
    line-height: 1.1 !important;

    font-weight: 900 !important;

    letter-spacing: -0.8px !important;

    color: #111 !important;

    text-transform: uppercase !important;

    position: relative !important;
  }

  /* Línea premium debajo */
  .titulos-home1 .elementor-heading-title::after {

    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    bottom: -12px !important;

    width: 72px !important;
    height: 4px !important;

    background: #e66900 !important;

    border-radius: 99px !important;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 768px) {

  .titulos-home1 {
    margin: 28px 0 14px 0 !important;
    padding: 0 14px !important;
  }

  .titulos-home1 .elementor-heading-title,
  .titulos-home1 .elementor-heading-title span {

    display: block !important;

    font-size: 22px !important;

    line-height: 1.15 !important;

    font-weight: 900 !important;

    letter-spacing: -0.4px !important;

    color: #111 !important;

    text-transform: uppercase !important;

    position: relative !important;
  }

  /* Línea debajo */
  .titulos-home1 .elementor-heading-title::after {

    content: "" !important;

    display: block !important;

    width: 54px !important;
    height: 3px !important;

    margin-top: 10px !important;

    background: #e66900 !important;

    border-radius: 99px !important;
  }
}

/* =========================================================
   HOME MÓVIL - FABRICANTES DESTACADOS PREMIUM
   Clase section Elementor: marcas-home-mobile
   ========================================================= */

@media (max-width: 768px) {

  .marcas-home-mobile {
    margin: 24px 0 !important;
    padding: 22px 0 26px 0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f5f5f5 100%) !important;
    overflow: hidden !important;
  }

  .marcas-home-mobile .swiper,
  .marcas-home-mobile .swiper-container {
    padding: 6px 0 10px 0 !important;
    overflow: visible !important;
  }

  .marcas-home-mobile .swiper-wrapper {
    display: flex !important;
    align-items: stretch !important;
  }

  .marcas-home-mobile .swiper-slide {
    width: 130px !important;
    min-width: 130px !important;
    height: 82px !important;
    margin-right: 12px !important;

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

    background: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 16px !important;

    box-shadow: 0 8px 22px rgba(0,0,0,.08) !important;
    overflow: hidden !important;
  }

  .marcas-home-mobile .swiper-slide:first-child {
    margin-left: 14px !important;
  }

  .marcas-home-mobile .swiper-slide img {
    max-width: 92px !important;
    max-height: 46px !important;
    width: auto !important;
    height: auto !important;

    object-fit: contain !important;

    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
  }

  .marcas-home-mobile .swiper-slide:hover {
    border-color: #e66900 !important;
    box-shadow: 0 10px 26px rgba(230,105,0,.18) !important;
  }
}

/* =========================================================
   MOBILE - LOGOS FABRICANTES MÁS GRANDES
   ========================================================= */

@media (max-width: 768px) {

  .marcas-home-mobile .swiper-slide img {

    max-width: 120px !important;
    max-height: 58px !important;

    width: auto !important;
    height: auto !important;

    object-fit: contain !important;

    transform: scale(1.18) !important;

    transition:
      transform .25s ease,
      opacity .25s ease !important;

    filter: none !important;
    opacity: 1 !important;
  }

  /* Hover/touch */
  .marcas-home-mobile .swiper-slide:hover img,
  .marcas-home-mobile .swiper-slide:active img {

    transform: scale(1.24) !important;
  }

  /* Tarjetas un poco más grandes */
  .marcas-home-mobile .swiper-slide {

    width: 148px !important;
    min-width: 148px !important;

    height: 92px !important;

    padding: 10px !important;
  }
}

/* =========================================================
   INFO ORDERS - ICONOS NARANJAS
   ========================================================= */

.info-orders .elementor-icon,
.info-orders i,
.info-orders svg {
    color: #e66900 !important;
    fill: #e66900 !important;
}

/* Hover opcional */
.info-orders .elementor-column:hover .elementor-icon,
.info-orders .elementor-column:hover i,
.info-orders .elementor-column:hover svg {
    color: #ff7a00 !important;
    fill: #ff7a00 !important;
}

/* =========================================================
   CONFIRMACIÓN PEDIDO - AIRSOFTYECLA PRO REAL
   ========================================================= */

body#order-confirmation #wrapper {
    background: #f5f5f5 !important;
    padding: 28px 0 45px !important;
}

body#order-confirmation #inner-wrapper {
    max-width: 1320px !important;
}

/* Layout */
body#order-confirmation #content-hook_order_confirmation > .row {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: flex-start !important;
}

/* Tarjetas principales */
body#order-confirmation .order-confirmation-title-payment,
body#order-confirmation .order-confirmation-details {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    background: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 20px !important;
    padding: 28px !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.07) !important;
}

/* Título confirmado */
body#order-confirmation .page-title {
    font-size: 26px !important;
    font-weight: 900 !important;
    color: #111 !important;
    margin-bottom: 18px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #e8e8e8 !important;
}

body#order-confirmation .page-title i {
    color: #f39200 !important;
}

/* Caja email */
body#order-confirmation .mail-sent-info {
    background: #fafafa !important;
    border: 1px solid #e7e7e7 !important;
    border-left: 5px solid #f39200 !important;
    border-radius: 14px !important;
    padding: 22px !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: #555 !important;
}

body#order-confirmation .mail-sent-info a {
    color: #f39200 !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
}

/* Detalles pedido */
body#order-confirmation #order-details {
    background: #111 !important;
    border-radius: 18px !important;
    padding: 22px !important;
    margin-bottom: 24px !important;
    color: #fff !important;
}

body#order-confirmation #order-details .card-title {
    color: #fff !important;
    font-size: 25px !important;
    font-weight: 900 !important;
    margin-bottom: 14px !important;
}

body#order-confirmation #order-details ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body#order-confirmation #order-details li {
    color: #e8e8e8 !important;
    font-size: 15px !important;
    margin-bottom: 7px !important;
}

body#order-confirmation #order-reference-value {
    color: #f39200 !important;
    font-weight: 900 !important;
}

body#order-confirmation #order-details em {
    color: #aaa !important;
}

/* Artículos */
body#order-confirmation #order-items > .card-title {
    font-size: 26px !important;
    font-weight: 900 !important;
    color: #111 !important;
    margin-bottom: 18px !important;
}

body#order-confirmation .order-confirmation-table {
    background: #fff !important;
}

/* Línea producto */
body#order-confirmation .order-line {
    padding: 18px 0 !important;
    border-bottom: 1px solid #eee !important;
}

body#order-confirmation .order-line .image {
    display: flex !important;
    width: 78px !important;
    height: 78px !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f6f6f6 !important;
    border-radius: 14px !important;
    padding: 8px !important;
}

body#order-confirmation .order-line img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}

body#order-confirmation .order-line .details span {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #222 !important;
    line-height: 1.35 !important;
}

body#order-confirmation .order-line .qty {
    font-size: 15px !important;
    color: #333 !important;
}

body#order-confirmation .order-line .bold {
    font-weight: 900 !important;
    color: #111 !important;
}

/* Totales */
body#order-confirmation .order-confirmation-table hr {
    margin: 22px 0 14px !important;
    border-color: #eee !important;
}

body#order-confirmation .order-confirmation-table table {
    width: 100% !important;
}

body#order-confirmation .order-confirmation-table table td {
    padding: 7px 0 !important;
    font-size: 16px !important;
    color: #555 !important;
}

body#order-confirmation .order-confirmation-table table td:last-child {
    text-align: right !important;
    font-weight: 800 !important;
    color: #222 !important;
}

body#order-confirmation .order-confirmation-table tr.totals td {
    padding-top: 15px !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    color: #111 !important;
    border-top: 2px solid #eee !important;
}

body#order-confirmation .order-confirmation-table tr.totals td:last-child {
    color: #f39200 !important;
    font-size: 24px !important;
}

/* Móvil */
@media (max-width: 768px) {

    body#order-confirmation #wrapper {
        padding: 18px 0 30px !important;
    }

    body#order-confirmation #inner-wrapper {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body#order-confirmation #content-hook_order_confirmation > .row {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
    }

    body#order-confirmation .order-confirmation-title-payment,
    body#order-confirmation .order-confirmation-details {
        padding: 20px !important;
        border-radius: 16px !important;
    }

    body#order-confirmation .page-title {
        font-size: 21px !important;
    }

    body#order-confirmation #order-details .card-title,
    body#order-confirmation #order-items > .card-title {
        font-size: 22px !important;
    }

    body#order-confirmation .order-line .image {
        width: 65px !important;
        height: 65px !important;
    }

    body#order-confirmation .order-line .details span {
        font-size: 14px !important;
    }

    body#order-confirmation .order-line .qty {
        margin-top: 10px !important;
        padding-left: 77px !important;
    }

    body#order-confirmation .order-confirmation-table tr.totals td {
        font-size: 18px !important;
    }

    body#order-confirmation .order-confirmation-table tr.totals td:last-child {
        font-size: 21px !important;
    }
}

/* =========================================================
   LOGIN / INICIAR SESIÓN - AIRSOFTYECLA PRO
   ========================================================= */

body#authentication #wrapper {
    background: #f5f5f5 !important;
    padding: 30px 0 55px !important;
}

body#authentication #inner-wrapper {
    max-width: 1180px !important;
}

/* Título */
body#authentication .page-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

body#authentication .page-title {
    font-size: 30px !important;
    font-weight: 900 !important;
    color: #111 !important;
    margin-bottom: 0 !important;
}

body#authentication .page-title span:before {
    content: "\f2bd";
    font-family: "FontAwesome";
    color: #f39200;
    margin-right: 10px;
}

/* Tarjeta principal */
body#authentication #content.page-content {
    max-width: 760px !important;
    margin: 0 auto !important;
    background: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 22px !important;
    padding: 34px !important;
    box-shadow: 0 14px 35px rgba(0,0,0,.08) !important;
}

/* Formulario */
body#authentication .login-form form section {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

body#authentication .form-group {
    display: block !important;
    margin: 0 !important;
}

body#authentication .col-form-label {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #222 !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
}

body#authentication .js-input-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
}

/* Inputs */
body#authentication .form-control {
    height: 50px !important;
    border-radius: 12px !important;
    border: 1px solid #ddd !important;
    background: #fafafa !important;
    padding: 0 15px !important;
    font-size: 15px !important;
    color: #111 !important;
    box-shadow: none !important;
}

body#authentication .form-control:focus {
    background: #fff !important;
    border-color: #f39200 !important;
    box-shadow: 0 0 0 3px rgba(243,146,0,.15) !important;
}

/* Botón ojo contraseña */
body#authentication .input-group {
    display: flex !important;
}

body#authentication .input-group .form-control {
    border-radius: 12px 0 0 12px !important;
}

body#authentication .input-group-append .btn {
    width: 58px !important;
    height: 50px !important;
    border-radius: 0 12px 12px 0 !important;
    background: #f39200 !important;
    border: 1px solid #f39200 !important;
    color: #fff !important;
}

/* Olvidó contraseña */
body#authentication .forgot-password {
    text-align: right !important;
    margin-top: -4px !important;
}

body#authentication .forgot-password a {
    color: #666 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

body#authentication .forgot-password a:hover {
    color: #f39200 !important;
}

/* Botón login */
body#authentication .form-footer {
    margin-top: 22px !important;
}

body#authentication #submit-login {
    width: 100% !important;
    max-width: 320px !important;
    height: 52px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #f39200, #e65f00) !important;
    border: none !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    box-shadow: 0 10px 24px rgba(243,146,0,.28) !important;
}

body#authentication #submit-login:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 28px rgba(243,146,0,.36) !important;
}

/* Separadores */
body#authentication #content hr {
    margin: 26px 0 !important;
    border-color: #eee !important;
}

/* Google */
body#authentication .iqitsociallogin {
    text-align: center !important;
}

body#authentication .btn-iqitsociallogin.btn-google {
    height: 48px !important;
    border-radius: 12px !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: #333 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    padding: 0 22px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.06) !important;
}

body#authentication .btn-iqitsociallogin.btn-google img {
    width: 22px !important;
    height: 22px !important;
}

body#authentication .btn-iqitsociallogin.btn-google:hover {
    border-color: #f39200 !important;
    transform: translateY(-1px) !important;
}

/* Crear cuenta */
body#authentication .no-account {
    text-align: center !important;
    margin-top: 8px !important;
}

body#authentication .no-account a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    color: #111 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
}

body#authentication .no-account a:hover {
    color: #f39200 !important;
}

/* Móvil */
@media (max-width: 768px) {

    body#authentication #wrapper {
        padding: 18px 0 35px !important;
    }

    body#authentication #inner-wrapper {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body#authentication .page-title {
        font-size: 23px !important;
        text-align: left !important;
    }

    body#authentication #content.page-content {
        padding: 22px !important;
        border-radius: 18px !important;
    }

    body#authentication #submit-login {
        max-width: 100% !important;
    }

    body#authentication .forgot-password {
        text-align: center !important;
    }

    body#authentication .btn-iqitsociallogin.btn-google {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* =========================================================
   LOGIN GOOGLE - MÁS LIMPIO Y JUNTO
   ========================================================= */

/* Menos separación general */
body#authentication #content hr {
    margin: 18px 0 !important;
}

/* Contenedor google */
body#authentication .iqitsociallogin {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

/* Botón Google */
body#authentication .btn-iqitsociallogin.btn-google {
    width: 100% !important;
    max-width: 320px !important;

    height: 52px !important;

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

    margin: 0 auto !important;
    padding: 0 20px !important;

    background: #ffffff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 14px !important;

    font-size: 15px !important;
    font-weight: 800 !important;
    color: #222 !important;

    box-shadow: 0 8px 22px rgba(0,0,0,.05) !important;

    transition: all .25s ease !important;
}

/* Hover */
body#authentication .btn-iqitsociallogin.btn-google:hover {
    border-color: #f39200 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 10px 26px rgba(243,146,0,.15) !important;
}

/* Logo Google */
body#authentication .btn-iqitsociallogin.btn-google img {
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
}

/* Ocultar texto original */
body#authentication .btn-iqitsociallogin.btn-google {
    font-size: 0 !important;
}

/* Nuevo texto */
body#authentication .btn-iqitsociallogin.btn-google::after {
    content: "Iniciar sesión con Google";
    font-size: 15px;
    font-weight: 800;
    color: #222;
}

/* Crear cuenta más cerca */
body#authentication .no-account {
    margin-top: 12px !important;
}

/* Móvil */
@media (max-width: 768px) {

    body#authentication .btn-iqitsociallogin.btn-google {
        max-width: 100% !important;
    }

}

/* =========================================================
   FIX MODAL WISHLIST PC
   ========================================================= */

.modal-backdrop.fade.show {
    background: rgba(0,0,0,.55) !important;
    opacity: 1 !important;
    z-index: 1050 !important;
}

#iqitwishlist-modal,
.iqitwishlist-modal,
.modal.show {
    z-index: 1060 !important;
}

#iqitwishlist-modal .modal-dialog,
.iqitwishlist-modal .modal-dialog,
.modal.show .modal-dialog {
    z-index: 1061 !important;
    position: relative !important;
}

#iqitwishlist-modal .modal-content,
.iqitwishlist-modal .modal-content {
    background: #fff !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.35) !important;
}

/* =========================================================
   MODAL WISHLIST LOGIN - DISEÑO PRO
   ========================================================= */

#iqitwishlist-modal .modal-dialog {
    max-width: 520px !important;
}

#iqitwishlist-modal .modal-content {
    border-radius: 20px !important;
    overflow: hidden !important;
    border: none !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.38) !important;
}

#iqitwishlist-modal .modal-header {
    background: #111 !important;
    border-bottom: 3px solid #f39200 !important;
    padding: 20px 24px !important;
}

#iqitwishlist-modal .modal-title {
    font-size: 0 !important;
}

#iqitwishlist-modal .modal-title:before {
    content: "Inicia sesión para guardar favoritos";
    font-size: 22px !important;
    font-weight: 900 !important;
    color: #fff !important;
}

#iqitwishlist-modal .close {
    color: #fff !important;
    opacity: 1 !important;
    font-size: 30px !important;
}

#iqitwishlist-modal .modal-body {
    padding: 26px 32px 30px !important;
    background: #fff !important;
}

/* Texto superior */
#iqitwishlist-modal .login-form > p {
    font-size: 0 !important;
    margin-bottom: 22px !important;
    text-align: center !important;
}

#iqitwishlist-modal .login-form > p:before {
    content: "Accede a tu cuenta para guardar productos en favoritos y encontrarlos fácilmente más tarde.";
    display: block !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    color: #555 !important;
}

/* Formulario */
#iqitwishlist-modal .form-group {
    display: block !important;
    margin-bottom: 16px !important;
}

#iqitwishlist-modal .col-form-label {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    margin-bottom: 7px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #222 !important;
}

#iqitwishlist-modal .js-input-column {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
}

#iqitwishlist-modal .form-control {
    height: 48px !important;
    border-radius: 12px !important;
    border: 1px solid #ddd !important;
    background: #fafafa !important;
    padding: 0 14px !important;
    box-shadow: none !important;
}

#iqitwishlist-modal .form-control:focus {
    border-color: #f39200 !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(243,146,0,.15) !important;
}

/* Ojo contraseña */
#iqitwishlist-modal .input-group .form-control {
    border-radius: 12px 0 0 12px !important;
}

#iqitwishlist-modal .input-group-append .btn {
    width: 58px !important;
    height: 48px !important;
    border-radius: 0 12px 12px 0 !important;
    background: #f39200 !important;
    border-color: #f39200 !important;
    color: #fff !important;
}

/* Olvidó contraseña */
#iqitwishlist-modal .forgot-password {
    text-align: right !important;
    margin: -4px 0 16px !important;
}

#iqitwishlist-modal .forgot-password a {
    color: #666 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

#iqitwishlist-modal .forgot-password a:hover {
    color: #f39200 !important;
}

/* Botón login */
#iqitwishlist-modal #submit-login {
    width: 100% !important;
    height: 50px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #f39200, #e65f00) !important;
    border: none !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    box-shadow: 0 10px 24px rgba(243,146,0,.28) !important;
}

/* Separadores */
#iqitwishlist-modal hr {
    margin: 22px 0 !important;
    border-color: #eee !important;
}

/* Google */
#iqitwishlist-modal .btn-google {
    width: 100% !important;
    height: 48px !important;
    max-width: 310px !important;
    margin: 0 auto !important;
    border-radius: 12px !important;
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: #222 !important;
    font-size: 0 !important;
    font-weight: 800 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
}

#iqitwishlist-modal .btn-google:after {
    content: "Iniciar sesión con Google";
    font-size: 15px !important;
    color: #222 !important;
    font-weight: 800 !important;
}

#iqitwishlist-modal .btn-google img {
    width: 22px !important;
    height: 22px !important;
    margin: 0 !important;
}

/* Crear cuenta */
#iqitwishlist-modal .no-account {
    text-align: center !important;
}

#iqitwishlist-modal .no-account a {
    font-size: 0 !important;
}

#iqitwishlist-modal .no-account a:before {
    content: "¿No tienes cuenta? Crear una cuenta";
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #111 !important;
}

#iqitwishlist-modal .no-account a:hover:before {
    color: #f39200 !important;
}

/* Móvil */
@media (max-width: 768px) {
    #iqitwishlist-modal .modal-dialog {
        width: calc(100% - 24px) !important;
        margin: 70px auto 20px !important;
    }

    #iqitwishlist-modal .modal-body {
        padding: 22px 20px 26px !important;
    }

    #iqitwishlist-modal .modal-title:before {
        font-size: 18px !important;
    }
}


/* =========================================================
   MI CUENTA - AIRSOFTYECLA LIGHT CORREGIDO
   ========================================================= */

.my-account-page-content-wrapper {
    background: #fff !important;
    border-radius: 22px !important;
    padding: 26px !important;
    border: 1px solid #e8e8e8 !important;
    box-shadow: 0 14px 36px rgba(0,0,0,.06) !important;
}

.my-account-page-content-wrapper > .row {
    display: grid !important;
    grid-template-columns: 300px 1fr !important;
    gap: 28px !important;
    align-items: flex-start !important;
}

/* MENÚ LATERAL */
.my-account-side-links {
    width: 300px !important;
    max-width: 300px !important;
    flex: 0 0 300px !important;
    background: #fafafa !important;
    border: 1px solid #ececec !important;
    border-radius: 20px !important;
    padding: 14px !important;
}

/* Reset Bootstrap */
.my-account-side-links > a,
.my-account-side-links > a.col-lg-4,
.my-account-side-links > a.col-md-6,
.my-account-side-links > a.col-sm-6,
.my-account-side-links > a.col-xs-12 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
    text-decoration: none !important;
}

.my-account-side-links .link-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 12px 16px !important;
    background: #fff !important;
    border: 1px solid #ececec !important;
    border-radius: 14px !important;
    color: #222 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.my-account-side-links .link-item i {
    color: #f39200 !important;
    font-size: 18px !important;
    min-width: 24px !important;
    text-align: center !important;
}

.my-account-side-links a:hover .link-item {
    background: #fff7ef !important;
    border-color: #f39200 !important;
}

/* Activo */
body#identity #identity-link .link-item,
body#addresses #addresses-link .link-item,
body#history #history-link .link-item,
body#discount #discounts-link .link-item,
body#order-slip #order-slips-link .link-item,
body#module-iqitwishlist-view #iqitwishlist .link-item {
    background: linear-gradient(135deg, #f39200, #eb6d00) !important;
    border-color: #f39200 !important;
    color: #fff !important;
}

body#identity #identity-link .link-item i,
body#addresses #addresses-link .link-item i,
body#history #history-link .link-item i,
body#discount #discounts-link .link-item i,
body#order-slip #order-slips-link .link-item i,
body#module-iqitwishlist-view #iqitwishlist .link-item i {
    color: #fff !important;
}

/* CONTENIDO */
.my-account-page-content {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    background: #fff !important;
    border: 1px solid #ececec !important;
    border-radius: 20px !important;
    padding: 28px !important;
}

/* Formularios */
.my-account-page-content .form-control {
    height: 52px !important;
    border-radius: 14px !important;
    border: 1px solid #ddd !important;
    background: #fafafa !important;
    padding: 0 16px !important;
    box-shadow: none !important;
}

.my-account-page-content .form-control:focus {
    border-color: #f39200 !important;
    box-shadow: 0 0 0 4px rgba(243,146,0,.12) !important;
}

.my-account-page-content .btn-primary,
.my-account-page-content button[type="submit"] {
    min-width: 190px !important;
    height: 52px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #f39200, #eb6d00) !important;
    border: none !important;
    color: #fff !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

/* WISHLIST TRADUCCIONES */
body#module-iqitwishlist-view .my-account-page-content h1,
body#module-iqitwishlist-view .my-account-page-content h2 {
    font-size: 0 !important;
}

body#module-iqitwishlist-view .my-account-page-content h1::before,
body#module-iqitwishlist-view .my-account-page-content h2::before {
    content: "Mis favoritos";
    font-size: 32px !important;
    font-weight: 900 !important;
    color: #111 !important;
}

body#module-iqitwishlist-view #iqitwishlist .link-item {
    font-size: 0 !important;
}

body#module-iqitwishlist-view #iqitwishlist .link-item::after {
    content: "Mis favoritos";
    font-size: 15px !important;
    font-weight: 800 !important;
}

body#module-iqitwishlist-view .my-account-page-content h3,
body#module-iqitwishlist-view .my-account-page-content .h3 {
    font-size: 0 !important;
}

body#module-iqitwishlist-view .my-account-page-content h3::before,
body#module-iqitwishlist-view .my-account-page-content .h3::before {
    content: "Compartir favoritos";
    font-size: 26px !important;
    font-weight: 900 !important;
    color: #111 !important;
}

/* Botón copiar */
#iqitwishlist-clipboard-btn {
    min-width: 150px !important;
    height: 52px !important;
    padding: 0 20px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #f39200, #eb6d00) !important;
    border: none !important;
    color: transparent !important;
    font-size: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#iqitwishlist-clipboard-btn::before {
    content: "Copiar enlace";
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 900 !important;
}

/* MÓVIL */
@media (max-width: 768px) {
    .my-account-page-content-wrapper {
        padding: 16px !important;
    }

    .my-account-page-content-wrapper > .row {
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
    }

    .my-account-side-links,
    .my-account-page-content {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
    }

    .my-account-page-content {
        padding: 20px !important;
    }

    #iqitwishlist-clipboard-btn {
        width: 100% !important;
    }
}

/* =========================================================
   MY WISHLIST -> MIS FAVORITOS EN TODO MI CUENTA
   ========================================================= */

.my-account-side-links #iqitwishlist .link-item {
    color: transparent !important;
    font-size: 0 !important;
    position: relative !important;
}

.my-account-side-links #iqitwishlist .link-item i {
    color: #f39200 !important;
    font-size: 18px !important;
}

.my-account-side-links #iqitwishlist .link-item::after {
    content: "Mis favoritos" !important;
    color: #222 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    margin-left: 12px !important;
}

/* Si está activo */
body#module-iqitwishlist-view .my-account-side-links #iqitwishlist .link-item::after {
    color: #fff !important;
}

body#module-iqitwishlist-view .my-account-side-links #iqitwishlist .link-item i {
    color: #fff !important;
}

/* =========================================================
   TEXTO DASHBOARD MI CUENTA - TRADUCCIÓN
   ========================================================= */

body#my-account .my-account-page-content {
    font-size: 0 !important;
    position: relative !important;
}

body#my-account .my-account-page-content::before {

    content: "Bienvenido a tu cuenta. Desde aquí puedes gestionar tus datos personales, direcciones, pedidos y favoritos.";

    display: block !important;

    font-size: 17px !important;
    line-height: 1.6 !important;

    color: #666 !important;

    background: #fff !important;

    border: 1px solid #ececec !important;

    border-radius: 18px !important;

    padding: 24px !important;
}

/* =========================================================
   TOOLTIP FAVORITOS Y COMPARAR - TRADUCCIÓN
   ========================================================= */

/* Add to wishlist */
.iqitwishlist-product-btn[data-original-title="Add to wishlist"]::after,
[data-original-title="Add to wishlist"]::after {
    content: "Añadir a favoritos" !important;
}

/* Add to compare */
.iqitcompare-product-btn[data-original-title="Add to compare"]::after,
[data-original-title="Add to compare"]::after {
    content: "Comparar" !important;
}

/* Oculta texto original tooltip bootstrap */
.tooltip-inner {
    font-size: 0 !important;
}

/* Wishlist tooltip */
.tooltip.show .tooltip-inner::before {
    content: "Añadir a favoritos";
    font-size: 13px !important;
    color: #fff !important;
    font-weight: 700 !important;
}

/* Compare tooltip */
.iqitcompare-product-btn:hover + .tooltip .tooltip-inner::before {
    content: "Comparar";
}

/* =========================================================
   NOTIFICACIÓN IQIT WISHLIST - TRADUCCIÓN REAL
   ========================================================= */

#iqitwishlist-notification strong {
    font-size: 0 !important;
}

#iqitwishlist-notification strong::after {
    content: "Producto añadido a favoritos";
    font-size: 17px !important;
    color: #fff !important;
    font-weight: 900 !important;
}

/* =========================================================
   RESUMIR TEXTOS PROVINCIAS
   ========================================================= */
/* =========================================================
   SEO TEXTO COLAPSADO - FIX ELEMENTOR
   ========================================================= */

.ay-seo-expand {
    position: relative !important;
    max-height: 720px !important;
    overflow: hidden !important;
    transition: max-height .45s ease !important;
}

/* ABIERTO */
.ay-seo-expand.ay-open {
    max-height: none !important;
    overflow: visible !important;
}

/* DEGRADADO FIJO ABAJO */
.ay-seo-expand::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 180px !important;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 85%) !important;
    pointer-events: none !important;
    z-index: 5 !important;
}

/* AL ABRIR QUITAR DEGRADADO */
.ay-seo-expand.ay-open::after {
    display: none !important;
}

/* BOTÓN SIEMPRE VISIBLE */
.ay-seo-btn {
    position: absolute !important;
    left: 50% !important;
    bottom: 18px !important;
    transform: translateX(-50%) !important;
    z-index: 10 !important;

    padding: 14px 34px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #f39200 !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

/* BOTÓN ABIERTO */
.ay-seo-expand.ay-open .ay-seo-btn {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    margin: 25px auto 10px !important;
    display: flex !important;
}

/* Oculta el div fade manual si lo tienes */
.ay-seo-fade {
    display: none !important;
}

@media (max-width: 768px) {
    .ay-seo-expand {
        max-height: 620px !important;
    }
}

/* =========================================================
   DESCRIPCIONES CATEGORIAS VER MAS
   ========================================================= */

.category-description-top .rte-content {
    position: relative;
}

.category-description-top .rte-content.ay-cat-desc-collapsed {
    max-height: 135px;
    overflow: hidden;
}

.category-description-top .rte-content.ay-cat-desc-collapsed::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 70px;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
    pointer-events: none;
}

.category-description-top .rte-content.ay-cat-desc-open {
    max-height: none !important;
    overflow: visible !important;
}

.category-description-top .rte-content.ay-cat-desc-open::after {
    display: none !important;
}

/* Botón discreto */
.ay-cat-desc-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    padding: 0;
    background: transparent;
    border: none;
    color: #f39200;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.ay-cat-desc-btn:hover {
    color: #e66900;
}

.ay-cat-desc-btn::after {
    content: "↓";
    font-size: 12px;
}

.rte-content.ay-cat-desc-open + .ay-cat-desc-btn::after {
    transform: rotate(180deg);
}

/* =========================================================
   LOGIN HEADER OFUSCADO
   ========================================================= */

.ay-obfuscated-login {
    cursor: pointer;
    color: #fff;
    transition: .2s ease;
}

.ay-obfuscated-login .title,
.ay-obfuscated-login i {
    color: #fff;
    transition: .2s ease;
}

.ay-obfuscated-login:hover .title,
.ay-obfuscated-login:hover i {
    color: #f39200;
}

/* =========================================================
   FOOTER OFUSCADO
   ========================================================= */

.ay-footer-obfuscated{
    cursor:pointer;
}

/* =========================================================
   BREADCRUMBS MOBILE EN 1 LINEA SCROLL
   ========================================================= */

@media (max-width: 768px) {

  .breadcrumb {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    gap: 6px;
    padding-bottom: 4px;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .breadcrumb::-webkit-scrollbar {
    display: none;
  }

  .breadcrumb ol,
  .breadcrumb ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    margin: 0;
    padding: 0;
  }

  .breadcrumb li {
    white-space: nowrap !important;
    flex-shrink: 0;
  }

  .breadcrumb a,
  .breadcrumb span {
    white-space: nowrap !important;
    font-size: 12px;
  }

}

/* =========================================================
   STICKY ADD TO CART SIEMPRE VISIBLE EN MÓVIL
   ========================================================= */

@media (max-width: 768px) {

  .ay-mobile-sticky-product-bar {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    pointer-events: auto !important;
  }

  .ay-mobile-sticky-product-bar.is-visible {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
  }

}

/* =========================================================
   MARCAS HOME MÓVIL TIPO SLIDER HORIZONTAL
   ========================================================= */

@media (max-width: 768px) {

  .marcas-home-mobile .elementor-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 18px !important;
    padding: 10px 15px 16px !important;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .marcas-home-mobile .elementor-row::-webkit-scrollbar {
    display: none;
  }

  .marcas-home-mobile .elementor-column {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 120px !important;
    max-width: 140px !important;
    scroll-snap-align: center;
  }

  .marcas-home-mobile .elementor-column-wrap {
    width: 100% !important;
  }

  .marcas-home-mobile .elementor-widget-image {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .marcas-home-mobile img {
    max-width: 110px !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

}