/* Anaia Repuestos — Buscador por vehículo + compatibilidad
   Desarrollado por Mercado Inteligente CX - https://mercadointeligente.net/ */

:root{
  /* Paleta Anaia: petróleo, blanco, y negro con cuentagotas. */
  --micx-azul:#26718f;
  --micx-azul-claro:#2f89ad;
  --micx-azul-oscuro:#1b5268;
  --micx-azul-rgb:38,113,143;
  --micx-negro:#111111;
  --micx-gris:#f4f7f9;
  /* Acento de las herramientas: gris acero. Se distingue del petróleo de
     las autopartes de un vistazo sin salirse de la paleta de la tienda. */
  --micx-herr:#3b4650;
  --micx-herr-claro:#4e5b66;
  --micx-herr-rgb:59,70,80;
  --micx-ring:2px;
}

/* Color de acento según el rubro de la página. Las reglas de más abajo
   usan --micx-acento y quedan servidas para los dos casos. */
body{ --micx-acento:var(--micx-azul); --micx-acento-rgb:38,113,143; }
body.micx-rubro-herramientas{ --micx-acento:var(--micx-herr); --micx-acento-rgb:59,70,80; }

/* ------------------------------------------------------------------ *
 * 1. BUSCADOR AVANZADO + TOGGLE
 * ------------------------------------------------------------------ */
.micx-buscador{ padding:30px 0 10px; }
.micx-buscador *{ box-sizing:border-box; }

