/**
 * Tienda Mitaller — v4 "LuxAuto"
 * Modo oscuro como base, modo claro como inversión elegante.
 * Acento configurable via --vx-accent (default dorado).
 * ─────────────────────────────────────────────────────────
 * Secciones:
 *   1. Tokens & reset
 *   2. Navbar
 *   3. Hero tipográfico full-bleed
 *   4. Stats bar
 *   5. Colección / carousel horizontal
 *   6. Grid de productos (cards oscuras)
 *   7. Sección split "¿Por qué nosotros?"
 *   8. Cards "Problema / Solución"
 *   9. 3 beneficios
 *  10. CTA final inmersivo
 *  11. Footer
 *  12. Micro-interacciones / utilidades
 *  13. Light mode overrides
 */

/* ══════════════════════════════════════════════════════════
   1. TOKENS & RESET
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller {
  /* Paleta base (dark-first) */
  --lx-bg:          #080809;
  --lx-bg2:         #111114;
  --lx-bg3:         #18181d;
  --lx-sfc:         #1a1a20;
  --lx-sfc2:        #232329;
  --lx-border:      rgba(255,255,255,0.07);
  --lx-border2:     rgba(255,255,255,0.12);
  --lx-txt:         #f5f5f7;
  --lx-txt2:        #9898a0;
  --lx-txt3:        #5e5e68;

  /* Acento — dorado por defecto, sobreescribible por --vx-accent */
  --lx-gold:        var(--vx-accent, #d4a017);
  --lx-gold-fg:     var(--vx-accent-fg, #000);
  --lx-gold-muted:  color-mix(in srgb, var(--lx-gold) 15%, transparent);

  /* Tipografía */
  --lx-font:        "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --lx-head:        "Syne", var(--lx-font);

  /* Espacios — ancho fluido (aprovecha pantallas grandes) */
  --lx-wrap:        min(1760px, 100vw - 24px);
  --lx-px:          clamp(12px, 2.2vw, 36px);

  /* Radios */
  --lx-r:           12px;
  --lx-rl:          20px;
  --lx-pill:        999px;

  /* Sombras */
  --lx-sh:          0 2px 16px rgba(0,0,0,0.55), 0 1px 4px rgba(0,0,0,0.35);
  --lx-shl:         0 8px 40px rgba(0,0,0,0.75), 0 3px 12px rgba(0,0,0,0.45);
  --lx-glow:        0 0 40px color-mix(in srgb, var(--lx-gold) 30%, transparent);

  /* Animación */
  --lx-ease:        cubic-bezier(0.22, 1, 0.36, 1);
  --lx-dur:         220ms;

  /* Filtros catálogo: acento azul (radios/checkboxes nativos) */
  --lx-filter-accent: #2563eb;

  /* Acentos estilo iOS / marketplace (catálogo y badges) */
  --lx-ios-blue:   #0a84ff;
  --lx-ios-green:  #32d74b;
  --lx-ios-orange: #ff9f0a;
  --lx-ios-pink:   #ff375f;
  --lx-ios-purple: #bf5af2;
  --lx-ios-teal:   #64d2ff;

  font-family: var(--lx-font);
  background: var(--lx-bg);
  color: var(--lx-txt);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.tienda-tpl-mitaller *,
body.tienda-tpl-mitaller *::before,
body.tienda-tpl-mitaller *::after {
  box-sizing: border-box;
}

body.tienda-tpl-mitaller .lx-home {
  background: var(--lx-bg);
  overflow-x: hidden;
}

/* Wrap */
body.tienda-tpl-mitaller .lx-wrap {
  width: 100%;
  max-width: var(--lx-wrap);
  margin-inline: auto;
  padding-inline: var(--lx-px);
}
@media (min-width: 1920px) {
  body.tienda-tpl-mitaller {
    --lx-wrap: min(1880px, 100vw - 32px);
    --lx-px: clamp(16px, 2vw, 40px);
  }
}

/* Visually hidden */
body.tienda-tpl-mitaller .lx-sr {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}


/* ══════════════════════════════════════════════════════════
   2. NAVBAR — transparente, flotante, minimalista
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .vx-nav-dock--store {
  background: transparent;
  /* Anula el padding-top que VX aplica por defecto en .vx-nav-dock--store */
  padding: 0 !important;
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
}

body.tienda-tpl-mitaller .vx-nav-shell--store {
  width: 100%;
  max-width: 100%;
  margin: 0;
  border-radius: 0;
  background: rgba(8, 8, 9, 0.72);
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  border-bottom: 1px solid var(--lx-border);
  padding: 0 var(--lx-px);
  min-height: 62px;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  transition: background var(--lx-dur);
}

/* Nav con scroll — más opaco */
body.tienda-tpl-mitaller .vx-nav-shell--store.is-scrolled {
  background: rgba(8, 8, 9, 0.95);
  border-bottom-color: var(--lx-border2);
}

/* Escritorio: barra a ancho completo, esquinas inferiores redondeadas (shell + tools como una sola pieza) */
@media (min-width: 901px) {
  body.tienda-tpl-mitaller .vx-nav-dock--store {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0;
    width: 100%;
    max-width: 100%;
    /* padding-top: 0 — en Mitaller la barra va pegada al borde superior (o al ribbon si existe) */
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    border-bottom: 1px solid var(--lx-border);
    border-bottom-left-radius: var(--lx-rl);
    border-bottom-right-radius: var(--lx-rl);
    overflow: hidden;
  }
  body.tienda-tpl-mitaller .vx-nav-shell--store {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    max-width: none;
    border-radius: 0;
    border-bottom: none;
  }
  body.tienda-tpl-mitaller .vx-nav-dock--store > .vx-nav-tools {
    margin-left: 0;
    margin-right: 0;
    flex-shrink: 0;
    align-self: stretch;
    display: flex;
    align-items: center;
    background: rgba(8, 8, 9, 0.72);
    backdrop-filter: blur(18px) saturate(160%);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    border-bottom: none;
    border-left: 1px solid var(--lx-border2);
    padding: 6px var(--lx-px) 6px 14px;
    min-height: 62px;
    box-sizing: border-box;
  }
  body.tienda-tpl-mitaller .vx-nav-shell--store.is-scrolled ~ .vx-nav-tools {
    background: rgba(8, 8, 9, 0.95);
  }
  [data-theme="light"] body.tienda-tpl-mitaller .vx-nav-dock--store > .vx-nav-tools {
    background: rgba(255, 255, 255, 0.94);
    border-left-color: var(--lx-border2);
  }
  [data-theme="light"] body.tienda-tpl-mitaller .vx-nav-shell--store.is-scrolled ~ .vx-nav-tools {
    background: rgba(255, 255, 255, 0.98);
  }
  [data-theme="light"] body.tienda-tpl-mitaller .vx-nav-dock--store {
    border-bottom-color: var(--lx-border2);
  }
}

/* VX añade border-top + padding a .vx-nav-links / .vx-nav-tools (parece “segunda fila”).
   En Mitaller el shell es una sola banda horizontal desde tablet/desktop. */
@media (min-width: 761px) {
  body.tienda-tpl-mitaller .vx-nav-shell--store > .vx-nav-links,
  body.tienda-tpl-mitaller .vx-nav-dock--store > .vx-nav-tools {
    border-top: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* Sizer = solo la altura de la barra de menú (sin extras de VX) */
body.tienda-tpl-mitaller .vx-store-head-sizer { height: 62px; }
/* Con ribbon activo el sizer suma su altura para que el hero no quede tapado */
body.tienda-tpl-mitaller.vx-has-ribbon .vx-store-head-sizer {
  height: calc(62px + var(--vx-ribbon-h, 0px));
}
body.tienda-tpl-mitaller .vx-store-main-home  { padding-top: 0 !important; }

/* Fila cabecera: logo centrado + lupa / tema (solo iconos en móvil) */
body.tienda-tpl-mitaller .vx-brand-row {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  flex-shrink: 0;
  box-sizing: border-box;
  padding: 10px 0 8px;
  min-height: 52px;
}
body.tienda-tpl-mitaller .vx-brand-row .vx-brand {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  max-width: min(220px, calc(100% - 120px));
  justify-content: center;
  pointer-events: auto;
  z-index: 1;
}
body.tienda-tpl-mitaller .vx-header-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  z-index: 3;
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .vx-header-search-btn,
body.tienda-tpl-mitaller .vx-header-theme-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 44px;
  min-height: 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: var(--lx-txt2);
  cursor: pointer;
  transition: color var(--lx-dur), opacity var(--lx-dur), transform var(--lx-dur);
  -webkit-tap-highlight-color: transparent;
}
body.tienda-tpl-mitaller .vx-header-search-btn:hover,
body.tienda-tpl-mitaller .vx-header-theme-btn:hover {
  background: transparent;
  color: var(--lx-txt);
  opacity: 1;
  transform: scale(1.06);
}
body.tienda-tpl-mitaller .vx-header-search-btn[aria-expanded="true"],
body.tienda-tpl-mitaller .vx-header-theme-btn:focus-visible {
  outline: 2px solid var(--lx-filter-accent);
  outline-offset: 3px;
  border-radius: 4px;
}
body.tienda-tpl-mitaller .vx-header-search-btn[aria-expanded="true"] {
  color: var(--lx-txt);
  background: transparent;
}
body.tienda-tpl-mitaller .vx-header-theme-btn__icons {
  display: flex;
  align-items: center;
  justify-content: center;
}
body.tienda-tpl-mitaller .vx-header-theme-btn__icons svg {
  display: block;
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-header-search-btn,
[data-theme="light"] body.tienda-tpl-mitaller .vx-header-theme-btn {
  background: transparent;
  border: none;
  color: rgba(10, 10, 15, 0.62);
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-header-search-btn:hover,
[data-theme="light"] body.tienda-tpl-mitaller .vx-header-theme-btn:hover {
  background: transparent;
  color: #0a0a0f;
}
@media (min-width: 901px) {
  body.tienda-tpl-mitaller .vx-header-theme-btn,
  body.tienda-tpl-mitaller .vx-header-search-btn {
    display: none !important;
  }
  body.tienda-tpl-mitaller .vx-brand-row {
    display: contents;
    padding: 0;
    min-height: 0;
  }
  body.tienda-tpl-mitaller .vx-brand-row .vx-brand {
    position: static;
    transform: none;
    max-width: none;
    justify-content: flex-start;
  }
  body.tienda-tpl-mitaller .vx-header-actions {
    display: none;
  }
}

/* Logo */
body.tienda-tpl-mitaller .vx-brand {
  font-family: var(--lx-head);
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lx-txt);
  text-decoration: none;
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .vx-brand img {
  height: 32px; width: auto; max-width: 120px;
  object-fit: contain; filter: brightness(0) invert(1);
}

/* Badge favoritos en panel «Más» / escritorio */
body.tienda-tpl-mitaller .vx-nav-links .vx-badge--nav-fav {
  margin-left: 6px;
  vertical-align: middle;
}

/* Nav links */
body.tienda-tpl-mitaller .vx-nav-links {
  display: flex; gap: 0;
}
/* Desktop VX pone flex:1 en .vx-nav-links y estira el fondo gris; aquí solo el ancho del contenido */
@media (min-width: 901px) {
  body.tienda-tpl-mitaller .vx-nav-links {
    flex: 0 0 auto !important;
    width: fit-content;
    max-width: 100%;
    border-left: none !important;
    border-right: none !important;
    height: auto !important;
    align-self: center;
  }
  body.tienda-tpl-mitaller.vx-page-home .vx-nav-links {
    border-radius: var(--lx-pill) !important;
  }
}
/* Solo ocultar el panel cerrado: con .is-open debe mostrarse (VX usa max-width 900px) */
@media (max-width: 900px) {
  body.tienda-tpl-mitaller .vx-nav-dock--store {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0 !important;
    box-sizing: border-box;
    border-bottom: 1px solid var(--lx-border);
    border-bottom-left-radius: var(--lx-rl);
    border-bottom-right-radius: var(--lx-rl);
    overflow: hidden;
  }
  [data-theme="light"] body.tienda-tpl-mitaller .vx-nav-dock--store {
    border-bottom-color: var(--lx-border2);
  }
  body.tienda-tpl-mitaller .vx-nav-shell--store {
    border-bottom: none;
    border-radius: 0;
  }
  /* Sin backdrop-filter en móvil: si no, position:fixed del menú «Más» queda anclado al shell */
  body.tienda-tpl-mitaller .vx-nav-shell--store {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  body.tienda-tpl-mitaller .vx-nav-shell--store > .vx-nav-links:not(.is-open) { display: none !important; }
  body.tienda-tpl-mitaller .vx-nav-shell--store > .vx-nav-links.is-open {
    display: flex !important;
  }
  body.tienda-tpl-mitaller .vx-nav-links.is-open a {
    white-space: normal;
    text-align: center;
  }
}
body.tienda-tpl-mitaller .vx-nav-links a {
  padding: 0.45rem 0.9rem;
  font-size: 0.85rem; font-weight: 500;
  color: var(--lx-txt2); text-decoration: none;
  letter-spacing: 0.02em;
  transition: background var(--lx-dur), color var(--lx-dur), box-shadow var(--lx-dur);
  white-space: nowrap;
  border-radius: var(--lx-pill);
}
body.tienda-tpl-mitaller .vx-nav-links a.lx-nav-booking:not([aria-current="page"]) {
  background: linear-gradient(135deg, rgba(13, 148, 136, 0.35), rgba(5, 150, 105, 0.28));
  border: 1px solid rgba(45, 212, 191, 0.35);
  color: rgba(255, 255, 255, 0.95);
  font-weight: 600;
}
body.tienda-tpl-mitaller .vx-nav-links a.lx-nav-booking:not([aria-current="page"]):hover {
  background: linear-gradient(135deg, rgba(13, 148, 136, 0.5), rgba(5, 150, 105, 0.42));
  color: #fff;
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-links a.lx-nav-booking:not([aria-current="page"]) {
  background: linear-gradient(135deg, rgba(13, 148, 136, 0.14), rgba(5, 150, 105, 0.1));
  border-color: rgba(13, 148, 136, 0.35);
  color: #0f766e;
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-links a.lx-nav-booking:not([aria-current="page"]):hover {
  background: linear-gradient(135deg, rgba(13, 148, 136, 0.22), rgba(5, 150, 105, 0.16));
  color: #047857;
}
body.tienda-tpl-mitaller .vx-nav-links a:hover:not([aria-current="page"]) {
  color: var(--lx-txt);
  background: var(--lx-gold-muted);
}
/*
 * Ítem activo: mismo criterio que VX (fondo --vx-accent). Si el acento es oscuro/negro,
 * el texto debe ser blanco — forzamos legibilidad (sobreescribe vx-page-home y tienda-vx-store).
 */
body.tienda-tpl-mitaller .vx-nav-links a[aria-current="page"],
body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a[aria-current="page"] {
  position: relative;
  background: var(--vx-accent, var(--lx-gold)) !important;
  color: #fff !important;
  font-weight: 600;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
body.tienda-tpl-mitaller .vx-nav-links a[aria-current="page"]::after {
  display: none;
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-links a[aria-current="page"],
[data-theme="light"] body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a[aria-current="page"] {
  background: var(--lx-filter-accent) !important;
  color: #fff !important;
  box-shadow: 0 1px 8px rgba(37, 99, 235, 0.25);
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-links a:not([aria-current="page"]) {
  color: rgba(10, 10, 15, 0.72);
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-links a:hover:not([aria-current="page"]) {
  color: #0a0a0f;
}

/* Modo oscuro: acento claro puede dejar texto blanco ilegible — ítem activo en azul */
[data-theme="dark"] body.tienda-tpl-mitaller .vx-nav-links a[aria-current="page"],
[data-theme="dark"] body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a[aria-current="page"] {
  background: var(--lx-filter-accent) !important;
  color: #fff !important;
  box-shadow: 0 1px 10px rgba(37, 99, 235, 0.35);
}
[data-theme="dark"] body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a:not([aria-current="page"]) {
  color: rgba(255, 255, 255, 0.88) !important;
}
[data-theme="dark"] body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a:hover:not([aria-current="page"]) {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.12) !important;
}

/* Sobrescribe hover de home en VX (evita pastilla blanca que compite con el acento) */
body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a:hover:not([aria-current="page"]) {
  background: var(--lx-gold-muted) !important;
  color: var(--lx-txt) !important;
  box-shadow: none !important;
}
[data-theme="light"] body.tienda-tpl-mitaller.vx-page-home .vx-nav-links a:hover:not([aria-current="page"]) {
  background: rgba(0, 0, 0, 0.06) !important;
  color: #0a0a0f !important;
  box-shadow: none !important;
}

/* Buscador */
body.tienda-tpl-mitaller .lx-nav-search {
  flex: 1 1 auto;
  max-width: min(560px, 46vw);
  min-width: 0;
  margin-inline: auto;
}
@media (min-width: 1400px) {
  body.tienda-tpl-mitaller .lx-nav-search {
    max-width: min(640px, 50vw);
  }
}
@media (max-width: 900px) {
  /* Buscador colapsable: oculto hasta pulsar la lupa */
  body.tienda-tpl-mitaller .vx-nav-shell--store > .lx-nav-search:not(.vx-search-shell--open) {
    display: none !important;
  }
  body.tienda-tpl-mitaller .vx-nav-shell--store > .lx-nav-search.vx-search-shell--open {
    display: block !important;
    max-width: none !important;
    width: 100%;
    margin: 0;
    padding: 0 12px 12px;
    box-sizing: border-box;
    animation: lxSearchReveal 0.28s var(--lx-ease) both;
  }
}
@keyframes lxSearchReveal {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
body.tienda-tpl-mitaller .vx-search-bar {
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--lx-border2);
  border-radius: var(--lx-pill);
  transition: border-color var(--lx-dur), background var(--lx-dur);
}
body.tienda-tpl-mitaller .vx-search-bar:focus-within {
  border-color: var(--lx-gold);
  background: rgba(255,255,255,0.08);
}
body.tienda-tpl-mitaller .vx-search-bar__input {
  color: var(--lx-txt) !important;
}
body.tienda-tpl-mitaller .vx-search-bar__input::placeholder {
  color: var(--lx-txt3) !important;
}
[data-theme="dark"] body.tienda-tpl-mitaller .vx-search-bar__input {
  color: rgba(255, 255, 255, 0.95) !important;
}
[data-theme="dark"] body.tienda-tpl-mitaller .vx-search-bar__input::placeholder {
  color: rgba(255, 255, 255, 0.52) !important;
}

/* Tool buttons */
body.tienda-tpl-mitaller .vx-nav-tools {
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
body.tienda-tpl-mitaller .vx-tool-btn {
  position: relative;
  background: transparent;
  border: 1px solid transparent;
  border-radius: var(--lx-r);
  color: var(--lx-txt2);
  width: 38px; height: 38px;
  padding: 0;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  cursor: pointer; text-decoration: none;
  transition: color var(--lx-dur), background var(--lx-dur), border-color var(--lx-dur);
}
body.tienda-tpl-mitaller .vx-tool-btn:hover {
  color: var(--lx-txt);
  background: rgba(255,255,255,0.06);
  border-color: var(--lx-border2);
}
body.tienda-tpl-mitaller .vx-tool-caption { display: none; } /* solo iconos */

/* CTA login (icono + texto en fila; VX usa column en .vx-tool-btn) */
body.tienda-tpl-mitaller .lx-nav-cta {
  background: var(--lx-gold) !important;
  color: var(--lx-gold-fg) !important;
  border-radius: var(--lx-pill) !important;
  border-color: transparent !important;
  width: auto !important;
  height: auto !important;
  min-height: 38px;
  padding: 0.35rem 1rem !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem !important;
  white-space: nowrap;
}
body.tienda-tpl-mitaller .lx-nav-cta svg {
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .lx-nav-cta:hover {
  filter: brightness(1.12);
  background: var(--lx-gold) !important;
}

/* Badge */
body.tienda-tpl-mitaller .vx-badge {
  position: absolute; top: 3px; right: 3px;
  min-width: 16px; height: 16px;
  background: var(--lx-gold);
  color: var(--lx-gold-fg);
  border-radius: 50%;
  font-size: 0.68rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  padding: 0 3px;
}

/* Hamburger */
body.tienda-tpl-mitaller .vx-nav-toggle {
  background: transparent;
  border: 1px solid var(--lx-border2);
  border-radius: var(--lx-r);
  color: var(--lx-txt);
  width: 38px; height: 38px;
  display: none; align-items: center; justify-content: center;
  cursor: pointer;
}
@media (max-width: 900px) {
  body.tienda-tpl-mitaller .vx-nav-toggle { display: flex !important; }
}


/* ══════════════════════════════════════════════════════════
   3. HERO TIPOGRÁFICO FULL-BLEED
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-hero {
  position: relative;
  min-height: clamp(480px, 70vh, 760px);
  background: var(--lx-bg) center/cover no-repeat;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Overlay gradiente */
body.tienda-tpl-mitaller .lx-hero__overlay {
  position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(180deg, rgba(8,8,9,0.55) 0%, rgba(8,8,9,0.0) 35%, rgba(8,8,9,0.75) 100%);
}

/* Texto gigante del título (detrás de la imagen) */
body.tienda-tpl-mitaller .lx-hero__bg-title {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-left: max(var(--lx-px), calc(50vw - var(--lx-wrap) / 2));
  pointer-events: none;
  overflow: hidden;
}
body.tienda-tpl-mitaller .lx-hero__bg-text {
  font-family: var(--lx-head);
  font-size: clamp(5rem, 16vw, 14rem);
  font-weight: 900;
  letter-spacing: -0.04em;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255,255,255,0.10);
  white-space: nowrap;
  user-select: none;
  line-height: 1;
  opacity: 0.45;
  transform: translateX(-2%);
}

/* Imagen del banner (se superpone al texto de fondo) */
body.tienda-tpl-mitaller .lx-hero__banner-img {
  position: absolute;
  inset: 0; z-index: 3;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 6s var(--lx-ease);
}
body.tienda-tpl-mitaller .lx-hero:hover .lx-hero__banner-img {
  transform: scale(1.03);
}

/* Contenido (sobre todo) — alineado a la izquierda con la columna del sitio */
body.tienda-tpl-mitaller .lx-hero__content {
  position: relative; z-index: 5;
  margin-top: auto;
  padding: 0 var(--lx-px) clamp(2.5rem, 5vw, 4rem);
  max-width: min(42rem, calc(100vw - var(--lx-px) * 2));
  width: 100%;
  margin-left: max(var(--lx-px), calc(50vw - var(--lx-wrap) / 2));
  margin-right: auto;
  text-align: left;
}

body.tienda-tpl-mitaller .lx-hero__kicker {
  display: inline-flex; align-items: center; gap: 0.45rem;
  font-size: 0.75rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.15em;
  color: var(--lx-gold);
  margin-bottom: 0.85rem;
}
body.tienda-tpl-mitaller .lx-hero__kicker::before {
  content: '';
  display: block;
  width: 20px; height: 2px;
  background: var(--lx-gold);
  border-radius: 1px;
}

body.tienda-tpl-mitaller .lx-hero__title {
  font-family: var(--lx-head);
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  font-weight: 800; line-height: 1.05;
  letter-spacing: -0.025em;
  color: #fff;
  margin: 0 0 1rem;
}
body.tienda-tpl-mitaller .lx-hero__title em {
  font-style: normal;
  color: var(--lx-gold);
}

body.tienda-tpl-mitaller .lx-hero__lead {
  font-size: 0.95rem; line-height: 1.65;
  color: rgba(255,255,255,0.62);
  max-width: 36rem; margin: 0 0 2rem;
}

body.tienda-tpl-mitaller .lx-hero__actions {
  display: flex; flex-wrap: wrap; gap: 0.75rem;
}

/* Sin banner: gradiente dramático */
body.tienda-tpl-mitaller .lx-hero:not([style*="background-image"]) {
  background: radial-gradient(ellipse at 60% 40%, #1a1a1f 0%, #080809 100%);
}

/* Dots */
body.tienda-tpl-mitaller .lx-hero__dots {
  position: absolute; bottom: 1.5rem; right: var(--lx-px);
  z-index: 6; display: flex; gap: 6px; align-items: center;
}
body.tienda-tpl-mitaller .lx-hero__dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: rgba(255,255,255,0.3);
  border: none; cursor: pointer;
  transition: background var(--lx-dur), transform var(--lx-dur), width var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-hero__dot.is-active {
  background: var(--lx-gold);
  width: 22px; border-radius: 3px;
}

/* Línea decorativa */
body.tienda-tpl-mitaller .lx-hero__line {
  position: absolute; left: var(--lx-px); top: 50%;
  transform: translateY(-50%);
  width: 1px; height: 80px;
  background: linear-gradient(to bottom, transparent, var(--lx-gold), transparent);
  z-index: 5;
  opacity: 0.5;
}
@media (max-width: 600px) {
  body.tienda-tpl-mitaller .lx-hero__line { display: none; }
}


/* ══════════════════════════════════════════════════════════
   4. STATS BAR
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-stats {
  background: var(--lx-bg2);
  border-top: 1px solid var(--lx-border);
  border-bottom: 1px solid var(--lx-border);
}
body.tienda-tpl-mitaller .lx-stats__inner {
  display: flex; justify-content: center; align-items: stretch;
  flex-wrap: wrap;
}
body.tienda-tpl-mitaller .lx-stat {
  display: flex; flex-direction: column; align-items: center;
  gap: 0.2rem; text-align: center;
  padding: 1.4rem 2rem;
  position: relative;
}
body.tienda-tpl-mitaller .lx-stat + .lx-stat::before {
  content: '';
  position: absolute; left: 0; top: 25%; bottom: 25%;
  width: 1px; background: var(--lx-border2);
}
body.tienda-tpl-mitaller .lx-stat__n {
  font-family: var(--lx-head);
  font-size: 1.7rem; font-weight: 800; line-height: 1;
  color: var(--lx-txt);
  letter-spacing: -0.03em;
}
body.tienda-tpl-mitaller .lx-stat__n span { color: var(--lx-gold); }
body.tienda-tpl-mitaller .lx-stat__n--text {
  font-size: clamp(0.95rem, 2.5vw, 1.12rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  text-transform: none;
  line-height: 1.2;
  max-width: 10rem;
  hyphens: auto;
}
body.tienda-tpl-mitaller .lx-stat__l {
  font-size: 0.74rem; font-weight: 500;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--lx-txt3);
}

/* Móvil: cuadrícula 2×2 (misma jerarquía que escritorio); tipografía ~25% menor para que entre */
@media (max-width: 640px) {
  body.tienda-tpl-mitaller .lx-stats__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: minmax(0, auto);
    gap: 0;
    align-items: stretch;
    justify-items: stretch;
    padding-block: 0.5rem;
  }
  body.tienda-tpl-mitaller .lx-stat + .lx-stat::before {
    display: none;
  }
  body.tienda-tpl-mitaller .lx-stat {
    padding: 0.5rem 0.35rem 0.55rem;
    text-align: center;
    align-items: center;
    gap: 0.16rem;
    min-width: 0;
    box-sizing: border-box;
    border: none;
    border-radius: 0;
    background: transparent;
    margin: 0;
  }
  body.tienda-tpl-mitaller .lx-stat:nth-child(odd) {
    border-right: 1px solid var(--lx-border2);
  }
  body.tienda-tpl-mitaller .lx-stat:nth-child(-n + 2) {
    border-bottom: 1px solid var(--lx-border2);
  }
  body.tienda-tpl-mitaller .lx-stat__n:not(.lx-stat__n--text) {
    font-size: clamp(1rem, 5.2vw, 1.28rem);
    line-height: 1.05;
  }
  body.tienda-tpl-mitaller .lx-stat__n--text {
    font-size: clamp(0.68rem, 2.35vw, 0.84rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.22;
    max-width: 100%;
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: break-word;
  }
  body.tienda-tpl-mitaller .lx-stat__l {
    font-size: clamp(0.44rem, 1.85vw, 0.56rem);
    font-weight: 600;
    letter-spacing: 0.06em;
    line-height: 1.28;
    max-width: 100%;
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: break-word;
  }
}


/* ══════════════════════════════════════════════════════════
   5. BOTONES
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-btn {
  display: inline-flex; align-items: center; gap: 0.5rem;
  padding: 0.72rem 1.5rem;
  border-radius: var(--lx-pill);
  font-family: var(--lx-font);
  font-size: 0.88rem; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  border: 1.5px solid transparent;
  line-height: 1;
  transition: all var(--lx-dur) var(--lx-ease);
  white-space: nowrap;
}
body.tienda-tpl-mitaller .lx-btn:active { transform: scale(0.97); }

body.tienda-tpl-mitaller .lx-btn--gold {
  background: var(--lx-gold);
  color: var(--lx-gold-fg);
  box-shadow: 0 4px 20px var(--lx-gold-muted);
}
body.tienda-tpl-mitaller .lx-btn--gold:hover {
  filter: brightness(1.1);
  box-shadow: var(--lx-glow);
}

body.tienda-tpl-mitaller .lx-btn--outline {
  background: transparent;
  color: #fff;
  border-color: rgba(255,255,255,0.35);
}
body.tienda-tpl-mitaller .lx-btn--outline:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.6);
}

body.tienda-tpl-mitaller .lx-btn--outline-gold {
  background: transparent;
  color: var(--lx-gold);
  border-color: var(--lx-gold);
}
body.tienda-tpl-mitaller .lx-btn--outline-gold:hover {
  background: var(--lx-gold-muted);
}

/* Flecha en botón */
body.tienda-tpl-mitaller .lx-btn .lx-arrow {
  width: 18px; height: 18px;
  border: 1.5px solid currentColor;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.7rem; flex-shrink: 0;
  transition: transform var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-btn:hover .lx-arrow {
  transform: translateX(3px);
}

body.tienda-tpl-mitaller .lx-btn--sm {
  padding: 0.55rem 1.1rem; font-size: 0.8rem;
}


/* ══════════════════════════════════════════════════════════
   6. GRID DE PRODUCTOS — cards oscuras estilo LuxAuto
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-catalog {
  padding: 4rem 0;
  background:
    radial-gradient(ellipse 120% 70% at 8% 0%, color-mix(in srgb, var(--lx-ios-blue) 16%, transparent) 0%, transparent 58%),
    radial-gradient(ellipse 80% 50% at 100% 12%, color-mix(in srgb, var(--lx-ios-purple) 12%, transparent) 0%, transparent 48%),
    radial-gradient(ellipse 60% 40% at 50% 100%, color-mix(in srgb, var(--lx-ios-teal) 8%, transparent) 0%, transparent 45%),
    var(--lx-bg);
}
body.tienda-tpl-mitaller .lx-catalog__head {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: 1rem; flex-wrap: wrap;
  margin-bottom: 2.5rem;
  padding-inline: var(--lx-px);
}
body.tienda-tpl-mitaller .lx-catalog__head-left {
  display: flex; flex-direction: column; gap: 0.3rem;
}
body.tienda-tpl-mitaller .lx-eyebrow {
  font-size: 0.73rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.15em;
  color: var(--lx-gold);
  display: flex; align-items: center; gap: 0.45rem;
}
body.tienda-tpl-mitaller .lx-eyebrow::before {
  content: ''; display: block;
  width: 18px; height: 2px;
  background: var(--lx-gold); border-radius: 1px;
}
body.tienda-tpl-mitaller .lx-section-title {
  font-family: var(--lx-head);
  font-size: clamp(1.5rem, 3vw, 2.2rem);
  font-weight: 800; line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--lx-txt); margin: 0;
}
body.tienda-tpl-mitaller .lx-catalog__count {
  font-size: 0.82rem; color: var(--lx-txt3); white-space: nowrap;
}

body.tienda-tpl-mitaller .lx-login-hint {
  display: flex; align-items: center; gap: 0.55rem;
  font-size: 0.85rem; color: var(--lx-txt2);
  background: var(--lx-bg2);
  border: 1px solid var(--lx-border);
  border-left: 3px solid var(--lx-gold);
  border-radius: var(--lx-r);
  padding: 0.75rem 1rem;
  margin: 0 var(--lx-px) 2rem;
}

/* Layout marketplace: sidebar + área principal */
body.tienda-tpl-mitaller .lx-mp-layout {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  padding-bottom: 2rem;
}
@media (min-width: 1024px) {
  body.tienda-tpl-mitaller .lx-mp-layout {
    flex-direction: row;
    align-items: flex-start;
    gap: 1.5rem;
  }
  body.tienda-tpl-mitaller .lx-mp-aside {
    width: 248px;
    flex-shrink: 0;
    position: sticky;
    top: 72px;
    align-self: flex-start;
    max-height: calc(100vh - 88px);
    overflow-y: auto;
  }
}
body.tienda-tpl-mitaller .lx-mp-main {
  flex: 1;
  min-width: 0;
}
body.tienda-tpl-mitaller .lx-grid-wrap-inner {
  min-width: 0;
}

/* Toggle filtros móvil */
body.tienda-tpl-mitaller .lx-mp-filter-toggle {
  display: none;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.78rem 1rem;
  border-radius: var(--lx-rl);
  border: 1px solid var(--lx-border);
  background: var(--lx-sfc);
  color: var(--lx-txt);
  font-weight: 600;
  font-size: 0.88rem;
  cursor: pointer;
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-mp-filter-toggle__inner {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
body.tienda-tpl-mitaller .lx-mp-filter-toggle__chev {
  flex-shrink: 0;
  transition: transform 0.2s var(--lx-ease);
  color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-mp-filter-toggle.is-open .lx-mp-filter-toggle__chev {
  transform: rotate(180deg);
}
@media (max-width: 1023px) {
  body.tienda-tpl-mitaller .lx-mp-filter-toggle { display: flex; }
  body.tienda-tpl-mitaller .lx-mp-filters:not(.is-open) { display: none; }
  body.tienda-tpl-mitaller .lx-mp-filters.is-open {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
  }
}
@media (min-width: 1024px) {
  body.tienda-tpl-mitaller .lx-mp-filters {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
  }
}

body.tienda-tpl-mitaller .lx-mp-filter-card {
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--lx-ios-blue) 7%, var(--lx-sfc)) 0%,
    var(--lx-sfc) 100%);
  border: 1px solid var(--lx-border);
  border-left: 3px solid color-mix(in srgb, var(--lx-ios-blue) 75%, var(--lx-ios-purple));
  border-radius: var(--lx-rl);
  padding: 0.85rem 0.9rem;
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-mp-filter-card__title {
  font-size: 0.62rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--lx-txt3);
  margin: 0 0 0.55rem;
}
body.tienda-tpl-mitaller .lx-mp-select,
body.tienda-tpl-mitaller .lx-mp-input {
  width: 100%;
  padding: 0.5rem 0.55rem;
  font-size: 0.8rem;
  border-radius: var(--lx-r);
  border: 1px solid var(--lx-border2);
  background: var(--lx-bg2);
  color: var(--lx-txt);
}
body.tienda-tpl-mitaller .lx-mp-select:focus,
body.tienda-tpl-mitaller .lx-mp-input:focus {
  outline: none;
  border-color: var(--lx-filter-accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--lx-filter-accent) 28%, transparent);
}
body.tienda-tpl-mitaller .lx-mp-filter-stack {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}
body.tienda-tpl-mitaller .lx-mp-check {
  display: flex;
  align-items: flex-start;
  gap: 0.45rem;
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--lx-txt2);
  cursor: pointer;
  padding: 0.2rem 0;
  margin: 0;
}
body.tienda-tpl-mitaller .lx-mp-check input {
  margin-top: 0.15rem;
  accent-color: var(--lx-filter-accent);
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .lx-mp-price-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
}
body.tienda-tpl-mitaller .lx-mp-price-lbl {
  display: block;
  font-size: 0.62rem;
  color: var(--lx-txt3);
  margin-bottom: 0.2rem;
}
body.tienda-tpl-mitaller .lx-mp-clear {
  width: 100%;
  padding: 0.55rem;
  border-radius: var(--lx-rl);
  border: 1px solid var(--lx-border2);
  background: var(--lx-sfc);
  color: var(--lx-txt3);
  font-size: 0.78rem;
  font-weight: 600;
  cursor: pointer;
  transition: color 0.15s, border-color 0.15s;
}
body.tienda-tpl-mitaller .lx-mp-clear:hover {
  color: #ef4444;
  border-color: rgba(239, 68, 68, 0.35);
}

body.tienda-tpl-mitaller .lx-mp-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin-bottom: 0.85rem;
  padding: 0.65rem 0.85rem;
  border-radius: var(--lx-rl);
  border: 1px solid color-mix(in srgb, var(--lx-ios-blue) 22%, var(--lx-border));
  background: color-mix(in srgb, var(--lx-ios-blue) 8%, var(--lx-sfc));
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-mp-toolbar__count {
  margin: 0;
  font-size: 0.66rem;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-mp-toolbar__count strong {
  color: var(--lx-ios-teal);
  font-weight: 700;
}
body.tienda-tpl-mitaller .lx-mp-view-toggle {
  display: inline-flex;
  gap: 0.25rem;
  padding: 0.2rem;
  border-radius: var(--lx-r);
  border: 1px solid color-mix(in srgb, var(--lx-ios-blue) 25%, var(--lx-border));
  background: color-mix(in srgb, var(--lx-ios-purple) 6%, var(--lx-bg2));
}
body.tienda-tpl-mitaller .lx-mp-view-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.42rem 0.5rem;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: var(--lx-txt3);
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
body.tienda-tpl-mitaller .lx-mp-view-btn.is-active {
  background: linear-gradient(135deg, var(--lx-ios-blue) 0%, color-mix(in srgb, var(--lx-ios-purple) 45%, var(--lx-ios-blue)) 100%);
  color: #fff;
  box-shadow: 0 2px 10px color-mix(in srgb, var(--lx-ios-blue) 35%, transparent);
}
body.tienda-tpl-mitaller .lx-mp-view-btn:hover:not(.is-active) {
  color: var(--lx-txt);
}

body.tienda-tpl-mitaller .lx-mp-empty {
  text-align: center;
  padding: 2.5rem 1rem;
  border-radius: var(--lx-rl);
  border: 1px dashed var(--lx-border2);
  background: var(--lx-bg2);
  margin-bottom: 1rem;
}
body.tienda-tpl-mitaller .lx-mp-empty__title {
  font-weight: 700;
  color: var(--lx-txt);
  margin: 0 0 0.35rem;
}
body.tienda-tpl-mitaller .lx-mp-empty__hint {
  font-size: 0.86rem;
  color: var(--lx-txt3);
  margin: 0 0 1rem;
}
body.tienda-tpl-mitaller .lx-mp-empty__btn {
  padding: 0.55rem 1.1rem;
  border-radius: var(--lx-pill);
  border: none;
  background: var(--lx-gold);
  color: var(--lx-gold-fg);
  font-weight: 700;
  font-size: 0.82rem;
  cursor: pointer;
}
body.tienda-tpl-mitaller .ts-filter-hidden {
  display: none !important;
}
body.tienda-tpl-mitaller .ts-page-hidden {
  display: none !important;
}

body.tienda-tpl-mitaller .lx-catalog-pager {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 0.65rem;
  margin-top: 1.25rem;
  padding: 0.85rem 0.5rem 0.15rem;
  border-top: 1px solid var(--lx-border2);
}
body.tienda-tpl-mitaller .lx-catalog-pager__status {
  width: 100%;
  text-align: center;
  font-size: 0.82rem;
  color: var(--lx-txt3);
  order: -1;
  margin-bottom: 0.15rem;
}
body.tienda-tpl-mitaller .lx-catalog-pager__nums {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
}
body.tienda-tpl-mitaller .lx-catalog-pager__btn {
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 0.45rem;
  border-radius: var(--lx-pill);
  border: 1px solid var(--lx-border2);
  background: var(--lx-bg2);
  color: var(--lx-txt);
  font-size: 0.8rem;
  font-weight: 600;
  cursor: pointer;
  line-height: 1;
}
body.tienda-tpl-mitaller .lx-catalog-pager__btn:hover {
  border-color: var(--lx-gold);
  color: var(--lx-gold);
}
body.tienda-tpl-mitaller .lx-catalog-pager__btn.is-current {
  border-color: var(--lx-gold);
  background: var(--lx-gold);
  color: var(--lx-gold-fg);
}
body.tienda-tpl-mitaller .lx-catalog-pager__btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}
body.tienda-tpl-mitaller .lx-catalog-pager__ellipsis {
  padding: 0 0.2rem;
  font-size: 0.85rem;
  color: var(--lx-txt3);
  user-select: none;
}

/* Grid — 5 columnas (≥1280) y 6 (≥1600) con sidebar; tarjetas sueltas */
body.tienda-tpl-mitaller .lx-grid {
  display: grid;
  gap: clamp(0.75rem, 1.4vw, 1.15rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  background: transparent;
  border: none;
  overflow: visible;
}
@media (min-width: 640px) {
  body.tienda-tpl-mitaller .lx-grid:not(.lx-grid--list) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 900px) {
  body.tienda-tpl-mitaller .lx-grid:not(.lx-grid--list) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
/* Con layout marketplace (ancho completo dentro de .lx-wrap) */
@media (min-width: 1280px) {
  body.tienda-tpl-mitaller .lx-mp-layout .lx-grid:not(.lx-grid--list) {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@media (min-width: 1600px) {
  body.tienda-tpl-mitaller .lx-mp-layout .lx-grid:not(.lx-grid--list) {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

/* Vista lista — 2 columnas (móvil) / 3 (tablet+) */
body.tienda-tpl-mitaller .lx-grid.lx-grid--list {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.65rem;
  align-items: stretch;
}
@media (min-width: 900px) {
  body.tienda-tpl-mitaller .lx-grid.lx-grid--list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 420px) {
  body.tienda-tpl-mitaller .lx-grid.lx-grid--list {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
body.tienda-tpl-mitaller .lx-grid.lx-grid--list .lx-card {
  flex-direction: row;
  align-items: stretch;
}
body.tienda-tpl-mitaller .lx-grid.lx-grid--list .lx-card__img-wrap {
  width: 120px;
  min-width: 120px;
  max-width: 120px;
  align-self: stretch;
}
@media (min-width: 480px) {
  body.tienda-tpl-mitaller .lx-grid.lx-grid--list .lx-card__img-wrap {
    width: 140px;
    min-width: 140px;
    max-width: 140px;
  }
}
body.tienda-tpl-mitaller .lx-grid.lx-grid--list .lx-card__body {
  flex: 1;
  justify-content: center;
  padding: 0.85rem 1rem;
}
body.tienda-tpl-mitaller .lx-card__meta-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.26rem 0.41rem;
  margin-top: 0.15rem;
  font-size: 0.525rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-card__meta-code,
body.tienda-tpl-mitaller .lx-card__meta-stock {
  display: inline-flex;
  align-items: center;
  padding: 0.165rem 0.41rem;
  border-radius: 999px;
  font-size: 0.51rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.tienda-tpl-mitaller .lx-card__meta-code {
  background: var(--lx-filter-accent);
  color: #fff;
  border: 1px solid color-mix(in srgb, var(--lx-filter-accent) 35%, transparent);
}
body.tienda-tpl-mitaller .lx-card__meta-stock--ok {
  background: rgba(52, 199, 89, 0.16);
  color: #4ade80;
  border: 1px solid rgba(74, 222, 128, 0.35);
}
body.tienda-tpl-mitaller .lx-card__meta-stock--low {
  background: rgba(255, 159, 10, 0.14);
  color: #fdba74;
  border: 1px solid rgba(251, 146, 60, 0.4);
}
body.tienda-tpl-mitaller .lx-card__meta-stock--out {
  background: rgba(248, 113, 113, 0.12);
  color: #fca5a5;
  border: 1px solid rgba(248, 113, 113, 0.35);
}
body.tienda-tpl-mitaller .lx-card__name-row {
  position: relative;
  display: block;
}
body.tienda-tpl-mitaller .lx-grid:not(.lx-grid--list) .lx-card {
  position: relative;
}
/* Cuadrícula: favorito anclado a la tarjeta = esquina superior derecha de la foto */
body.tienda-tpl-mitaller .lx-grid:not(.lx-grid--list) .lx-card__name-row {
  position: static;
}
body.tienda-tpl-mitaller .lx-grid:not(.lx-grid--list) .lx-card__name-row .lx-card__fav {
  position: absolute;
  top: 0.62rem;
  right: 0.62rem;
  z-index: 8;
}
body.tienda-tpl-mitaller .lx-grid--list .lx-card__name-row {
  padding-right: 2.4rem;
  min-height: 1.35rem;
}
body.tienda-tpl-mitaller .lx-grid--list .lx-card__name-row .lx-card__fav {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
}
body.tienda-tpl-mitaller .lx-grid--list .lx-card__name {
  padding-right: 0;
}

/* Card — sin franja superior; acento azul solo en etiqueta de código */
body.tienda-tpl-mitaller .lx-card {
  --lx-card-r: clamp(18px, 2.2vw, 24px);
  position: relative;
  border-radius: var(--lx-card-r);
  border: 1px solid var(--lx-border);
  background: var(--lx-sfc);
  box-shadow: var(--lx-sh);
  display: flex; flex-direction: column;
  overflow: hidden;
  transition: transform var(--lx-dur) var(--lx-ease),
              box-shadow var(--lx-dur) var(--lx-ease),
              border-color var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-card::before {
  display: none;
}
body.tienda-tpl-mitaller .lx-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--lx-shl);
  border-color: var(--lx-border2);
}

/* Imagen */
body.tienda-tpl-mitaller .lx-card__img-wrap {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  background: linear-gradient(165deg, var(--lx-sfc2) 0%, var(--lx-bg3) 100%);
}
body.tienda-tpl-mitaller .lx-card__media-link {
  display: block;
  width: 100%; height: 100%;
}
body.tienda-tpl-mitaller .lx-card__img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 500ms var(--lx-ease);
}
body.tienda-tpl-mitaller .lx-card:hover .lx-card__img {
  transform: scale(1.05);
}
body.tienda-tpl-mitaller .lx-card__no-img {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  color: var(--lx-txt3);
}

/* Píldoras sobre la imagen (referencia LuxAuto) */
body.tienda-tpl-mitaller .lx-card__pills {
  position: absolute;
  top: 0; left: 0; right: 0; z-index: 4;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.3rem;
  padding: 0.49rem 0.53rem;
  pointer-events: none;
}
body.tienda-tpl-mitaller .lx-card__pills-end {
  display: flex; align-items: center; gap: 0.35rem;
  flex-shrink: 0;
  pointer-events: auto;
}
body.tienda-tpl-mitaller .lx-card__pill {
  display: inline-flex; align-items: center; gap: 0.26rem;
  max-width: 58%;
  padding: 0.21rem 0.41rem;
  border-radius: 999px;
  font-size: 0.4875rem; font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--lx-txt);
  background: rgba(8, 8, 9, 0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid var(--lx-border2);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
body.tienda-tpl-mitaller .lx-card__pill--muted {
  color: var(--lx-txt2);
  max-width: none;
}
body.tienda-tpl-mitaller .lx-card__pill--accent {
  color: var(--lx-gold);
  border-color: color-mix(in srgb, var(--lx-gold) 35%, transparent);
  background: color-mix(in srgb, var(--lx-gold) 12%, rgba(8,8,9,0.5));
}
body.tienda-tpl-mitaller .lx-card__pill-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--lx-filter-accent);
  flex-shrink: 0;
}

/* Favorito compacto */
body.tienda-tpl-mitaller .lx-card__fav {
  width: 23px; height: 23px;
  border-radius: 50%;
  border: 1px solid var(--lx-border2);
  background: rgba(8, 8, 9, 0.55);
  backdrop-filter: blur(10px);
  color: var(--lx-txt2);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: color var(--lx-dur), border-color var(--lx-dur), background var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-card__fav:hover {
  color: var(--lx-txt);
  border-color: var(--lx-border2);
}
body.tienda-tpl-mitaller .lx-card__fav.is-active,
body.tienda-tpl-mitaller .lx-card__fav.is-favorited {
  color: #ef4444;
  border-color: rgba(239, 68, 68, 0.35);
}
body.tienda-tpl-mitaller .lx-card__fav.is-active svg,
body.tienda-tpl-mitaller .lx-card__fav.is-favorited svg {
  fill: #ef4444;
}

/* Overlay al hover */
body.tienda-tpl-mitaller .lx-card__img-over {
  position: absolute; inset: 0; z-index: 2;
  background: linear-gradient(0deg, rgba(0,0,0,0.35) 0%, transparent 45%);
  opacity: 0;
  transition: opacity var(--lx-dur);
  pointer-events: none;
}
body.tienda-tpl-mitaller .lx-card:hover .lx-card__img-over { opacity: 1; }

/* Cuerpo */
body.tienda-tpl-mitaller .lx-card__body {
  padding: 0.75rem 0.79rem 0.83rem;
  display: flex; flex-direction: column; gap: 0.34rem; flex: 1;
}
body.tienda-tpl-mitaller .lx-card__name {
  font-family: var(--lx-head);
  font-size: clamp(0.69rem, 1.125vw, 0.7875rem);
  font-weight: 700; line-height: 1.3;
  color: var(--lx-txt);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body.tienda-tpl-mitaller .lx-card__name a {
  color: inherit; text-decoration: none;
}
body.tienda-tpl-mitaller .lx-card__name a:hover { color: var(--lx-gold); }

/* Pie: precio + flecha (añadir al carrito) */
body.tienda-tpl-mitaller .lx-card__foot {
  display: flex; align-items: center; justify-content: space-between;
  gap: 0.56rem;
  margin-top: auto; padding-top: 0.49rem;
}
body.tienda-tpl-mitaller .lx-card__price {
  font-family: var(--lx-head);
  font-size: 0.7125rem; font-weight: 600;
  color: var(--lx-txt);
  letter-spacing: -0.02em;
}
body.tienda-tpl-mitaller .lx-card__price-req {
  font-size: 0.57rem; color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-card__price-blur {
  filter: blur(5px); user-select: none;
}

body.tienda-tpl-mitaller .lx-card__foot-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.29rem;
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .lx-card__add-form { margin: 0; flex-shrink: 0; }
body.tienda-tpl-mitaller .lx-card__product-link {
  width: 29px;
  height: 29px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border: 1.5px solid var(--lx-border2);
  color: var(--lx-txt2);
  background: transparent;
  text-decoration: none;
  transition: color var(--lx-dur), border-color var(--lx-dur), background var(--lx-dur), transform var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-card__product-link:hover {
  color: var(--lx-txt);
  border-color: var(--lx-border2);
  background: var(--lx-bg2);
  transform: translate(2px, -2px);
}
body.tienda-tpl-mitaller .lx-card__add {
  width: 29px; height: 29px;
  border-radius: 50%;
  background: var(--lx-bg2);
  border: 1.5px solid var(--lx-border2);
  color: var(--lx-txt);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  transition: background var(--lx-dur), color var(--lx-dur), border-color var(--lx-dur), transform var(--lx-dur), box-shadow var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-card__add:hover {
  background: var(--lx-txt);
  color: var(--lx-sfc);
  border-color: var(--lx-txt);
  box-shadow: var(--lx-sh);
  transform: translate(2px, -2px);
}
body.tienda-tpl-mitaller .lx-card__add svg {
  width: 12px; height: 12px;
}
body.tienda-tpl-mitaller .lx-card__fav svg {
  width: 10.5px;
  height: 10.5px;
}
body.tienda-tpl-mitaller .lx-card__product-link svg {
  width: 12px;
  height: 12px;
}

/* Ficha de producto — código en pastilla azul (plantilla Mitaller) */
body.tienda-tpl-mitaller .tienda-product-code {
  display: inline-block;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 7px;
  padding: 0.2625rem 0.6rem;
  border-radius: 999px;
  font-size: 0.54rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff !important;
  background: var(--lx-filter-accent);
  border: 1px solid color-mix(in srgb, var(--lx-filter-accent) 32%, transparent);
}

/* Empty state */
body.tienda-tpl-mitaller .lx-empty {
  display: flex; flex-direction: column; align-items: center; gap: 1rem;
  padding: 5rem var(--lx-px); color: var(--lx-txt3); text-align: center;
}
body.tienda-tpl-mitaller .lx-empty svg { opacity: 0.3; }


/* ══════════════════════════════════════════════════════════
   7. BENTO — destacados (grid) + layout clásico 2 columnas
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-bento {
  padding: 4rem 0 2rem;
}

/* Destacados: grid 2 columnas (citas | carrusel) — evita solapamiento flex+transform del carrusel */
body.tienda-tpl-mitaller .lx-featured-row {
  --lx-fc-gap: 1.6rem;
  display: grid;
  grid-template-columns: clamp(220px, 22vw, 300px) minmax(0, 1fr);
  align-items: stretch;
  gap: var(--lx-fc-gap);
  margin-top: 1.5rem;
  width: 100%;
  isolation: isolate;
}
body.tienda-tpl-mitaller .lx-featured-cita-col {
  min-width: 0;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}
body.tienda-tpl-mitaller .lx-featured-cita-card {
  width: 100%;
  min-height: clamp(320px, 38vw, 440px);
  height: 100%;
}
body.tienda-tpl-mitaller .lx-featured-carousel--products {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  margin-top: 0;
  position: relative;
  z-index: 2;
}
@media (max-width: 760px) {
  body.tienda-tpl-mitaller .lx-featured-row {
    grid-template-columns: 1fr;
  }
  body.tienda-tpl-mitaller .lx-featured-cita-col {
    max-width: none;
  }
  body.tienda-tpl-mitaller .lx-featured-cita-card {
    min-height: 260px;
  }
  body.tienda-tpl-mitaller .lx-featured-carousel--products {
    z-index: auto;
  }
}

body.tienda-tpl-mitaller .lx-featured-carousel {
  --lx-fc-gap: 1.6rem;
  --lx-fc-duration: 40s;
  margin-top: 1.5rem;
  width: 100%;
}
body.tienda-tpl-mitaller .lx-featured-carousel__viewport {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  container-type: inline-size;
  container-name: lxfc;
  border-radius: var(--lx-rl);
  mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent);
}
body.tienda-tpl-mitaller .lx-featured-carousel--products .lx-featured-carousel__viewport {
  border: none;
  background: transparent;
  box-shadow: none;
}
body.tienda-tpl-mitaller .lx-featured-carousel__track {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  width: max-content;
  will-change: transform;
  animation: lx-featured-marquee var(--lx-fc-duration, 40s) linear infinite;
}
body.tienda-tpl-mitaller .lx-featured-carousel:hover .lx-featured-carousel__track {
  animation-play-state: paused;
}
@keyframes lx-featured-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
body.tienda-tpl-mitaller .lx-featured-carousel__set {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: var(--lx-fc-gap);
  flex-shrink: 0;
  /* Mismo hueco que entre tarjetas al unir el duplicado del marquee (translate -50%) */
  padding-right: var(--lx-fc-gap);
}
body.tienda-tpl-mitaller .lx-featured-carousel--products .lx-featured-carousel__slide {
  display: flex;
  align-items: flex-start;
}
body.tienda-tpl-mitaller .lx-featured-carousel__slide {
  flex: 0 0 calc((100cqi - 4 * var(--lx-fc-gap)) / 5);
  min-width: 0;
  max-width: 100%;
}
@container lxfc (max-width: 1100px) {
  body.tienda-tpl-mitaller .lx-featured-carousel__slide {
    flex-basis: calc((100cqi - 2 * var(--lx-fc-gap)) / 3);
  }
}
@container lxfc (max-width: 640px) {
  body.tienda-tpl-mitaller .lx-featured-carousel__slide {
    flex-basis: calc((100cqi - 1 * var(--lx-fc-gap)) / 2);
  }
}
@supports not (container-type: inline-size) {
  /* Carrusel a la derecha de la columna citas (~270px + gap) */
  body.tienda-tpl-mitaller .lx-featured-carousel--products .lx-featured-carousel__slide {
    flex-basis: clamp(140px, calc((100vw - 2 * var(--lx-px) - 300px - 4 * var(--lx-fc-gap)) / 5), 280px);
  }
  @media (max-width: 1100px) {
    body.tienda-tpl-mitaller .lx-featured-carousel--products .lx-featured-carousel__slide {
      flex-basis: clamp(150px, calc((100vw - 2 * var(--lx-px) - 300px - 2 * var(--lx-fc-gap)) / 3), 320px);
    }
  }
  @media (max-width: 760px) {
    body.tienda-tpl-mitaller .lx-featured-carousel--products .lx-featured-carousel__slide {
      flex-basis: clamp(150px, calc((100vw - 2 * var(--lx-px) - var(--lx-fc-gap)) / 2), 300px);
    }
  }
}
body.tienda-tpl-mitaller .lx-featured-carousel__slide .lx-bento__card {
  width: 100%;
  min-height: 0;
  height: 100%;
}
/* Destacados: altura = cuadrado según ancho; no estirar a la columna citas (evita recorte inferior) */
body.tienda-tpl-mitaller .lx-featured-carousel__slide .lx-bento__card.lx-bento__card--feat {
  height: auto;
  max-height: none;
}
body.tienda-tpl-mitaller .lx-bento__grid {
  display: grid;
  grid-template-columns: 1.55fr 1fr;
  gap: 1.5rem;
  padding-inline: var(--lx-px);
}
@media (max-width: 700px) {
  body.tienda-tpl-mitaller .lx-bento__grid { grid-template-columns: 1fr; }
}
body.tienda-tpl-mitaller .lx-bento__right {
  display: grid; grid-template-rows: 1fr 1fr; gap: 1.5rem;
}

body.tienda-tpl-mitaller .lx-bento__card {
  position: relative;
  border-radius: var(--lx-rl);
  overflow: hidden;
  min-height: 220px;
  background: var(--lx-sfc);
  border: 1px solid var(--lx-border);
  transition: border-color var(--lx-dur), box-shadow var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-bento__card:hover {
  border-color: var(--lx-border2);
  box-shadow: var(--lx-shl);
}
body.tienda-tpl-mitaller .lx-bento__card--wide { min-height: 340px; }

/* Destacados carrusel: foto 1:1 a pantalla completa + texto sobre degradado (sin franja ni línea) */
body.tienda-tpl-mitaller .lx-bento__card.lx-bento__card--feat {
  display: block;
  min-height: 0;
  aspect-ratio: 1 / 1;
  padding: 0;
}
/* Clic en toda la tarjeta → ficha (debajo del overlay; overlay con pointer-events:none y el botón carrito con auto) */
body.tienda-tpl-mitaller .lx-bento__feat-hit {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  text-decoration: none;
  cursor: pointer;
}
body.tienda-tpl-mitaller .lx-bento__feat-hit:focus-visible {
  outline: 2px solid var(--lx-filter-accent);
  outline-offset: 3px;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__img,
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__feat-ph {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__feat-ph {
  background: linear-gradient(165deg, var(--lx-sfc2) 0%, var(--lx-bg3) 100%);
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  gap: 0.26rem;
  padding: 2.35rem 0.7rem 0.85rem;
  border: none;
  box-sizing: border-box;
  /* Modo oscuro: negro abajo → transparente arriba */
  background: linear-gradient(
    180deg,
    transparent 0%,
    transparent 28%,
    rgba(8, 8, 12, 0.45) 55%,
    rgba(8, 8, 12, 0.82) 78%,
    rgba(8, 8, 12, 0.94) 100%
  );
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat > * {
  pointer-events: none;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat .lx-bento__title--feat {
  color: #fff;
  font-size: clamp(0.75rem, 1.5vw, 1.0125rem);
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__price {
  margin: 0;
  font-family: var(--lx-head);
  font-size: clamp(0.62rem, 1.15vw, 0.74rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  color: rgba(255, 255, 255, 0.96);
  line-height: 1.2;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__price--req {
  font-size: clamp(0.54rem, 1vw, 0.64rem);
  font-weight: 600;
  opacity: 0.92;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__price--blur {
  filter: blur(5px);
  user-select: none;
}
body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat .lx-bento__feat-add-form {
  pointer-events: auto;
  margin: 0.2rem 0 0;
  align-self: flex-start;
}
body.tienda-tpl-mitaller .lx-bento__feat-add {
  margin-top: 0.1rem;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat {
  /* Modo claro: blanco abajo → transparente arriba */
  background: linear-gradient(
    180deg,
    transparent 0%,
    transparent 26%,
    rgba(255, 255, 255, 0.55) 52%,
    rgba(255, 255, 255, 0.9) 78%,
    rgba(255, 255, 255, 0.98) 100%
  );
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__over--feat .lx-bento__title--feat {
  color: #0a0a0f;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__price {
  color: #0a0a0f;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card--feat .lx-bento__price--req {
  color: rgba(10, 10, 15, 0.72);
}

body.tienda-tpl-mitaller .lx-bento__img {
  position: absolute; inset: 0;
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 500ms var(--lx-ease);
}
body.tienda-tpl-mitaller .lx-bento__card:hover .lx-bento__img { transform: scale(1.04); }

body.tienda-tpl-mitaller .lx-bento__over {
  position: absolute; inset: 0;
  background: linear-gradient(0deg, rgba(0,0,0,0.82) 0%, rgba(0,0,0,0.12) 50%, rgba(0,0,0,0.02) 100%);
  display: flex; flex-direction: column; justify-content: flex-end;
  align-items: flex-start;
  gap: 0.45rem;
  padding: 1.5rem;
}
body.tienda-tpl-mitaller .lx-bento__badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
}
body.tienda-tpl-mitaller .lx-bento__badge--featured {
  padding: 0.26rem 0.54rem;
  border-radius: 999px;
  font-size: 0.47rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #fff;
  background: var(--lx-filter-accent);
  border: 1px solid color-mix(in srgb, var(--lx-filter-accent) 28%, transparent);
  box-shadow: 0 2px 12px color-mix(in srgb, var(--lx-filter-accent) 35%, transparent);
}
body.tienda-tpl-mitaller .lx-bento__tag {
  font-size: 0.7rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.12em;
  color: var(--lx-gold);
  margin-bottom: 0.4rem;
  display: flex; align-items: center; gap: 0.4rem;
}
body.tienda-tpl-mitaller .lx-bento__tag::before {
  content: ''; display: block;
  width: 14px; height: 2px;
  background: var(--lx-gold); border-radius: 1px;
}
body.tienda-tpl-mitaller .lx-bento__title {
  font-family: var(--lx-head);
  font-size: clamp(0.75rem, 1.5vw, 1.0125rem);
  font-weight: 700;
  line-height: 1.2;
  color: #fff;
  margin: 0;
}
body.tienda-tpl-mitaller .lx-bento__over .lx-bento__title {
  width: 100%;
}
body.tienda-tpl-mitaller .lx-bento__title a { color: inherit; text-decoration: none; }

/* Card cita */
body.tienda-tpl-mitaller .lx-bento__card--cita {
  background: linear-gradient(135deg, #111116 0%, #1c1c24 100%);
  display: flex; flex-direction: column; justify-content: space-between;
  padding: 1.5rem;
}
/* Cita al inicio del carrusel — azul + textos siempre claros + contenido ampliado */
body.tienda-tpl-mitaller .lx-bento__card--cita-promo {
  position: relative;
  overflow: hidden;
  justify-content: flex-start;
  gap: 0.55rem;
  background: linear-gradient(145deg, #1e3a8a 0%, #2563eb 42%, #3b82f6 100%) !important;
  border: 2px solid rgba(255, 255, 255, 0.28);
  box-shadow: 0 12px 40px rgba(37, 99, 235, 0.38);
  padding: 1.5rem 1.35rem 1.4rem;
}
body.tienda-tpl-mitaller .lx-bento__cita-deco {
  pointer-events: none;
  position: absolute;
  right: -22%;
  top: -18%;
  width: min(78%, 220px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 32%, rgba(255, 255, 255, 0.28) 0%, rgba(255, 255, 255, 0.06) 42%, transparent 68%);
  z-index: 0;
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo > *:not(.lx-bento__cita-deco) {
  position: relative;
  z-index: 1;
}
body.tienda-tpl-mitaller .lx-bento__cita-lead {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.93);
}
body.tienda-tpl-mitaller .lx-bento__cita-list {
  margin: 0;
  padding: 0 0 0 1.05rem;
  list-style: disc;
  font-size: 0.72rem;
  line-height: 1.42;
  color: rgba(255, 255, 255, 0.9);
  display: flex;
  flex-direction: column;
  gap: 0.32rem;
}
body.tienda-tpl-mitaller .lx-bento__cita-list li::marker {
  color: rgba(255, 255, 255, 0.45);
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__tag {
  color: rgba(255, 255, 255, 0.92);
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__tag::before {
  background: rgba(255, 255, 255, 0.85);
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__title {
  color: #fff;
  font-size: clamp(1.05rem, 2.2vw, 1.2rem);
  line-height: 1.25;
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__cita-icon {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__cita-link {
  margin-top: auto;
  padding-top: 0.4rem;
  color: #fff;
}
body.tienda-tpl-mitaller .lx-bento__card--cita-promo .lx-bento__cita-link:hover {
  color: rgba(255, 255, 255, 0.88);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card--cita-promo {
  box-shadow: 0 12px 36px rgba(37, 99, 235, 0.28);
}
body.tienda-tpl-mitaller .lx-bento__cita-top {
  display: flex; flex-direction: column; gap: 0.5rem;
}
body.tienda-tpl-mitaller .lx-bento__cita-icon {
  width: 44px; height: 44px;
  border-radius: var(--lx-r);
  background: var(--lx-gold-muted);
  border: 1px solid var(--lx-gold);
  display: flex; align-items: center; justify-content: center;
  color: var(--lx-gold);
}
body.tienda-tpl-mitaller .lx-bento__card--cita:not(.lx-bento__card--cita-promo) .lx-bento__tag {
  color: var(--lx-gold);
}
body.tienda-tpl-mitaller .lx-bento__card--cita:not(.lx-bento__card--cita-promo) .lx-bento__title {
  color: var(--lx-txt);
  font-size: 1rem;
}
body.tienda-tpl-mitaller .lx-bento__cita-link {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-size: 0.82rem; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase;
  color: var(--lx-gold); text-decoration: none;
  transition: gap var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-bento__cita-link:hover { gap: 0.75rem; }


/* ══════════════════════════════════════════════════════════
   8. SOBRE EL TALLER — texto + mapa (coordenadas configuración)
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-about {
  padding: 4rem 0;
  background: var(--lx-bg);
}
body.tienda-tpl-mitaller .lx-about__eyebrow {
  font-size: 0.73rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: var(--lx-gold);
  margin: 0 0 0.5rem;
}
body.tienda-tpl-mitaller .lx-about__title {
  font-family: var(--lx-head);
  font-size: clamp(1.45rem, 3vw, 2.05rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--lx-txt);
  margin: 0 0 0.65rem;
}
body.tienda-tpl-mitaller .lx-about__lead {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-about__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: clamp(1.25rem, 3vw, 2rem);
  align-items: stretch;
  padding-inline: var(--lx-px);
}
@media (max-width: 900px) {
  body.tienda-tpl-mitaller .lx-about__grid {
    grid-template-columns: 1fr;
  }
}
body.tienda-tpl-mitaller .lx-about__copy {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  justify-content: flex-start;
  align-self: start;
  max-width: 36rem;
}
body.tienda-tpl-mitaller .lx-about__block {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
body.tienda-tpl-mitaller .lx-about__lbl {
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-about__val {
  font-size: 0.95rem;
  color: var(--lx-txt);
  line-height: 1.5;
}
body.tienda-tpl-mitaller .lx-about__link {
  color: var(--lx-filter-accent);
  text-decoration: none;
  font-weight: 600;
}
body.tienda-tpl-mitaller .lx-about__link:hover {
  text-decoration: underline;
}
body.tienda-tpl-mitaller .lx-about__coords .lx-about__val {
  font-family: ui-monospace, monospace;
  font-size: 0.82rem;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-about__map-btn {
  align-self: flex-start;
  margin-top: 0.25rem;
}
body.tienda-tpl-mitaller .lx-about__map-wrap {
  border-radius: var(--lx-rl);
  overflow: hidden;
  border: 1px solid var(--lx-border2);
  background: var(--lx-sfc);
  min-height: 280px;
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-about__map-frame {
  display: block;
  width: 100%;
  height: min(420px, 55vh);
  min-height: 260px;
  border: 0;
}
body.tienda-tpl-mitaller .lx-about__gmap {
  width: 100%;
  height: min(420px, 55vh);
  min-height: 260px;
  border: 0;
  background: var(--lx-bg2);
}
body.tienda-tpl-mitaller .lx-about__map-inner--embed {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: min(420px, 55vh);
  border-radius: inherit;
  overflow: hidden;
}
[data-theme="dark"] body.tienda-tpl-mitaller .lx-about__map-inner--embed .lx-about__map-frame {
  filter: invert(0.9) hue-rotate(180deg) brightness(1.02) contrast(0.95);
}
body.tienda-tpl-mitaller .lx-about__map-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  background: var(--lx-bg2);
  color: var(--lx-filter-accent);
  font-weight: 700;
  text-decoration: none;
  transition: background var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-about__map-fallback:hover {
  background: var(--lx-sfc2);
}
body.tienda-tpl-mitaller .lx-about__map-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  padding: 1.5rem;
  text-align: center;
  font-size: 0.88rem;
  color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-about__map-inner--js {
  position: relative;
  width: 100%;
  min-height: min(420px, 55vh);
  overflow: hidden;
  border-radius: inherit;
}
body.tienda-tpl-mitaller .lx-about__highlights {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 2rem;
  padding-inline: var(--lx-px);
}
@media (max-width: 700px) {
  body.tienda-tpl-mitaller .lx-about__highlights {
    grid-template-columns: 1fr;
  }
}

/* ══════════════════════════════════════════════════════════
   (legacy) P&S cards — reutilizados en .lx-about__highlights
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-ps {
  padding: 4rem 0;
  background: var(--lx-bg);
}
body.tienda-tpl-mitaller .lx-ps__header {
  padding-inline: var(--lx-px);
  margin-bottom: 2rem;
}
body.tienda-tpl-mitaller .lx-ps__hashtag {
  font-size: 0.73rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.15em;
  color: var(--lx-txt3); margin-bottom: 0.75rem;
}
body.tienda-tpl-mitaller .lx-ps__title {
  font-family: var(--lx-head);
  font-size: clamp(1.4rem, 3vw, 2rem);
  font-weight: 700; line-height: 1.2;
  letter-spacing: -0.02em; color: var(--lx-txt); margin: 0;
}

body.tienda-tpl-mitaller .lx-ps__grid {
  padding-inline: var(--lx-px);
  display: grid;
  grid-template-rows: auto auto;
  gap: 1rem;
}
/* Imagen principal */
body.tienda-tpl-mitaller .lx-ps__img-wrap {
  border-radius: var(--lx-rl);
  overflow: hidden;
  aspect-ratio: 16/7;
  background: var(--lx-sfc);
}
@media (max-width: 600px) {
  body.tienda-tpl-mitaller .lx-ps__img-wrap { aspect-ratio: 4/3; }
}
body.tienda-tpl-mitaller .lx-ps__img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform 500ms var(--lx-ease);
}
body.tienda-tpl-mitaller .lx-ps__img-wrap:hover .lx-ps__img {
  transform: scale(1.02);
}

/* 2 cards lado a lado */
body.tienda-tpl-mitaller .lx-ps__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
@media (max-width: 480px) {
  body.tienda-tpl-mitaller .lx-ps__cards { grid-template-columns: 1fr; }
}
body.tienda-tpl-mitaller .lx-ps__card {
  border-radius: var(--lx-rl);
  padding: 1.75rem;
  display: flex; flex-direction: column; gap: 1rem;
  position: relative; overflow: hidden;
  min-height: 200px;
}
body.tienda-tpl-mitaller .lx-ps__card--problem {
  background: linear-gradient(135deg, rgba(180,30,30,0.18) 0%, rgba(30,0,0,0.6) 100%);
  border: 1px solid rgba(180,30,30,0.25);
}
body.tienda-tpl-mitaller .lx-ps__card--solution {
  background: linear-gradient(135deg, rgba(20,120,60,0.18) 0%, rgba(0,30,10,0.6) 100%);
  border: 1px solid rgba(20,120,60,0.25);
}
/* Glow de fondo */
body.tienda-tpl-mitaller .lx-ps__card::before {
  content: '';
  position: absolute; top: -40px; left: -40px;
  width: 140px; height: 140px;
  border-radius: 50%;
  filter: blur(50px); opacity: 0.3;
}
body.tienda-tpl-mitaller .lx-ps__card--problem::before { background: #ef4444; }
body.tienda-tpl-mitaller .lx-ps__card--solution::before { background: #22c55e; }

body.tienda-tpl-mitaller .lx-ps__ic {
  width: 40px; height: 40px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
}
body.tienda-tpl-mitaller .lx-ps__card--problem .lx-ps__ic { background: rgba(239,68,68,0.2); color: #ef4444; }
body.tienda-tpl-mitaller .lx-ps__card--solution .lx-ps__ic { background: rgba(34,197,94,0.2); color: #22c55e; }
body.tienda-tpl-mitaller .lx-ps__ic svg { width: 20px; height: 20px; }

body.tienda-tpl-mitaller .lx-ps__card-body { margin-top: auto; }
body.tienda-tpl-mitaller .lx-ps__card-title {
  font-size: 0.95rem; font-weight: 700;
  color: var(--lx-txt); margin: 0 0 0.4rem;
}
body.tienda-tpl-mitaller .lx-ps__card-text {
  font-size: 0.84rem; line-height: 1.6;
  color: var(--lx-txt2); margin: 0;
}


/* ══════════════════════════════════════════════════════════
   9. 3 BENEFICIOS
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-feats {
  padding: 4rem 0;
  border-top: 1px solid var(--lx-border);
  background: var(--lx-bg2);
}
body.tienda-tpl-mitaller .lx-feats__inner {
  padding-inline: var(--lx-px);
}
body.tienda-tpl-mitaller .lx-feats__shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr);
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: start;
}
@media (max-width: 960px) {
  body.tienda-tpl-mitaller .lx-feats__shell {
    grid-template-columns: 1fr;
  }
}
body.tienda-tpl-mitaller .lx-feats__intro {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  max-width: 32rem;
}
body.tienda-tpl-mitaller .lx-feats__intro .lx-section-title {
  margin: 0;
}
body.tienda-tpl-mitaller .lx-feats__lead {
  font-size: 0.9rem; line-height: 1.7; color: var(--lx-txt2); margin: 0;
}
body.tienda-tpl-mitaller .lx-feats__cta {
  align-self: flex-start;
  margin-top: 0.35rem;
}

body.tienda-tpl-mitaller .lx-feats__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
@media (max-width: 900px) {
  body.tienda-tpl-mitaller .lx-feats__grid {
    grid-template-columns: 1fr;
  }
}
body.tienda-tpl-mitaller .lx-feat {
  background: var(--lx-sfc);
  border: 1px solid var(--lx-border);
  border-radius: var(--lx-rl);
  padding: 1.75rem;
  display: flex; flex-direction: column; gap: 1rem;
  transition: border-color var(--lx-dur), box-shadow var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-feat:hover {
  border-color: var(--lx-gold);
  box-shadow: 0 0 0 1px var(--lx-gold-muted), var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-feat__ic {
  width: 52px; height: 52px;
  border-radius: var(--lx-r);
  background: var(--lx-gold-muted);
  border: 1px solid color-mix(in srgb, var(--lx-gold) 30%, transparent);
  display: flex; align-items: center; justify-content: center;
  color: var(--lx-gold);
  font-size: 0;
}
body.tienda-tpl-mitaller .lx-feat__ic svg { width: 22px; height: 22px; }
body.tienda-tpl-mitaller .lx-feat__title {
  font-size: 1rem; font-weight: 700; color: var(--lx-txt); margin: 0;
}
body.tienda-tpl-mitaller .lx-feat__body {
  font-size: 0.86rem; line-height: 1.65; color: var(--lx-txt2); margin: 0;
}


/* ══════════════════════════════════════════════════════════
  10. CTA FINAL INMERSIVO
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .lx-cta {
  position: relative;
  padding: clamp(4rem, 8vw, 7rem) 0;
  overflow: hidden;
  background: var(--lx-bg);
}
body.tienda-tpl-mitaller .lx-cta__bg {
  position: absolute; inset: 0; z-index: 0;
}
body.tienda-tpl-mitaller .lx-cta__bg img {
  width: 100%; height: 100%;
  object-fit: cover; opacity: 0.22;
  filter: grayscale(30%);
}
body.tienda-tpl-mitaller .lx-cta__overlay {
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(120deg, rgba(8,8,9,0.95) 30%, rgba(8,8,9,0.65) 100%);
}
body.tienda-tpl-mitaller .lx-cta__inner {
  position: relative; z-index: 2;
  padding-inline: var(--lx-px);
  max-width: 720px;
}
body.tienda-tpl-mitaller .lx-cta__title {
  font-family: var(--lx-head);
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 800; line-height: 1.05;
  letter-spacing: -0.025em;
  color: #fff; margin: 0 0 1rem;
}
body.tienda-tpl-mitaller .lx-cta__title em {
  font-style: normal; color: var(--lx-gold);
}
body.tienda-tpl-mitaller .lx-cta__lead {
  font-size: 1rem; line-height: 1.65;
  color: rgba(255,255,255,0.6);
  max-width: 42rem; margin: 0 0 2.5rem;
}
body.tienda-tpl-mitaller .lx-cta__btns {
  display: flex; flex-wrap: wrap; gap: 0.85rem;
}
/* Línea decorativa */
body.tienda-tpl-mitaller .lx-cta::before {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--lx-gold), transparent);
  z-index: 3; opacity: 0.5;
}


/* ══════════════════════════════════════════════════════════
  11. FOOTER
  Pie siempre oscuro: textos claros fijos (no usar --lx-txt del tema claro).
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller .vx-footer {
  background: #050506;
  border-top: 1px solid var(--lx-border);
  color: rgba(255, 255, 255, 0.88);
}
body.tienda-tpl-mitaller .vx-footer__top { background: transparent; }
body.tienda-tpl-mitaller .vx-footer__logo {
  font-family: var(--lx-head);
  font-size: 1rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.1em;
  color: #f5f5f7;
}
body.tienda-tpl-mitaller .vx-footer__heading {
  font-family: var(--lx-head);
  color: rgba(255, 255, 255, 0.95);
  font-size: 0.82rem;
  text-transform: uppercase; letter-spacing: 0.1em;
  font-weight: 700;
  background: transparent;
}
body.tienda-tpl-mitaller .vx-footer__tagline {
  color: rgba(255, 255, 255, 0.72);
}
body.tienda-tpl-mitaller .vx-footer__list a {
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.88rem;
}
body.tienda-tpl-mitaller .vx-footer__list a:hover {
  color: var(--lx-gold);
}
body.tienda-tpl-mitaller .vx-footer__wa {
  color: rgba(255, 255, 255, 0.9);
}
body.tienda-tpl-mitaller .vx-footer__bottom {
  background: rgba(0,0,0,0.5);
  border-top: 1px solid var(--lx-border);
}
body.tienda-tpl-mitaller .vx-footer__bottom-inner {
  flex-direction: column;
  align-items: center;
  gap: 0.65rem;
}
body.tienda-tpl-mitaller .vx-footer__legal {
  margin: 0;
  font-size: 0.86rem;
}
body.tienda-tpl-mitaller .vx-footer__legal a {
  color: rgba(255, 255, 255, 0.82);
  font-weight: 600;
  text-decoration: none;
}
body.tienda-tpl-mitaller .vx-footer__legal a:hover {
  color: var(--lx-gold);
  text-decoration: underline;
}
body.tienda-tpl-mitaller .vx-footer__legal-sep {
  color: rgba(255, 255, 255, 0.35);
}
body.tienda-tpl-mitaller .vx-footer__copy {
  color: rgba(255, 255, 255, 0.58);
  font-size: 0.85rem;
  margin: 0;
}

/* Logo footer img */
body.tienda-tpl-mitaller .vx-footer__logo img {
  filter: brightness(0) invert(1);
  opacity: 0.92;
  max-height: 28px;
}


/* ══════════════════════════════════════════════════════════
  12. MICRO-INTERACCIONES / UTILIDADES
══════════════════════════════════════════════════════════ */

/* Sección headings compartidos */
body.tienda-tpl-mitaller .lx-sh { padding-inline: var(--lx-px); margin-bottom: 2rem; }

/* Scroll-reveal */
@keyframes lx-fade-up {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}
body.tienda-tpl-mitaller [data-vx-reveal] {
  animation: lx-fade-up 0.5s var(--lx-ease) both;
}

/* Navbar scrolled JS helper */
body.tienda-tpl-mitaller .vx-store-head-fixed {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
}

/* WA float */
body.tienda-tpl-mitaller .vx-fab-wa {
  background: #25d366;
  box-shadow: 0 4px 20px rgba(37,211,102,0.4);
}


/* ══════════════════════════════════════════════════════════
  13. LIGHT MODE — inversión elegante
══════════════════════════════════════════════════════════ */
[data-theme="light"] body.tienda-tpl-mitaller {
  --lx-bg:      #ffffff;
  --lx-bg2:     #f4f4f6;
  --lx-bg3:     #ebebef;
  --lx-sfc:     #ffffff;
  --lx-sfc2:    #f5f5f7;
  --lx-border:  rgba(0,0,0,0.07);
  --lx-border2: rgba(0,0,0,0.13);
  --lx-txt:     #0a0a0f;
  --lx-txt2:    #5a5a65;
  --lx-txt3:    #9090a0;
  --lx-sh:      0 2px 12px rgba(0,0,0,0.06), 0 1px 3px rgba(0,0,0,0.04);
  --lx-shl:     0 8px 32px rgba(0,0,0,0.1), 0 2px 8px rgba(0,0,0,0.06);
  background: #ffffff;
}

[data-theme="light"] body.tienda-tpl-mitaller .lx-home {
  background: #ffffff;
}

[data-theme="light"] body.tienda-tpl-mitaller #tienda-main {
  background: #ffffff;
}

[data-theme="light"] body.tienda-tpl-mitaller .vx-nav-shell--store {
  background: rgba(255, 255, 255, 0.94);
  border-bottom-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-brand img {
  filter: none;
}
[data-theme="light"] body.tienda-tpl-mitaller .vx-footer__logo img {
  filter: brightness(0) invert(1);
  opacity: 0.9;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-hero__overlay {
  background: linear-gradient(180deg,
    rgba(255,255,255,0.5) 0%,
    rgba(255,255,255,0) 35%,
    rgba(255,255,255,0.85) 100%
  );
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-hero__bg-text {
  -webkit-text-stroke: 1px rgba(0,0,0,0.06);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-hero__title { color: #0a0a0f; }
[data-theme="light"] body.tienda-tpl-mitaller .lx-hero__lead { color: rgba(10,10,15,0.55); }
[data-theme="light"] body.tienda-tpl-mitaller .lx-btn--outline { color: #0a0a0f; border-color: rgba(0,0,0,0.3); }
[data-theme="light"] body.tienda-tpl-mitaller .lx-btn--outline:hover { background: rgba(0,0,0,0.05); }

[data-theme="light"] body.tienda-tpl-mitaller .lx-catalog {
  background: #ffffff;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card {
  background: #ffffff;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card:hover {
  background: #fafafa;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__price {
  color: #0a0a0f;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__img-wrap {
  background: linear-gradient(165deg, #fafafa 0%, #f0f0f3 100%);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__meta-stock--ok {
  background: rgba(34, 197, 94, 0.12);
  color: #15803d;
  border-color: rgba(34, 197, 94, 0.28);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__meta-stock--low {
  background: rgba(234, 88, 12, 0.1);
  color: #c2410c;
  border-color: rgba(234, 88, 12, 0.32);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__meta-stock--out {
  background: rgba(220, 38, 38, 0.08);
  color: #b91c1c;
  border-color: rgba(220, 38, 38, 0.28);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__pill {
  background: rgba(255,255,255,0.88);
  color: var(--lx-txt);
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__pill--accent {
  background: color-mix(in srgb, var(--lx-gold) 14%, #fff);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__fav {
  background: rgba(255,255,255,0.92);
  color: var(--lx-txt2);
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__add {
  background: #f4f4f6;
  color: #0a0a0f;
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__add:hover {
  background: #0a0a0f;
  color: #ffffff;
  border-color: #0a0a0f;
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-card__product-link {
  color: var(--lx-txt2);
  border-color: var(--lx-border2);
  background: #ffffff;
}

[data-theme="light"] body.tienda-tpl-mitaller .lx-ps__card--problem {
  background: rgba(255,240,240,0.8);
  border-color: rgba(239,68,68,0.2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-ps__card--solution {
  background: rgba(240,255,247,0.8);
  border-color: rgba(34,197,94,0.2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-ps__card-title { color: #0a0a0f; }
[data-theme="light"] body.tienda-tpl-mitaller .lx-ps__card-text { color: #5a5a65; }

[data-theme="light"] body.tienda-tpl-mitaller .lx-feat {
  background: #fff;
  border-color: var(--lx-border2);
}

[data-theme="light"] body.tienda-tpl-mitaller .lx-cta {
  background: var(--lx-bg);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-cta__overlay {
  background: linear-gradient(120deg, rgba(244,244,246,0.95) 30%, rgba(244,244,246,0.7) 100%);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-cta__title { color: #0a0a0f; }
[data-theme="light"] body.tienda-tpl-mitaller .lx-cta__lead { color: rgba(10,10,15,0.55); }

[data-theme="light"] body.tienda-tpl-mitaller .vx-footer { background: #1a1a20; }
[data-theme="light"] body.tienda-tpl-mitaller .vx-footer__bottom { background: rgba(0,0,0,0.3); }

[data-theme="light"] body.tienda-tpl-mitaller .lx-stats {
  background: #fff;
  border-color: var(--lx-border2);
}
@media (max-width: 640px) {
  [data-theme="light"] body.tienda-tpl-mitaller .lx-stats .lx-stat {
    background: transparent;
  }
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-feats { background: var(--lx-bg); }
[data-theme="light"] body.tienda-tpl-mitaller .lx-bento__card { background: var(--lx-sfc); }

[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-filter-card,
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-filter-toggle {
  background: #fff;
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-empty {
  background: #fafafa;
  border-color: var(--lx-border2);
}

/* Filtros: contraste por tema (texto + acento azul en controles) */
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-check,
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-check span {
  color: rgba(255, 255, 255, 0.92);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-check,
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-check span {
  color: #0a0a0f;
}
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-filter-card__title {
  color: rgba(255, 255, 255, 0.78);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-filter-card__title {
  color: rgba(10, 10, 15, 0.55);
}
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-price-lbl {
  color: rgba(255, 255, 255, 0.72);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-price-lbl {
  color: rgba(10, 10, 15, 0.55);
}
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-clear {
  color: rgba(255, 255, 255, 0.9);
  border-color: rgba(255, 255, 255, 0.22);
  background: var(--lx-sfc);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-mp-clear {
  color: #0a0a0f;
  border-color: var(--lx-border2);
  background: #fff;
}
[data-theme="dark"] body.tienda-tpl-mitaller .lx-mp-filter-toggle {
  color: rgba(255, 255, 255, 0.95);
}

/* ══════════════════════════════════════════════════════════
  13b. FICHA DE PRODUCTO (Mitaller — layout + compra)
══════════════════════════════════════════════════════════ */
body.tienda-tpl-mitaller.lx-page-product #tienda-main.lx-main-product {
  padding-bottom: 3rem;
  overflow-x: clip;
  max-width: 100%;
}
body.tienda-tpl-mitaller .lx-breadcrumbs {
  margin-bottom: 1.1rem;
}
body.tienda-tpl-mitaller .lx-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.88rem;
}
body.tienda-tpl-mitaller .lx-breadcrumbs__item {
  display: inline-flex;
  align-items: center;
  color: var(--lx-txt2);
  max-width: 100%;
}
body.tienda-tpl-mitaller .lx-breadcrumbs__item:not(:last-child)::after {
  content: '/';
  margin: 0 0.5rem;
  opacity: 0.35;
  font-weight: 500;
  color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-breadcrumbs__link {
  color: var(--lx-filter-accent);
  font-weight: 600;
  text-decoration: none;
  transition: opacity var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-breadcrumbs__link:hover {
  opacity: 0.88;
  text-decoration: underline;
}
body.tienda-tpl-mitaller .lx-breadcrumbs__item--current {
  color: var(--lx-txt);
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body.tienda-tpl-mitaller .vx-breadcrumbs {
  max-width: min(1760px, 100vw - 24px);
  margin-left: auto;
  margin-right: auto;
  padding: 0 clamp(12px, 2.2vw, 36px);
  margin-bottom: 0.75rem;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.86rem;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__item {
  display: inline-flex;
  align-items: center;
  color: var(--vx-text-tertiary, var(--lx-txt2));
  max-width: 100%;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__item:not(:last-child)::after {
  content: '/';
  margin: 0 0.45rem;
  opacity: 0.35;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__item a {
  color: var(--lx-filter-accent);
  font-weight: 600;
  text-decoration: none;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__item a:hover {
  text-decoration: underline;
}
body.tienda-tpl-mitaller .vx-breadcrumbs__item--current {
  color: var(--vx-text-primary, var(--lx-txt));
  font-weight: 600;
}
body.tienda-tpl-mitaller .lx-product-layout.vx-product-layout {
  max-width: none;
  margin: 0;
  gap: clamp(1.5rem, 3.8vw, 2.75rem);
  grid-template-columns: minmax(260px, 1fr) minmax(280px, 1.12fr);
  align-items: start;
}
/* Evita desbordamiento horizontal en celdas de grid comprimidas */
body.tienda-tpl-mitaller .lx-product-gallery.vx-product-gallery,
body.tienda-tpl-mitaller .lx-product-main.vx-product-main {
  min-width: 0;
}
/* Móvil / tablet: una columna (Mitaller tenía 2 columnas con minmax fijo y anulaba el 1fr responsive de tienda-vx-store.css) */
@media (max-width: 1024px) {
  body.tienda-tpl-mitaller .lx-product-layout.vx-product-layout {
    grid-template-columns: 1fr;
    gap: clamp(1rem, 4vw, 1.5rem);
  }
  body.tienda-tpl-mitaller .lx-product-gallery.vx-product-gallery {
    position: static;
    top: auto;
    width: 100%;
    max-width: min(440px, 100%);
    margin-left: auto;
    margin-right: auto;
  }
}
body.tienda-tpl-mitaller .lx-product-gallery.vx-product-gallery {
  top: calc(var(--vx-nav-height, 72px) + 14px);
}
body.tienda-tpl-mitaller .lx-product-gallery__main.vx-product-gallery__main {
  border-radius: var(--lx-rl);
  border: 1px solid var(--lx-border);
  background: var(--lx-sfc);
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-product-fav.vx-fav-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 6;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--lx-border2);
  background: color-mix(in srgb, var(--lx-sfc) 88%, transparent);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: var(--lx-txt2);
  box-shadow: var(--lx-sh);
  transition: color var(--lx-dur), border-color var(--lx-dur), transform var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-product-fav:hover {
  color: var(--lx-txt);
  border-color: var(--lx-border2);
}
body.tienda-tpl-mitaller .lx-product-fav.is-favorited {
  color: #ef4444;
  border-color: rgba(239, 68, 68, 0.35);
}
body.tienda-tpl-mitaller .lx-product-main.vx-product-main {
  padding-top: 0;
}
@keyframes lx-product-main-in {
  from { opacity: 0; transform: translateX(12px); }
  to { opacity: 1; transform: translateX(0); }
}
@media (prefers-reduced-motion: no-preference) {
  body.tienda-tpl-mitaller .lx-product-main.vx-product-main {
    animation: lx-product-main-in 0.48s var(--lx-ease) both;
  }
}
body.tienda-tpl-mitaller .lx-product-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem 0.65rem;
  margin-bottom: 0.6rem;
}
body.tienda-tpl-mitaller .lx-product-meta .tienda-product-code {
  margin: 0;
}
body.tienda-tpl-mitaller .lx-product-meta__sku {
  font-size: 0.7rem;
  padding: 0.32rem 0.72rem;
}
body.tienda-tpl-mitaller .lx-product-meta__stock {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.78rem;
  font-weight: 700;
  padding: 0.34rem 0.78rem;
  border-radius: 999px;
}
body.tienda-tpl-mitaller .lx-product-title.vx-h1 {
  font-family: var(--lx-head);
  font-size: clamp(1.42rem, 3vw, 2.05rem);
  line-height: 1.18;
  letter-spacing: -0.025em;
  margin: 0 0 0.75rem;
  color: var(--lx-txt);
}
body.tienda-tpl-mitaller .lx-product-price-wrap {
  margin-bottom: 1.15rem;
}
body.tienda-tpl-mitaller .lx-product-price.vx-product-price {
  font-family: var(--lx-head);
  font-size: clamp(1.55rem, 3.2vw, 2.2rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  margin: 0;
  line-height: 1.1;
  color: var(--lx-txt);
}
body.tienda-tpl-mitaller .lx-product-price--req {
  font-size: clamp(1.1rem, 2.2vw, 1.35rem) !important;
}
body.tienda-tpl-mitaller .lx-product-price-hint {
  margin: 0.45rem 0 0;
  font-size: 0.88rem;
  line-height: 1.45;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-product-desc {
  margin-bottom: 1.35rem;
  padding: 1rem 1.15rem 1.05rem;
  border-radius: var(--lx-rl);
  border: 1px solid var(--lx-border);
  background: color-mix(in srgb, var(--lx-sfc2) 75%, transparent);
}
body.tienda-tpl-mitaller .lx-product-desc__text {
  margin: 0;
  font-size: 0.94rem;
  line-height: 1.68;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-product-buy.vx-product-cart-card {
  margin-top: 0;
  padding: 1.25rem 1.35rem 1.35rem;
  border-radius: var(--lx-rl);
  border: 1px solid var(--lx-border);
  background: var(--lx-sfc);
  box-shadow: var(--lx-sh);
}
body.tienda-tpl-mitaller .lx-product-buy__heading {
  margin: 0 0 0.95rem;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-product-buy__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1rem 1.2rem;
}
body.tienda-tpl-mitaller .lx-product-buy__qty {
  display: flex;
  flex-direction: column;
  gap: 0.42rem;
  flex-shrink: 0;
}
body.tienda-tpl-mitaller .lx-product-buy__qty-label {
  cursor: pointer;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--lx-txt2);
}
body.tienda-tpl-mitaller .lx-product-stepper.vx-qty-stepper {
  border-radius: 999px;
  border-color: var(--lx-border2);
  background: color-mix(in srgb, var(--lx-bg2) 88%, transparent);
}
body.tienda-tpl-mitaller .lx-product-buy__actions.vx-product-cart-actions {
  flex: 1;
  min-width: min(100%, 240px);
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
body.tienda-tpl-mitaller .lx-product-add-btn.vx-btn.vx-product-cart-submit {
  flex: 1;
  min-height: 48px;
  border-radius: 999px;
  border: none;
  background: var(--lx-txt);
  color: var(--lx-sfc);
  font-weight: 700;
  font-size: 0.9rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0 1.25rem;
  box-shadow: var(--lx-sh);
  transition: transform var(--lx-dur) var(--lx-ease), box-shadow var(--lx-dur), filter var(--lx-dur);
}
body.tienda-tpl-mitaller .lx-product-add-btn:hover {
  transform: translateY(-2px);
  box-shadow: var(--lx-shl);
  filter: brightness(1.05);
  color: var(--lx-sfc);
}
body.tienda-tpl-mitaller .lx-product-guest-hint {
  margin: 1rem 0 0;
  text-align: center;
  font-size: 0.82rem;
  line-height: 1.45;
  color: var(--lx-txt3);
}
body.tienda-tpl-mitaller .lx-product-related.vx-related-products {
  margin-top: 3.25rem;
  padding-top: 2.5rem;
  border-top: 1px solid var(--lx-border);
}
body.tienda-tpl-mitaller .lx-product-related .vx-related-products__title {
  font-family: var(--lx-head);
  font-size: clamp(1.15rem, 2.2vw, 1.45rem);
  margin-bottom: 1.35rem;
  color: var(--lx-txt);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-product-fav.vx-fav-btn {
  background: rgba(255, 255, 255, 0.92);
  color: var(--lx-txt2);
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-product-desc {
  background: #f8f8fa;
  border-color: var(--lx-border2);
}
[data-theme="light"] body.tienda-tpl-mitaller .lx-product-buy.vx-product-cart-card {
  background: #fff;
  border-color: var(--lx-border2);
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
}
@media (max-width: 640px) {
  body.tienda-tpl-mitaller .lx-product-buy__row {
    flex-direction: column;
    align-items: stretch;
  }
  body.tienda-tpl-mitaller .lx-product-buy__actions.vx-product-cart-actions {
    min-width: 0;
    flex-direction: row;
    flex-wrap: wrap;
  }
  body.tienda-tpl-mitaller .lx-product-add-btn.vx-btn.vx-product-cart-submit {
    flex: 1 1 100%;
    min-width: 0;
  }
}

/* ══════════════════════════════════════════════════════════
  14. REDUCED MOTION
══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  body.tienda-tpl-mitaller *,
  body.tienda-tpl-mitaller *::before,
  body.tienda-tpl-mitaller *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
  body.tienda-tpl-mitaller .lx-featured-carousel__track {
    animation: none !important;
    transform: none !important;
  }
}
