/* custom.css */

:root {
  --theme-color-default: #ff9900;
}




/* ----- BUSCADOR PRINCIPAL ----- */
#sa_form i {
  right: -13%;
}




/* ----- MENÚ PRINCIPAL ----- */
.mega__menu .verticalmenu .navbar-nav > li .dropdown-menu {
  height: 100% !important;
}

div.verticalmenu .dropdown-menu ul li a {
  font-size: inherit;
  font-weight: inherit;
  padding-top: 15px;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 30px;
}

.mega__menu .verticalmenu .navbar-nav > li .dropdown-menu .dropdown-menu-inner {
  border-left: 1px solid #ff9901;
}

.leo-megamenu .navbar-nav > li > a,
.leo-verticalmenu .title_block {
  font-size: 18px;
  line-height: 28px;
  text-transform: uppercase;
}

/* Ocultar el panel derecho del megamenú */
.leo-megamenu .dropdown-sub,
.leo-megamenu .dropdown-menu-inner,
.leo-megamenu .dropdown-mega-menu {
    display: none !important;
}

/* Mantener solo las categorías principales */
.leo-megamenu > li > a {
    pointer-events: auto;
}

/* Desactivar el hover del submenú */
.leo-megamenu li:hover .dropdown-sub {
    display: none !important;
}

.leo-verticalmenu > .block_content {
  width: auto;
}




/* ----- Resultados de la búsqueda ----- */
#ajax-results .row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
}
#ajax-results .ajax_block_product {
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 30px;
}
.row > #resBus {
  padding-left: 15px;
  padding-right: 15px;
}




/* ----- Forzar cantidad fija a 1 en todo el front ----- */
#product .qty,
#cart .qty {
  display: none !important;
}




/* ----- Tarjetas de los carruseles ----- */
/* Igual que en search_ajax */
.sa-card .mpn_cont p { font-size: .85em; color: #000; line-height: 1.2; }

/* Opcional: apariencia de tarjeta (si quieres el mismo look de caja) */
.sa-card {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  box-shadow: 0 2px 4px rgba(0,0,0,.04);
  border-radius: 10px;
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.sa-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 14px rgba(0,0,0,.08);
  border-color: #d5d5d5;
}
.mini-imagen img {
  border-radius: 10px;
}
.mpn_cont {
  margin-bottom: 5px;
}
.product-price-and-shipping {
  position: static !important;
  margin: 15px 0 10px 0 !important;
  padding: 0 10px;
}
.product__tabs .slick-list {
  border: none;
}

/* 1) La tarjeta y el artículo ocupan toda la altura disponible */
.sa-card { height: 100%; }
.sa-card .product-miniature { 
  height: 100%;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

/* 2) Imagen con altura uniforme */
.sa-card .mini-imagen {
  height: 165px;           /* ajusta si usas otro alto en el mini-grid AJAX */
  overflow: hidden;
  border-radius: 10px;
}
.sa-card .mini-imagen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
  display: block;
}

/* 3) Zona de texto ocupa el espacio flexible */
.sa-card .product-description {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

/* 4) Normaliza alturas de título y descripción (clamp) */
.sa-card .product-title-s a {
  display: -webkit-box;
  -webkit-line-clamp: 2;    /* 2 líneas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.sa-card .product-description-short-s a {
  display: -webkit-box;
  -webkit-line-clamp: 2;    /* 2 líneas */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Si prefieres alturas fijas exactas, descomenta:
.sa-card .product-title-s { height: 3.5rem; overflow: hidden; }
.sa-card .product-description-short-s { height: 2rem; overflow: hidden; }
*/

/* 5) Empuja precios/CTA al fondo de la tarjeta */
.sa-card .product-miniature-right,
.sa-card .mini-bloque-precio {
  margin-top: auto;
}

/* 6) Opcional: altura mínima común para todas las tarjetas (ajusta a tu diseño) */
.sa-card { min-height: 430px; } 




/* ----- PÁGINA DE CATEGORÍAS ----- */
.block-categories {
 background-color: #f90 !important;
  /*border: 1px solid #f90;*/
}

.sidebar .block .title_block {
  color: #000;
}

.block-categories .category-sub-menu li > a {
  color: #fff;
}

.block-categories .category-sub-menu li > a:hover {
  color: #000;
}

#category .col-12 {
  width: 100%;
}

#category .col.col-auto.product-miniature-right {
  width: 100%;
}

#category .ajax_block_product {
  margin-bottom: 30px;
}




/* ----- TARJETAS DE PRODUCTOS ----- */
.product-price-and-shipping {
  width: 100%;
}




/* ----- PÁGINA DE PRODUCTO ----- */
#category-products2, #category-products {
  border: none;
}

#product .sa-card {
  margin-right: 15px;
}

/* Forzar nueva línea */
.product-prices .whatsapp-wrapper {
  flex: 0 0 100%;   /* rompe línea en flexbox */
  width: 100%;
  margin-top: 30px;
}

/* Icono circular grande */
.icon-whatsapp {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background-color: #25D366;  /* color oficial WhatsApp */
  color: #fff !important;
  font-size: 30px;
  text-decoration: none;
}

.icon-whatsapp:hover {
  background-color: #1ebe5b;
}

#product .vehiculo-origen {
  margin-top: 30px;
}

#product .vehiculo-nombre {
font-size: 24px;
}





/* ----- PÁGINA DE MARCAS ----- */
#manufacturer .product-title-s {
  height: 50px !important;
}

#manufacturer .col-12 {
  width: 100%;
}

#manufacturer .col.col-auto.product-miniature-right {
 width: 100%;
}

#manufacturer .ajax_block_product {
  margin-bottom: 30px;
}






/* === SEARCH_AJAX: centrar botón "Consultar" sin ocupar todo el ancho === */
.loading {
  top: 200px;
  width: 15%;
  z-index: 999999;
  color: #ffffff;
}

.vermas {
  background: #ff9900;
  color: #fff;
  border-radius: 5px;
}

/* 1) Asegura que el contenedor alinee al centro SOLO cuando exista "Consultar" */
.product-miniature-right:has(.show_consultar),
.product-miniature-right:has(.consult_title_search) {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* 2) No forzar ancho completo de los wrappers cuando es "Consultar" */
.product-miniature-right:has(.show_consultar) .product-price-and-shipping,
.product-miniature-right:has(.show_consultar) .product-add-cart,
.product-miniature-right:has(.show_consultar) .input-group-add-cart,
.product-miniature-right:has(.consult_title_search) .product-price-and-shipping,
.product-miniature-right:has(.consult_title_search) .product-add-cart,
.product-miniature-right:has(.consult_title_search) .input-group-add-cart {
  width: auto;               /* <-- clave: NO 100% */
  display: flex;
  justify-content: center;   /* centra el contenido */
}

/* 3) El propio botón "Consultar": tamaño en función del contenido y texto centrado */
.btn-product-list.show_consultar,
.btn-product-list-CAMPA.show_consultar,
.show_consultar {
  display: inline-flex !important; /* evita block */
  align-items: center;
  justify-content: center;
  width: auto !important;          /* <-- clave: NO 100% */
  min-width: 0;
  margin: 0 auto;                  /* fallback de centrado */
  text-align: center;              /* centra el texto interno */
  padding-left: 14px;              /* opcional, estética */
  padding-right: 14px;             /* opcional, estética */
}

/* 4) Por si alguna regla del tema fuerza 100% a todos los .btn-product-list */
.product-miniature-right .btn-product-list.show_consultar,
.product-miniature-right .btn-product-list-CAMPA.show_consultar {
  width: auto !important;
}