.micx-tabs{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.micx-tabs-label{ font-weight:700; font-size:15px; margin-right:4px; color:var(--micx-negro); }
.micx-tab{
  -webkit-appearance:none; appearance:none;
  font-family:inherit; font-weight:700; font-size:14px; line-height:1;
  padding:11px 28px; border-radius:6px; cursor:pointer;
  border:2px solid var(--micx-azul); background:#fff; color:var(--micx-azul);
  transition:background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.micx-tab:hover{ box-shadow:0 0 0 3px rgba(var(--micx-azul-rgb),.15); }
.micx-tab.is-active{ background:var(--micx-azul); border-color:var(--micx-azul); color:#fff; }

.micx-panel{
  display:grid; grid-template-columns:210px 1fr;
  border-radius:12px; overflow:hidden;
  background:var(--micx-gris); border:1px solid #e3e6ec;
}
.micx-panel-titulo{
  background:var(--micx-azul); color:#fff;
  display:flex; flex-direction:column; justify-content:center;
  padding:24px 22px; font-size:26px; line-height:1.03; font-weight:800; letter-spacing:-.6px;
}
.micx-form{ padding:20px 22px; }
.micx-campos{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) auto; gap:12px; align-items:end; }
.micx-campo{ display:flex; flex-direction:column; gap:7px; min-width:0; }
.micx-campo > span{ color:var(--micx-negro); font-size:13px; font-weight:700; }
.micx-campo select,
.micx-campo input{
  height:44px; width:100%; padding:0 11px;
  font-family:inherit; font-size:14px; color:var(--micx-negro);
  background:#fff; border:1px solid #ccd2dd; border-radius:6px;
}
.micx-campo select{ cursor:pointer; }
.micx-campo select:focus,
.micx-campo input:focus{ outline:2px solid var(--micx-azul); outline-offset:0; border-color:var(--micx-azul); }
.micx-buscar{
  height:44px; padding:0 30px; border:0; border-radius:6px; cursor:pointer;
  background:var(--micx-azul); color:#fff;
  font-family:inherit; font-weight:800; font-size:15px; white-space:nowrap;
  transition:background-color .2s ease, box-shadow .2s ease;
}
.micx-buscar:hover{ background:var(--micx-azul-claro); box-shadow:0 6px 18px rgba(var(--micx-azul-rgb),.3); }
.micx-buscar[disabled]{ opacity:.65; cursor:progress; }

@media (max-width:1199px){ .micx-campos{ grid-template-columns:repeat(2,minmax(0,1fr)); } .micx-buscar{ grid-column:1/-1; } }
@media (max-width:767px){
  .micx-buscador{ padding:22px 0 6px; }
  .micx-panel{ grid-template-columns:1fr; }
  .micx-panel-titulo{ flex-direction:row; gap:8px; padding:15px 18px; font-size:19px; }
  .micx-form{ padding:16px 18px; }
}

/* ------------------------------------------------------------------ *
 * 2. BARRA "MI VEHÍCULO"
 * ------------------------------------------------------------------ */
.micx-barra-veh{ background:var(--micx-azul); color:#fff; font-size:14px; }
.micx-barra-veh *{ box-sizing:border-box; }
.micx-barra-inner{
  display:flex; align-items:center; gap:10px 16px; flex-wrap:wrap;
  padding:11px 15px; min-height:46px;
}
.micx-barra-txt{ display:flex; align-items:center; gap:7px; margin-right:auto; }
.micx-barra-txt strong{ color:#fff; font-weight:800; }
.micx-barra-veh svg{ width:17px; height:17px; flex:0 0 auto; fill:#fff; }
.micx-barra-link{
  -webkit-appearance:none; appearance:none; border:0; background:none; cursor:pointer;
  font-family:inherit; font-size:13px; font-weight:700; color:#fff;
  text-decoration:underline; padding:4px 2px; white-space:nowrap;
}
.micx-barra-link:hover{ opacity:.8; }
.micx-barra-link.is-cta{
  text-decoration:none; background:#fff; color:var(--micx-azul);
  border-radius:6px; padding:8px 16px;
}
.micx-barra-link.is-cta:hover{ opacity:1; background:#eef1f7; }
.micx-barra-x{
  -webkit-appearance:none; appearance:none; border:0; cursor:pointer;
  background:rgba(255,255,255,.16); color:#fff; border-radius:50%;
  width:26px; height:26px; font-size:17px; line-height:1; flex:0 0 auto;
}
.micx-barra-x:hover{ background:rgba(255,255,255,.3); }

.micx-barra-form{ display:none; width:100%; gap:10px; flex-wrap:wrap; align-items:flex-end; }
.micx-barra-veh.is-editando .micx-barra-form{ display:flex; }
.micx-barra-veh.is-editando .micx-barra-txt,
.micx-barra-veh.is-editando .micx-barra-acciones{ display:none; }
.micx-barra-acciones{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.micx-barra-campo{ display:flex; flex-direction:column; gap:4px; }
.micx-barra-campo span{ font-size:11px; font-weight:700; color:rgba(255,255,255,.75); }
.micx-barra-campo input, .micx-barra-campo select{
  height:36px; border:1px solid #ccd2dd; border-radius:6px; padding:0 9px;
  font-family:inherit; font-size:13px; background:#fff; color:var(--micx-negro); min-width:110px;
}
@media (max-width:767px){
  .micx-barra-txt{ width:100%; margin-right:0; }
  .micx-barra-campo{ flex:1 1 100px; }
  .micx-barra-campo input, .micx-barra-campo select{ min-width:0; width:100%; }
}

/* ------------------------------------------------------------------ *
 * 3. FICHA DEL PRODUCTO
 * ------------------------------------------------------------------ */
.micx-ficha{
  position:relative; margin:0 0 24px; padding:20px 22px 18px;
  background:linear-gradient(180deg,#fcfcfd 0%,#f5f6f8 100%);
  border:1px solid #e3e6ec; border-radius:12px; overflow:hidden;
  transition:border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.micx-ficha:hover{
  border-color:var(--micx-azul);
  box-shadow:0 10px 28px rgba(var(--micx-azul-rgb),.12);
  transform:translateY(-2px);
}
.micx-ficha::before{
  content:''; position:absolute; top:0; left:0; right:0; height:4px;
  background:var(--micx-azul);
}
.micx-ficha::after{
  content:''; position:absolute; top:0; left:-40%; width:40%; height:4px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
  animation:micx-destello 5s ease-in-out 1.2s infinite;
}
@keyframes micx-destello{
  0%   { left:-40% }
  55%  { left:100% }
  100% { left:100% }
}

.micx-ficha-titulo{
  display:flex; align-items:center; gap:9px;
  font-size:13px; font-weight:800; letter-spacing:.11em; text-transform:uppercase;
  color:var(--micx-azul); margin:0 0 16px;
}
.micx-ficha-titulo svg{ width:19px; height:19px; fill:var(--micx-azul); flex:0 0 auto; }

.micx-chips{ display:flex; flex-wrap:wrap; gap:9px; margin:0 0 16px; }
.micx-chip{
  display:inline-flex; align-items:center; gap:7px;
  padding:8px 14px; border-radius:99px;
  background:#fff; border:1.5px solid #dfe3ea;
  font-size:13.5px; font-weight:600; color:var(--micx-negro); line-height:1.2;
  transition:border-color .2s ease, background-color .2s ease, transform .2s ease;
}
.micx-chip svg{ width:15px; height:15px; fill:#8b93a3; flex:0 0 auto; transition:fill .2s ease; }
.micx-chip:hover{ border-color:var(--micx-azul); background:#f2f5fc; transform:translateY(-2px); }
.micx-chip:hover svg{ fill:var(--micx-azul); }
.micx-chip b{ font-weight:800; }

.micx-ficha-resumen{ font-size:14.5px; line-height:1.6; margin:0 0 16px; color:#333; }

.micx-ficha-tabla{ width:100%; border-collapse:collapse; font-size:14px; margin:0 0 16px; }
.micx-ficha-tabla th, .micx-ficha-tabla td{
  text-align:left; padding:9px 12px; border-bottom:1px solid #e7eaf0; vertical-align:top;
}
.micx-ficha-tabla th{ width:38%; font-weight:700; color:#5c6270; }
.micx-ficha-tabla tr:last-child th, .micx-ficha-tabla tr:last-child td{ border-bottom:0; }

.micx-ventajas{
  list-style:none; margin:0; padding:15px 0 0; border-top:1px solid #e3e6ec;
  display:flex; flex-wrap:wrap; gap:9px 22px;
}
.micx-ventajas li{ display:flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; color:#3a3a3a; }
.micx-ventajas svg{
  width:17px; height:17px; flex:0 0 auto; fill:#fff;
  background:var(--micx-azul); border-radius:50%; padding:3px;
}
.micx-ficha-nota{ font-size:11.5px; color:#9aa0ac; margin:14px 0 0; line-height:1.45; }

/* Entrada animada. Se usa `transition` y no `animation`: el estado final lo
   define .is-visible, así que si el navegador no anima, igual se ve. */
.micx-anim{
  opacity:0; transform:translateY(14px);
  transition:opacity .5s ease, transform .5s cubic-bezier(.2,.7,.3,1);
}
.micx-anim.is-visible{ opacity:1; transform:none; }
.micx-anim .micx-chip{
  opacity:0; transform:translateY(8px);
  transition:opacity .4s ease, transform .4s ease, border-color .2s ease, background-color .2s ease;
}
.micx-anim.is-visible .micx-chip{ opacity:1; transform:none; }
.micx-anim.is-visible .micx-chip:nth-child(1){ transition-delay:.14s }
.micx-anim.is-visible .micx-chip:nth-child(2){ transition-delay:.22s }
.micx-anim.is-visible .micx-chip:nth-child(3){ transition-delay:.30s }
.micx-anim.is-visible .micx-chip:nth-child(4){ transition-delay:.38s }
.micx-anim.is-visible .micx-chip:nth-child(5){ transition-delay:.46s }
.micx-anim.is-visible .micx-chip:hover{ transition-delay:0s; transform:translateY(-2px); }

@media (max-width:575px){
  .micx-ficha{ padding:18px 16px 16px; }
  .micx-ventajas{ flex-direction:column; gap:10px; }
}

/* ------------------------------------------------------------------ *
 * 4. WHATSAPP Y AVISO DE COMPATIBILIDAD
 * ------------------------------------------------------------------ */
.micx-wa-btn{
  display:flex; align-items:center; justify-content:center; gap:9px;
  width:100%; margin-top:10px; padding:13px 18px; border-radius:6px;
  background:#fff; color:#128c7e !important; border:2px solid #128c7e;
  font-weight:700; font-size:15px; text-decoration:none !important;
  transition:background-color .2s ease, color .2s ease;
}
.micx-wa-btn svg{ width:20px; height:20px; fill:currentColor; flex:0 0 auto; }
.micx-wa-btn:hover{ background:#128c7e; color:#fff !important; }

.micx-compat{
  display:flex; gap:10px; align-items:flex-start;
  margin:14px 0 0; padding:12px 14px; border-radius:8px;
  font-size:13.5px; line-height:1.45;
}
.micx-compat svg{ width:18px; height:18px; flex:0 0 auto; margin-top:1px; fill:currentColor; }
.micx-compat.is-ok{ background:#eaf7ee; color:#1c6b34; border:1px solid #bfe3c9; }
.micx-compat.is-ojo{ background:#fff6e0; color:#7a5300; border:1px solid #ffd980; }
.micx-compat a{ color:inherit; font-weight:700; text-decoration:underline; }

/* ------------------------------------------------------------------ *
 * 5. RESCATE DE BÚSQUEDA
 * ------------------------------------------------------------------ */
.micx-nota-busq{
  display:flex; gap:10px; align-items:flex-start;
  margin:0 0 18px; padding:13px 16px; border-radius:8px;
  background:#eef2fb; border:1px solid #c3d0ea; color:var(--micx-azul);
  font-size:14px; line-height:1.5;
}
.micx-nota-busq svg{ width:19px; height:19px; flex:0 0 auto; margin-top:1px; fill:currentColor; }
.micx-nota-busq .micx-nota-cta{ display:block; margin-top:6px; font-size:13px; }
.micx-nota-busq .micx-nota-cta a{ color:inherit; font-weight:700; text-decoration:underline; }
.micx-buscando{
  margin:0 0 18px; padding:13px 16px; border-radius:8px;
  background:#f3f4f7; color:#555; font-size:14px;
}

/* ------------------------------------------------------------------ *
 * 6. FILTRO DE RELEVANCIA EN LOS RESULTADOS
 * ------------------------------------------------------------------ */
.micx-filtro{
  margin:0 0 20px; padding:15px 18px; border-radius:12px;
  background:linear-gradient(180deg,#fcfcfd 0%,#f5f6f8 100%);
  border:1px solid #e3e6ec; border-left:4px solid var(--micx-azul);
}
.micx-filtro *{ box-sizing:border-box; }
.micx-filtro-head{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.micx-filtro-n{
  display:flex; align-items:center; justify-content:center; flex:0 0 auto;
  min-width:44px; height:44px; padding:0 10px; border-radius:9px;
  background:var(--micx-azul); color:#fff; font-size:20px; font-weight:800;
}
/* `display` gana contra el [hidden] del navegador: hay que decirlo acá. */
.micx-filtro-n[hidden], .micx-filtro-extra[hidden]{ display:none; }
.micx-filtro-txt{ display:flex; flex-direction:column; gap:7px; margin-right:auto; min-width:0; }
.micx-filtro-txt strong{ font-size:15.5px; font-weight:800; color:var(--micx-negro); }
.micx-filtro-crit{ display:flex; flex-wrap:wrap; gap:7px; }
.micx-crit{
  display:inline-flex; align-items:center; gap:6px;
  padding:5px 11px; border-radius:99px; background:#fff; border:1.5px solid #dfe3ea;
  font-size:12.5px; font-weight:700; color:var(--micx-azul); line-height:1.2;
}
.micx-crit svg{ width:13px; height:13px; fill:var(--micx-azul); flex:0 0 auto; }
.micx-filtro-off{
  -webkit-appearance:none; appearance:none; border:0; background:none; cursor:pointer;
  font-family:inherit; font-size:13px; font-weight:700; color:var(--micx-azul);
  text-decoration:underline; padding:4px 2px; white-space:nowrap;
}
.micx-filtro-off:hover{ opacity:.75; }

.micx-filtro-extra{ margin-top:14px; padding-top:14px; border-top:1px solid #e3e6ec; }
.micx-filtro-cargando{ font-size:13.5px; color:#5c6270; }
.micx-filtro-mas{
  -webkit-appearance:none; appearance:none; cursor:pointer; font-family:inherit;
  padding:10px 18px; border-radius:6px; font-size:13.5px; font-weight:700;
  background:#fff; color:var(--micx-azul); border:2px solid var(--micx-azul);
  transition:background-color .2s ease, color .2s ease;
}
.micx-filtro-mas:hover{ background:var(--micx-azul); color:#fff; }

.micx-xtitulo{
  display:flex; align-items:center; gap:8px; margin:0 0 12px;
  font-size:13px; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  color:var(--micx-azul);
}
.micx-xtitulo svg{ width:17px; height:17px; fill:var(--micx-azul); flex:0 0 auto; }
.micx-xgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:14px; }
.micx-xcard{
  display:flex; flex-direction:column; gap:5px; padding:11px;
  background:#fff; border:1px solid #e3e6ec; border-radius:10px;
  text-decoration:none !important; color:var(--micx-negro) !important;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.micx-xcard:hover{ border-color:var(--micx-azul); box-shadow:0 8px 22px rgba(var(--micx-azul-rgb),.14); transform:translateY(-2px); }
.micx-xcard-img{ display:block; aspect-ratio:1/1; overflow:hidden; border-radius:6px; }
.micx-xcard-img img{ width:100%; height:100%; object-fit:contain; display:block; }
.micx-xcard-nombre{ font-size:13px; line-height:1.35; font-weight:600; }
.micx-xcard-antes{ font-size:12px; color:#9aa0ac; text-decoration:line-through; }
.micx-xcard-precio{ font-size:15px; font-weight:800; color:var(--micx-azul); }

/* Separadores dentro del grid del tema. Ocupan la fila entera. */
.micx-grupo{ grid-column:1/-1; margin:14px 0 2px; }
.micx-grupo-btn{
  -webkit-appearance:none; appearance:none; cursor:pointer; font-family:inherit;
  display:flex; align-items:center; gap:11px; width:100%; text-align:left;
  padding:11px 15px; border-radius:9px;
  background:var(--micx-gris); border:1px solid #e3e6ec; color:var(--micx-negro);
  transition:border-color .2s ease, background-color .2s ease;
}
.micx-grupo-btn:hover{ border-color:var(--micx-azul); background:#eef2fb; }
.micx-grupo-txt{ font-size:14px; font-weight:800; margin-right:auto; }
.micx-grupo-n{
  flex:0 0 auto; padding:3px 10px; border-radius:99px;
  background:#fff; border:1px solid #dfe3ea;
  font-size:12px; font-weight:800; color:#5c6270;
}
.micx-grupo-chev{
  flex:0 0 auto; width:9px; height:9px; border-right:2px solid var(--micx-azul);
  border-bottom:2px solid var(--micx-azul); transform:rotate(45deg) translate(-2px,-2px);
  transition:transform .25s ease;
}
.micx-grupo.is-abierto .micx-grupo-chev{ transform:rotate(-135deg) translate(-2px,-2px); }
.micx-oculto{ display:none !important; }

@media (max-width:575px){
  .micx-filtro-head{ gap:10px; }
  .micx-filtro-off{ width:100%; text-align:left; }
}

/* ------------------------------------------------------------------ *
 * 7. RECUADRO AZUL AL PASAR EL MOUSE POR UNA PUBLICACIÓN
 *    Se usa `outline` con offset negativo: se dibuja por dentro, así que
 *    no lo recorta el overflow de los carruseles ni mueve el layout.
 * ------------------------------------------------------------------ */
.js-item-product .product-item-image-container{
  /* mismo color con alpha 0: al animar interpola azul -> azul y nunca
     aparece un destello gris en el primer cuadro */
  outline:var(--micx-ring) solid rgba(var(--micx-acento-rgb),0);
  outline-offset:calc(var(--micx-ring) * -1);
  border-radius:8px; overflow:hidden;
  transition:outline-color .22s ease, box-shadow .22s ease;
}
.js-item-product{ transition:transform .25s cubic-bezier(.2,.7,.3,1); }
.js-item-product:hover{ transform:translateY(-4px); }
.js-item-product:hover .product-item-image-container{
  outline-color:var(--micx-acento);
  box-shadow:0 0 0 1px rgba(var(--micx-acento-rgb),.15), 0 10px 26px rgba(var(--micx-acento-rgb),.22);
}
.js-item-product .js-item-name{ transition:color .2s ease; }
.js-item-product:hover .js-item-name{ color:var(--micx-acento); }

/* ------------------------------------------------------------------ *
 * 8. MARCO DE LA DESCRIPCIÓN
 * ------------------------------------------------------------------ */
/* La clase se agrega por JS después de cargar, así que el borde arranca
   en `currentColor` (azul). Por eso NO se anima `border-color`: si no,
   se ve un parpadeo azul -> gris cada vez que se abre una publicación.
   Lo que se anima es la sombra, que arranca en nada y no parpadea. */
.micx-desc{
  position:relative; padding:22px 24px 18px; border-radius:12px;
  background:linear-gradient(180deg,#fcfcfd 0%,#f7f8fa 100%);
  border:1px solid #e3e6ec; overflow:hidden;
  transition:box-shadow .25s ease;
}
.micx-desc::before{
  content:''; position:absolute; top:0; left:0; right:0; height:4px;
  background:var(--micx-acento);
}
.micx-desc:hover{
  border-color:var(--micx-acento);
  box-shadow:0 0 0 1px var(--micx-acento), 0 10px 28px rgba(var(--micx-acento-rgb),.12);
}
.micx-desc-titulo{
  display:flex; align-items:center; gap:9px;
  font-size:13px; letter-spacing:.11em; text-transform:uppercase;
  color:var(--micx-acento); padding-bottom:12px; margin-bottom:14px;
  border-bottom:1px solid #e3e6ec;
}
.micx-desc-ico{ display:inline-flex; flex:0 0 auto; }
.micx-desc-ico svg{ width:19px; height:19px; fill:var(--micx-acento); }
.micx-desc .user-content{ font-size:14.5px; line-height:1.65; }
/* El separador de guiones que usa el catálogo queda mejor como línea */
.micx-desc .user-content{ overflow-wrap:anywhere; }

@media (max-width:575px){ .micx-desc{ padding:18px 16px 14px; } }

/* ------------------------------------------------------------------ *
 * 9. VARIANTE HERRAMIENTAS
 * ------------------------------------------------------------------ */
.micx-ficha-herr::before{ background:var(--micx-herr); }
.micx-ficha-herr .micx-ficha-titulo{ color:var(--micx-herr); }
.micx-ficha-herr .micx-ficha-titulo svg{ fill:var(--micx-herr); }
.micx-ficha-herr .micx-chip:hover{ border-color:var(--micx-herr); background:#f1f3f6; }
.micx-ficha-herr .micx-chip:hover svg{ fill:var(--micx-herr); }
.micx-ficha-herr .micx-ventajas svg{ background:var(--micx-herr); }
.micx-ficha-herr:hover{ border-color:var(--micx-herr); box-shadow:0 10px 28px rgba(var(--micx-herr-rgb),.14); }
/* La herramienta no tiene compatibilidad que anunciar: sin destello. */
.micx-ficha-herr::after{ display:none; }

/* ------------------------------------------------------------------ *
 * 10. SECCIÓN "ENCONTRÁ EL KIT PARA TU VEHÍCULO"
 *
 * El fondo es `micx-anaia-kits.jpg`, que va en la MISMA carpeta /static/
 * que este archivo (por eso la ruta relativa, sin barra inicial).
 * Detrás quedan declaradas dos capas de respaldo -- una trama de puntos y
 * un degradé petróleo -- así que si la foto todavía no está subida la
 * sección se ve terminada igual, nunca en blanco.
 * ------------------------------------------------------------------ */
.micx-kits{
  position:relative; padding:56px 0; margin:0; overflow:hidden;
  color:var(--micx-negro);
  background-color:#dceaf0;
  background-image:
    url('micx-anaia-kits.jpg'),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1' opacity='.55'%3E%3Cpath d='M20 40 90 15 150 60 90 15 60 110 20 40 60 110 150 60'/%3E%3Cpath d='M210 230 275 200 250 275 210 230 180 285 250 275'/%3E%3C/g%3E%3Cg fill='%23ffffff' opacity='.75'%3E%3Ccircle cx='20' cy='40' r='3'/%3E%3Ccircle cx='90' cy='15' r='3'/%3E%3Ccircle cx='150' cy='60' r='3'/%3E%3Ccircle cx='60' cy='110' r='3'/%3E%3Ccircle cx='210' cy='230' r='3'/%3E%3Ccircle cx='275' cy='200' r='3'/%3E%3Ccircle cx='250' cy='275' r='3'/%3E%3Ccircle cx='180' cy='285' r='3'/%3E%3C/g%3E%3C/svg%3E"),
    linear-gradient(120deg, #eaf3f7 0%, #cfe3ec 55%, #b9d6e3 100%);
  background-size:cover, 300px 300px, auto;
  background-position:center center, center center, center center;
  background-repeat:no-repeat, repeat, no-repeat;
}
/* Velo blanco: la foto tiene mucho detalle y el texto encima no se leía. */
.micx-kits::before{
  content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(100deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.72) 38%, rgba(255,255,255,.28) 100%);
}
.micx-kits > *{ position:relative; z-index:1; }
.micx-kits *{ box-sizing:border-box; }

.micx-kits-inner{
  display:grid; grid-template-columns:minmax(250px,360px) 1fr; gap:36px; align-items:center;
}
/* min-width:0 para que un nombre largo no ensanche la columna del texto. */
.micx-kits-intro{ min-width:0; }

/* "Novedades" del tema, escondida cuando sus productos ya están arriba en
   la sección de kits. No se borra el nodo: vuelve sola apagando la opción. */
.micx-oculto-por-kits{ display:none !important; }
.micx-kicker{
  display:inline-block; font-size:12px; font-weight:800; letter-spacing:.22em;
  text-transform:uppercase; color:var(--micx-azul); margin-bottom:12px;
}
.micx-kits-titulo{
  font-size:37px; line-height:1.04; font-weight:800; letter-spacing:-.8px;
  margin:0 0 14px; color:var(--micx-negro);
}
.micx-kits-titulo strong{ color:var(--micx-azul); font-weight:800; }
.micx-kits-texto{ font-size:15px; line-height:1.6; color:#3f4b52; margin:0 0 24px; }
.micx-btn{
  display:inline-block; padding:14px 34px; border-radius:8px;
  background:var(--micx-azul); color:#fff !important;
  font-weight:800; font-size:15px; text-decoration:none !important;
  transition:background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.micx-btn:hover{
  background:var(--micx-azul-oscuro);
  box-shadow:0 8px 24px rgba(var(--micx-azul-rgb),.4); transform:translateY(-2px);
}

.micx-carrusel{ position:relative; min-width:0; }
.micx-track{
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(220px,1fr);
  gap:18px; overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:x mandatory;
  padding:6px 2px 18px;
  scrollbar-width:thin; scrollbar-color:rgba(var(--micx-azul-rgb),.5) transparent;
}
.micx-track::-webkit-scrollbar{ height:6px; }
.micx-track::-webkit-scrollbar-thumb{ background:rgba(var(--micx-azul-rgb),.45); border-radius:99px; }
.micx-track::-webkit-scrollbar-track{ background:transparent; }

.micx-card{
  scroll-snap-align:start; position:relative; display:flex; flex-direction:column;
  background:#fff; border-radius:12px; overflow:hidden;
  text-decoration:none !important; color:var(--micx-negro) !important;
  box-shadow:0 2px 10px rgba(17,17,17,.08);
  transition:transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease;
}
.micx-card:hover{ transform:translateY(-4px); box-shadow:0 14px 30px rgba(var(--micx-azul-rgb),.28); }
.micx-card-off{
  position:absolute; top:10px; left:10px; z-index:2;
  background:var(--micx-azul); color:#fff;
  font-size:12px; font-weight:800; padding:5px 10px; border-radius:6px;
}
.micx-card-img{ position:relative; display:block; padding-bottom:100%; background:#f4f7f9; }
.micx-card-img img{
  position:absolute; top:0; left:0; width:100%; height:100%; object-fit:contain; padding:10px;
}
.micx-card-body{ display:flex; flex-direction:column; gap:6px; padding:14px 14px 16px; flex:1 1 auto; }
.micx-card-nombre{
  font-size:14px; line-height:1.35; font-weight:600; color:var(--micx-negro);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:2.7em;
}
.micx-card-antes{ font-size:13px; color:#8a949a; text-decoration:line-through; }
.micx-card-precio{ font-size:20px; font-weight:800; color:var(--micx-azul); line-height:1.1; }
.micx-card-cta{
  margin-top:12px; text-align:center; padding:11px 10px; border-radius:7px;
  background:var(--micx-azul); color:#fff;
  font-size:13px; font-weight:800; letter-spacing:.03em; text-transform:uppercase;
}

.micx-nav{
  position:absolute; top:38%; z-index:3; width:42px; height:42px; border-radius:50%;
  border:0; cursor:pointer; background:#fff; color:var(--micx-azul);
  font-size:22px; line-height:1; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 18px rgba(17,17,17,.22); transition:background-color .2s ease, color .2s ease, opacity .2s ease;
}
.micx-nav:hover{ background:var(--micx-azul); color:#fff; }
.micx-nav[disabled]{ opacity:0; pointer-events:none; }
.micx-nav-prev{ left:-14px; }
.micx-nav-next{ right:-14px; }
.micx-hint{ display:none; font-size:12px; color:#5b676e; margin:2px 0 0; }

/* Esqueleto mientras se arma la lista, para que no quede un hueco. */
.micx-skel{ background:#fff; border-radius:12px; overflow:hidden; padding-bottom:14px; }
.micx-skel-img{ padding-bottom:100%; background:#eef3f6; }
.micx-skel-linea{ height:11px; margin:12px 14px 0; border-radius:5px; background:#eef3f6; }
.micx-skel-linea.corta{ width:55%; }
.micx-skel-img, .micx-skel-linea{ animation:micx-latir 1.3s ease-in-out infinite; }
@keyframes micx-latir{ 0%,100%{ opacity:1 } 50%{ opacity:.55 } }

@media (max-width:991px){
  .micx-kits{ padding:40px 0; }
  .micx-kits::before{ background:linear-gradient(180deg, rgba(255,255,255,.93) 0%, rgba(255,255,255,.7) 100%); }
  .micx-kits-inner{ grid-template-columns:1fr; gap:22px; }
  .micx-kits-titulo{ font-size:29px; }
  .micx-track{ grid-auto-columns:minmax(180px,1fr); }
  .micx-nav{ display:none; }
  .micx-hint{ display:block; }
}

/* ------------------------------------------------------------------ *
 * 11. CRÉDITO EN EL PIE
 * ------------------------------------------------------------------ */
.micx-credito{ display:block; margin-top:6px; }
.micx-credito a{ font-weight:700; text-decoration:underline; color:inherit; }
.micx-credito a:hover{ opacity:.75; }

@media (prefers-reduced-motion: reduce){
  .micx-ficha::after{ animation:none; }
  .micx-anim, .micx-anim .micx-chip{
    opacity:1 !important; transform:none !important; transition:none !important;
  }
  .micx-ficha:hover{ transform:none; }
  .js-item-product, .js-item-product:hover,
  .micx-xcard, .micx-xcard:hover{ transform:none; transition:none; }
  .micx-grupo-chev{ transition:none; }
  .micx-card, .micx-card:hover, .micx-btn:hover{ transform:none; transition:none; }
  .micx-skel-img, .micx-skel-linea{ animation:none; }
  .micx-track{ scroll-behavior:auto; }
}
