/* SV CSS Maestro v1.1.3 | Generado automáticamente | No editar directamente */
/* ==========================================================
   SONIDOS VENEZUELA — COÑOOO 2.3 ULTRA-PREMIUM 2025
   RECONSTRUIDO LIMPIO — Marzo 2026
   Eliminados: bloques duplicados, código muerto, :root fragmentados
   Añadido: prefers-reduced-motion, scrollbar brand, accesibilidad
   ========================================================== */

:root {
  /* ── Brand ── */
  --sv-red: #E1251B;
  --sv-red-dark: #C71F16;
  --sv-green: #2e7d32;
  --sv-yellow: #ffc439;

  /* ── Surfaces ── */
  --sv-text: #111;
  --sv-muted: #6b7280;
  --sv-border: #e0e0e0;
  --sv-bg: #f8f9fa;
  --card-bg: #fff;

  /* ── Primitives ── */
  --radius: 20px;
  --shadow: 0 12px 36px rgba(0,0,0,.1);
  --hover-shadow: 0 20px 48px rgba(0,0,0,.15);
  --transition: all .3s cubic-bezier(.4,0,.2,1);
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* ── Focus ring (accesibilidad) ── */
  --sv-focus: 0 0 0 3px rgba(225, 37, 27, .35);

  /* ── Relacionados / OOS ── */
  --sv-rel-gap: 24px;
  --sv-rel-card-radius: 22px;
  --sv-rel-media-radius: 18px;
  --sv-rel-pad-x: 14px;
  --sv-rel-cta-mb: 18px;
  --sv-slot-minh: 92px;
  --sv-oos-bg: rgba(248,250,252,.98);
  --sv-oos-border: rgba(15,23,42,.22);
  --sv-oos-text: rgba(15,23,42,.72);
  --sv-rel-title-lines: 4;
  --sv-rel-title-lh: 1.15;

  /* ── Membresías ── */
  --svm-red: #ff2e2e;
  --svm-red-deep: #a80000;
  --svm-ink: #0b0b0b;
}


/* ==========================================================
   ACCESIBILIDAD — prefers-reduced-motion
   ========================================================== */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ==========================================================
   SCROLLBAR BRAND
   ========================================================== */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: var(--sv-bg);
}
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--sv-red), var(--sv-red-dark));
  border-radius: 999px;
  border: 2px solid var(--sv-bg);
}
::-webkit-scrollbar-thumb:hover {
  background: var(--sv-red-dark);
}
html {
  scrollbar-width: thin;
  scrollbar-color: var(--sv-red) var(--sv-bg);
}

/* ===== SONIDOS VENEZUELA — COÑOOO 2.3 ULTRA-PREMIUM 2025 (MOBILE DARK + FIX THUMBS) ===== */
/* === RESET GLOBAL === */
*{ box-sizing:border-box; }
html{
  scroll-behavior:smooth;
  overflow-x:hidden;
}
body{
  font-family:var(--font);
  background:#fff;
  color:var(--sv-text);
  line-height:1.6;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{
  font-weight:800;
  letter-spacing:-.5px;
  margin:0 0 12px;
}
a{
  color:var(--sv-red);
  text-decoration:none;
  transition:var(--transition);
}
a:hover{ color:var(--sv-red-dark); }

/* ==========================================================
   FONDO NEGRO SOLO EN MÓVIL (TIENDA Y CATEGORÍAS)
   ========================================================== */
@media (max-width:768px){
  body.woocommerce-shop,
  body.tax-product_cat,
  body.post-type-archive-product{
    background:#000!important;
  }
  .woocommerce-shop .site,
  .tax-product_cat .site,
  .post-type-archive-product .site,
  .woocommerce-shop .content-area,
  .tax-product_cat .content-area,
  .post-type-archive-product .content-area,
  .woocommerce-shop .site-main,
  .tax-product_cat .site-main,
  .post-type-archive-product .site-main{
    background:#000!important;
  }
  .woocommerce-products-header__title,
  .woocommerce-products-header h1,
  .woocommerce-products-header h2,
  .woocommerce-products-header p,
  .woocommerce-result-count{
    color:#f5f5f5!important;
  }
  .woocommerce-pagination a,
  .woocommerce-pagination span,
  .woocommerce-ordering select{
    color:#f5f5f5!important;
    border-color:#555!important;
    background:#000!important;
  }
}

/* ==========================================================
   TARJETAS PREMIUM
   ========================================================== */
.woocommerce ul.products li.product,
.related.products li.product{
  background:var(--card-bg)!important;
  border:1.5px solid var(--sv-border)!important;
  border-radius:var(--radius)!important;
  padding:0!important;
  box-shadow:var(--shadow)!important;
  transition:var(--transition)!important;
  overflow:hidden;
  text-align:center;
  position:relative;
  display:flex;
  flex-direction:column;
  height:100%;
}
.woocommerce ul.products li.product:hover,
.related.products li.product:hover{
  border-color:#c0c0c0!important;
  box-shadow:var(--hover-shadow)!important;
  transform:translateY(-8px)!important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.related.products li.product .woocommerce-loop-product__title{
  font-size:1.1em!important;
  font-weight:700!important;
  color:var(--sv-text)!important;
  margin:12px 0 8px!important;
  padding:0 16px;
  line-height:1.2;
}

/* ==========================================================
   IMAGEN FULL-BLEED
   ========================================================== */
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.related.products li.product .woocommerce-loop-product__link{
  display:block;
  margin:0!important;
  padding:0!important;
}
.woocommerce ul.products li.product a img,
.related.products li.product a img{
  width:100%!important;
  height:auto!important;
  object-fit:cover!important;
  border-radius:var(--radius) var(--radius) 0 0!important;
  display:block;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
  transition:var(--transition);
}
.woocommerce ul.products li.product:hover a img,
.related.products li.product:hover a img{
  transform:scale(1.03);
}

/* ==========================================================
   CHIP BCV GLOBAL
   ========================================================== */
.kv-bcv-dual{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:6px;
  background:#fff;
  color:var(--sv-text)!important;
  font-weight:800!important;
  font-size:1.1em!important;
  padding:10px 18px;
  border-radius:14px;
  border:2px solid #d0d0d0;
  box-shadow:0 6px 16px rgba(0,0,0,.08);
  margin:10px auto 8px!important;
  width:fit-content!important;
  min-width:240px;
  max-width:100%;
  box-sizing:border-box;
  transition:var(--transition);
  position:relative;
  white-space:nowrap;
}
.kv-bcv-dual::before{
  content:"";
}
.kv-bcv-dual del{
  color:#999;
  font-size:.95em;
  text-decoration:line-through;
  animation:pulse 2s infinite;
}
.kv-bcv-dual ins{
  color:var(--sv-red);
  font-weight:900;
  text-decoration:none;
}
.kv-bcv-dual .bs-text{
  color:#424242;
  font-weight:700;
  font-size:.95em;
}
@keyframes pulse{
  0%,100%{opacity:1;}
  50%{opacity:.7;}
}

/* ==========================================================
   CONTENEDOR PRECIO CATÁLOGO
   ========================================================== */
.woocommerce ul.products li.product .price{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
  background:#fff;
  border:2px solid #e0e0e0;
  border-radius:18px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  padding:10px 18px;
  margin:12px auto 14px;
  max-width:420px;
}
.woocommerce ul.products li.product .price del{
  display:block;
  color:#9ca3af;
  font-size:.95rem;
  font-weight:800;
}
.woocommerce ul.products li.product .price ins{
  display:block;
  color:#111;
  font-size:1.05rem;
  font-weight:900;
}
.woocommerce ul.products li.product .price > span:not(.kv-bcv-dual){
  display:block;
}
.woocommerce ul.products li.product .price .kv-bcv-dual{
  margin:0 0 0 auto;
  min-width:220px;
  font-size:.95rem!important;
  padding:8px 14px;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

/* ==========================================================
   SIN OFERTA = SOLO CHIP
   ========================================================== */
.woocommerce ul.products li.product .price:not(:has(del)) > :not(.kv-bcv-dual),
.related.products .price:not(:has(del)) > :not(.kv-bcv-dual){
  display:none!important;
}
.woocommerce ul.products li.product .price:not(:has(del)){
  justify-content:center;
}
.woocommerce ul.products li.product .price:not(:has(del)) .kv-bcv-dual{
  margin:0;
  width:100%;
  max-width:360px;
  justify-content:center;
}

/* ==========================================================
   FICHA DE PRODUCTO
   ========================================================== */
.single-product .summary.entry-summary{
  background:var(--card-bg)!important;
  border-radius:22px!important;
  box-shadow:0 14px 42px rgba(0,0,0,.12)!important;
  padding:26px 30px!important;
  margin-top:14px!important;
  text-align:center;
}
.single-product .product_title.entry-title{
  font-weight:900;
  font-size:1.45rem;
  line-height:1.1;
  color:#b52b1f;
  text-shadow:0 1.5px 3px rgba(0,0,0,.08);
  margin:14px auto 10px;
  max-width:750px;
}

.single-product .price{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  background:#fff;
  border:2px solid #d0d0d0;
  border-radius:14px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  padding:12px 22px;
  font-weight:900;
  color:#111;
  font-size:1.18rem;
  margin:12px auto 14px;
  gap:6px;
}
.single-product .price:not(:has(del)) > :not(.kv-bcv-dual){
  display:none!important;
}
.single-product .price:not(:has(del)){
  justify-content:center;
}
.single-product .price:not(:has(del)) .kv-bcv-dual{
  margin:0;
  width:100%;
  max-width:480px;
  justify-content:center;
}

/* Botón carrito */
.single-product .single_add_to_cart_button{
  width:100%;
  border-radius:14px;
  background:linear-gradient(135deg,#b52b1f,#d22c1b)!important;
  color:#fff!important;
  font-weight:800;
  text-transform:uppercase;
  padding:14px 18px;
  margin-top:10px;
  box-shadow:0 6px 18px rgba(181,43,31,.35);
  transition:var(--transition);
}
.single-product .single_add_to_cart_button:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(181,43,31,.45);
}

/* GALERÍA */
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image{
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  border-radius:var(--radius)!important;
}
.single-product .woocommerce-product-gallery img{
  width:100%!important;
  object-fit:cover;
  box-shadow:0 8px 24px rgba(0,0,0,.12);
}

/* Miniaturas */
.single-product .flex-control-nav{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin:10px auto 18px!important;
  padding:0!important;
  list-style:none!important;
}
.single-product .flex-control-nav img{
  width:66px!important;
  height:66px!important;
  object-fit:cover!important;
  border-radius:10px!important;
  border:1px solid #d4d4d4!important;
  box-shadow:0 2px 6px rgba(0,0,0,.16);
  opacity:.9;
  transition:var(--transition);
}
.single-product .flex-control-nav img:hover,
.single-product .flex-control-nav img.flex-active{
  opacity:1;
  border-color:var(--sv-red)!important;
  box-shadow:0 4px 10px rgba(225,37,27,.35);
}

/* Miniaturas móviles */
@media (max-width:768px){
  .single-product .flex-control-nav{
    padding:4px 8px!important;
    margin:14px auto 22px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .single-product .flex-control-nav::-webkit-scrollbar{
    display:none;
  }
}

/* ==========================================================
   MINI-CARRITO
   ========================================================== */
.widget_shopping_cart_content{
  background:#fff;
  border-radius:20px;
  box-shadow:0 12px 36px rgba(0,0,0,.15);
  padding:20px;
}
.woocommerce-mini-cart-item{
  border-bottom:1px solid #eee;
  padding:14px 0;
  display:flex;
  align-items:center;
  gap:12px;
}
.woocommerce-mini-cart-item img{
  width:64px;
  height:64px;
  border-radius:12px;
  object-fit:cover;
}
.woocommerce-mini-cart__total{
  font-weight:800;
  color:var(--sv-green);
  font-size:16px;
  margin-top:14px;
  padding-top:14px;
  border-top:2px solid #eee;
}

/* ==========================================================
   RESPONSIVE EXTRA
   ========================================================== */
@media (max-width:480px){
  .kv-bcv-dual{
    font-size:1.05em!important;
    padding:9px 15px;
    min-width:200px;
  }
}

/* ===== FIX PRECIO FICHA EN MÓVIL (QUE NO SE SALGA) ===== */
@media (max-width:768px){
  .single-product .price{
    flex-wrap:wrap;              /* permite que baje a otra línea */
    justify-content:center;
    box-sizing:border-box;
    padding:10px 14px;           /* un poco menos de padding lateral */
    max-width:100%;
  }

  /* Que el precio normal/oferta se centre y pueda ocupar todo el ancho */
  .single-product .price del,
  .single-product .price ins{
    width:100%;
    text-align:center;
  }

  /* El chip BCV abajo, ocupando todo el ancho sin salirse */
  .single-product .price .kv-bcv-dual{
    width:100%;
    max-width:100%;
    margin-top:6px;
    justify-content:center;
    font-size:clamp(.9rem,3.4vw,1.05rem);
  }
}

/* ==========================================================
   AJUSTES EXTRA PARA MÓVIL (PRECIO + DISTRIBUCIÓN)
   ========================================================== */

/* 1) Evitar que el chip de precio se salga en pantallas pequeñas */
@media (max-width:600px){

  /* Permitimos que el texto del chip US$ / Bs. haga salto de línea */
  .kv-bcv-dual{
    width:100%;
    min-width:0;
    white-space:normal;
    font-size:0.98em;
    padding:8px 10px;
  }

  .kv-bcv-dual > *{
    white-space:normal;
  }

  /* Contenedor de precio en la ficha: ocupa todo el ancho y se adapta */
  .single-product .price{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    padding:10px 14px;
    font-size:1rem;
    flex-wrap:wrap;
    justify-content:center;
  }

  .single-product .price del,
  .single-product .price ins{
    font-size:0.95rem;
  }
}

/* 2) Galería más ancha y tarjetas mejor distribuidas en móvil */
@media (max-width:768px){

  /* Hacer que el bloque blanco de la ficha tenga menos padding lateral */
  .single-product .summary.entry-summary{
    padding:20px 16px;
    margin-top:12px;
  }

  /* Galería casi a pantalla completa (ya tenías algo, lo reforzamos) */
  .single-product .woocommerce-product-gallery{
    width:100vw !important;
    max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    border-radius:0 !important;
  }

  /* Pequeño ajuste al título para que respire mejor en móvil */
  .single-product .product_title.entry-title{
    font-size:1.3rem;
    padding:0 16px;
  }
}

/* 3) Un pelín más compacto en móviles muy pequeños */
@media (max-width:400px){
  .kv-bcv-dual{
    font-size:0.92em;
  }
  .woocommerce ul.products li.product .price{
    padding:8px 10px;
    max-width:100%;
  }
}

/* ===== FIX: EVITAR QUE EL PRECIO + BCV SE SALGAN DEL CONTENEDOR ===== */

/* Permitir que el chip sea flexible y no obligado a 240px */
.kv-bcv-dual{
  min-width: auto !important;
  width: auto !important;
  max-width: 100% !important;
  flex-shrink: 1 !important;
}

/* Evitar desbordes del bloque de precio en catálogo */
.woocommerce ul.products li.product .price{
  flex-wrap: wrap !important;
  gap: 10px !important;
}

/* El precio viejo/nuevo también debe encoger si falta espacio */
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price ins{
  flex-shrink: 1 !important;
}

/* Chip BCV adaptado para pantallas medianas */
.woocommerce ul.products li.product .price .kv-bcv-dual{
  font-size: .90rem !important;
  padding: 6px 10px !important;
}

/* En pantallas menores a 430px, hacerlo 1 sola fila centrada */
@media (max-width:430px){
  .woocommerce ul.products li.product .price{
    flex-direction: column !important;
    text-align: center !important;
  }
  .woocommerce ul.products li.product .price .kv-bcv-dual{
    margin-left: 0 !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

/* === FICHA DE PRODUCTO: PRECIO EXACTO AL CATÁLOGO === */
.single-product .price{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:18px;
  background:#fff;
  border:2px solid #e0e0e0;
  border-radius:18px;
  box-shadow:0 6px 18px rgba(0,0,0,.08);
  padding:10px 18px;
  margin:16px auto 18px;
  max-width:420px;
  font-size:1.05rem;
}

/* Estilo del precio tachado y precio actual (igual catálogo) */
.single-product .price del{
  color:#9ca3af;
  font-size:.95rem;
  font-weight:800;
  text-decoration:line-through;
}
.single-product .price ins{
  color:#111;
  font-size:1.05rem;
  font-weight:900;
  text-decoration:none;
}

/* Mostrar el span normal si Woo lo envía */
.single-product .price > span:not(.kv-bcv-dual){
  display:block;
}

/* Chip BCV alineado a la derecha (igual al catálogo) */
.single-product .price .kv-bcv-dual{
  margin-left:auto;
  min-width:200px;
  padding:6px 14px;
  font-size:.95rem!important;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

/* === Si NO hay oferta → mostrar solo el chip centrado === */
.single-product .price:not(:has(del)) > :not(.kv-bcv-dual){
  display:none!important;
}
.single-product .price:not(:has(del)){
  justify-content:center;
}
.single-product .price:not(:has(del)) .kv-bcv-dual{
  margin:0;
  width:100%;
  max-width:360px;
}

/* === MÓVIL: apilar como el catálogo === */
@media (max-width:480px){
  .single-product .price{
    flex-direction:column;
    text-align:center;
  }
  .single-product .price .kv-bcv-dual{
    margin-left:0!important;
    width:100%!important;
    justify-content:center!important;
  }
}

/* === Centrar la tarjeta del precio en la ficha === */
.single-product .price{
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important;
}

/* En móviles asegurar también el centrado total */
@media (max-width:480px){
  .single-product .price{
    justify-content:center !important;
    align-items:center !important;
  }
}

/* === AJUSTE FINAL: FICHA DE PRODUCTO EN MÓVIL, ESTÉTICA TIPO CATÁLOGO === */
@media (max-width:600px){

  /* La caja blanca de la ficha un poco más compacta */
  .single-product .summary.entry-summary{
    padding:20px 16px !important;
  }

  /* Caja del precio igual de limpia que en el catálogo */
  .single-product .price{
    display:flex !important;
    flex-direction:column;       /* todo en columna como la tarjeta del listado */
    align-items:center;
    justify-content:center;
    text-align:center;
    max-width:420px;
    width:100%;
    padding:12px 18px;
    gap:6px;
    box-sizing:border-box;
  }

  /* Precio tachado y actual centrados y ocupando todo el ancho */
  .single-product .price del,
  .single-product .price ins{
    width:100%;
  }

  /* Chip BCV abajo, ocupando todo el ancho y bien centrado */
  .single-product .price .kv-bcv-dual{
    margin-left:0 !important;
    margin-top:4px;
    width:100% !important;
    max-width:100% !important;
    justify-content:center !important;
    font-size:0.95rem !important;
    padding:8px 12px !important;
  }
}

/* ==========================================================
   FICHA: SECCIÓN DESCRIPCIÓN MÁS LIMPIA Y CENTRADA
   ========================================================== */

/* Contenedor general de las pestañas (Descripción / Valoraciones) */
.single-product .woocommerce-tabs{
  max-width:1100px;
  margin:30px auto 50px;
  padding:0 16px;
}

/* Tarjeta blanca de la descripción */
.single-product .woocommerce-tabs .panel{
  background:#ffffff;
  border-radius:20px;
  box-shadow:0 12px 30px rgba(0,0,0,.06);
  padding:24px 32px;
}

/* Limitar el ancho del texto para que no quede tan largo */
.single-product .woocommerce-tabs .panel > *{
  max-width:800px;
  margin-left:auto;
  margin-right:auto;
}

/* Título "Descripción" */
.single-product .woocommerce-tabs h2{
  font-size:1.35rem;
  font-weight:800;
  color:#b52b1f;
  margin:0 0 14px;
  border-bottom:1px solid #f0f0f0;
  padding-bottom:6px;
}

/* Texto del cuerpo y listas */
.single-product .woocommerce-tabs p,
.single-product .woocommerce-tabs li{
  font-size:.96rem;
  line-height:1.7;
  color:#333333;
}

/* Listas un poco más ordenadas */
.single-product .woocommerce-tabs ul{
  margin:0 0 1em 1.2em;
  padding-left:0;
  list-style:disc;
}

/* --------- Versión móvil --------- */
@media (max-width:768px){
  .single-product .woocommerce-tabs .panel{
    padding:18px 16px;
    border-radius:16px;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
  }

  .single-product .woocommerce-tabs h2{
    font-size:1.2rem;
  }

  .single-product .woocommerce-tabs p,
  .single-product .woocommerce-tabs li{
    font-size:.94rem;
  }
}

/* === BORRAR LAS FIGURAS DIFUMINADAS BAJO LOS LOGOS (CATEGORÍAS) === */

/* Quitar cualquier background decorativo en el contenido de la categoría */
body.tax-product_cat .entry-content,
body.tax-product_cat .entry-content > div,
body.tax-product_cat .entry-content .kt-row-layout,
body.tax-product_cat .entry-content .kt-row-layout-inner{
    background-image:none !important;
}

/* Anular pseudo-elementos decorativos (las “columnas” de luz) */
body.tax-product_cat .entry-content::before,
body.tax-product_cat .entry-content::after,
body.tax-product_cat .entry-content .kt-row-layout::before,
body.tax-product_cat .entry-content .kt-row-layout::after,
body.tax-product_cat .entry-content .kt-row-layout-inner::before,
body.tax-product_cat .entry-content .kt-row-layout-inner::after{
    content:none !important;
    background:none !important;
    box-shadow:none !important;
}

/* Por si alguna forma cuelga por debajo del grid, recortamos el contenedor */
body.tax-product_cat ul.products{
    overflow:hidden !important;
}

/* === CATEGORÍAS: SOMBRA SUAVE SIN “MANCHA” ABAJO === */
body.tax-product_cat ul.products li.product-category {
    /* halo alrededor, no barra abajo */
    box-shadow: 0 0 20px rgba(0,0,0,0.07) !important;
    border-radius: 24px !important;
    border: 1px solid #e5e5e5 !important;
}

/* evitamos sombras extra dentro del enlace o la imagen */
body.tax-product_cat ul.products li.product-category a,
body.tax-product_cat ul.products li.product-category img {
    box-shadow: none !important;
}

/* ==========================================================
   SONIDOS VENEZUELA — CARRITO PREMIUM 2025
   Basado en COÑOOO 2.3 (mismas variables y estilo)
   ========================================================== */

/* -------- TABLA DEL CARRITO COMO TARJETA LIMPIA -------- */

.woocommerce-cart .woocommerce-cart-form table.shop_table {
  width:100%;
  border-collapse:separate;
  border-spacing:0 10px;              /* espacio entre filas */
  background:#fff;
  border:none;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}

/* Cabecera */
.woocommerce-cart .woocommerce-cart-form table.shop_table thead tr {
  background:#f5f5f5;
}
.woocommerce-cart .woocommerce-cart-form table.shop_table thead th {
  border:none;
  font-weight:700;
  color:#444;
  padding:14px 18px;
}

/* Filas */
.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item {
  background:#fff;
}
.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item td {
  border-top:1px solid #f0f0f0;
  padding:14px 18px;
  vertical-align:middle;
}

/* Sin borde en la primera fila */
.woocommerce-cart .woocommerce-cart-form table.shop_table tbody tr.cart_item:first-child td {
  border-top:none;
}

/* Miniatura producto */
.woocommerce-cart .product-thumbnail img {
  width:60px;
  height:60px;
  border-radius:12px;
  object-fit:cover;
  box-shadow:0 4px 10px rgba(0,0,0,.12);
}

/* Nombre producto */
.woocommerce-cart .product-name a {
  font-weight:700;
  color:#111;
}
.woocommerce-cart .product-name a:hover {
  color:var(--sv-red-dark);
}

/* Precio unitario */
.woocommerce-cart .product-price {
  font-weight:700;
  color:#111;
}

/* Cantidad */
.woocommerce-cart .product-quantity .qty {
  width:70px;
  padding:6px 8px;
  border-radius:10px;
  border:1px solid #d4d4d4;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,.05);
}

/* Botón eliminar */
.woocommerce-cart .product-remove a.remove {
  color:#e53935 !important;
  font-size:18px;
}
.woocommerce-cart .product-remove a.remove:hover {
  background:#ffe5e5;
  border-radius:50%;
}

/* -------- SUBTOTAL POR ÍTEM: CHIP TIPO “PÍLDORA” -------- */

.woocommerce-cart .product-subtotal {
  text-align:right;
}

/* Contenedor precio principal dentro de la celda */
.woocommerce-cart .product-subtotal .woocommerce-Price-amount {
  display:block;
  font-weight:800;
  font-size:0.95rem;
  margin-bottom:4px;
}

/* Chip BCV dentro del carrito (basado en tu ejemplo fino) */
.woocommerce-cart .product-subtotal .kv-bcv-dual {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;

  background:#ffffff !important;
  border:2px solid #e5e5e5 !important;
  border-radius:999px !important;

  padding:6px 16px !important;
  margin:2px 0 0 !important;

  box-shadow:0 4px 12px rgba(0,0,0,.08) !important;
  font-size:0.92rem !important;
  font-weight:800 !important;
  color:#111 !important;

  min-width:auto !important;
  max-width:100% !important;
  white-space:nowrap;
}

.woocommerce-cart .product-subtotal .kv-bcv-dual::before{
  content:none !important;  /* sin símbolo extra */
}

.woocommerce-cart .product-subtotal .kv-bcv-dual ins,
.woocommerce-cart .product-subtotal .kv-bcv-dual del{
  text-decoration:none !important;
  color:#111 !important;
  font-weight:800 !important;
}

.woocommerce-cart .product-subtotal .kv-bcv-dual .bs-text{
  color:#444 !important;
  font-weight:700 !important;
}

/* -------- FILA CUPÓN + BOTONES INFERIORES -------- */

.woocommerce-cart .actions {
  padding:16px 18px;
  border-top:1px solid #f0f0f0;
  background:#fafafa;
  border-radius:0 0 var(--radius) var(--radius);
}

/* Campo cupón */
.woocommerce-cart .actions .coupon .input-text {
  min-width:180px;
  padding:8px 10px;
  border-radius:10px;
  border:1px solid #d4d4d4;
}

/* Botones “Aplicar cupón” y “Actualizar carrito” */
.woocommerce-cart .actions .button {
  border-radius:999px;
  padding:9px 16px;
  font-weight:700;
  text-transform:uppercase;
  font-size:0.8rem;
}

/* -------- TARJETA DE TOTALES (COLUMNA DERECHA) -------- */

.woocommerce-cart .cart-collaterals .cart_totals {
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:20px 22px;
  border:1px solid var(--sv-border);
}

.woocommerce-cart .cart-collaterals .cart_totals h2 {
  font-size:1.1rem;
  font-weight:800;
  margin-bottom:14px;
}

/* Tabla de totales */
.woocommerce-cart .cart-collaterals .cart_totals table {
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.woocommerce-cart .cart-collaterals .cart_totals th,
.woocommerce-cart .cart-collaterals .cart_totals td {
  border:none;
  padding:6px 0;
  font-size:0.95rem;
}
.woocommerce-cart .cart-collaterals .cart_totals tr.order-total th,
.woocommerce-cart .cart-collaterals .cart_totals tr.order-total td {
  font-weight:800;
  font-size:1rem;
  border-top:1px solid #f0f0f0;
  padding-top:10px;
}

/* Total en Bs (BCV) resaltado */
.woocommerce-cart .cart-collaterals .cart_totals tr.bcv-total td,
.woocommerce-cart .cart-collaterals .cart_totals tr.bcv-total th{
  font-weight:800;
  color:#111;
}

/* -------- BOTÓN PAYPAL + PROCESAR PAGO -------- */

.woocommerce-cart .wc-proceed-to-checkout {
  margin-top:16px;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display:block;
  width:100%;
  text-align:center;
  border-radius:16px;
  background:linear-gradient(135deg,#ffb300,#ffc439)!important;
  color:#111!important;
  font-weight:800;
  padding:12px 18px;
  box-shadow:0 8px 20px rgba(0,0,0,.15);
  text-transform:uppercase;
}

/* Si hay botón de PayPal separado, darle mismo estilo de tarjeta */
.woocommerce-cart .paypal-button-container,
.woocommerce-cart .wc_paypalbutton {
  margin-top:10px;
}

/* -------- RESPONSIVE CARRITO -------- */

@media (max-width:1024px){
  .woocommerce-cart .woocommerce{
    display:block;
  }
  .woocommerce-cart .cart-collaterals {
    margin-top:20px;
  }
}

@media (max-width:768px){
  .woocommerce-cart .woocommerce-cart-form table.shop_table,
  .woocommerce-cart .cart-collaterals .cart_totals{
    box-shadow:0 8px 24px rgba(0,0,0,.10);
    border-radius:18px;
  }

  .woocommerce-cart .product-subtotal{
    text-align:left;
  }

  .woocommerce-cart .product-subtotal .kv-bcv-dual{
    margin-top:4px !important;
  }
}

/* SOLO cambiar color del texto del botón del catálogo */
.woocommerce ul.products li.product .button,
.related.products li.product .button{
    color: var(--sv-red) !important;
}

/* ==========================================================
   CATÁLOGO: BOTÓN SOLO LETRAS ROJAS (ESCRITORIO + MÓVIL)
   ========================================================== */

/* Listado de productos (tienda, categorías, archivos) */
body.woocommerce ul.products li.product a.button,
body.tax-product_cat ul.products li.product a.button,
body.post-type-archive-product ul.products li.product a.button{
  /* Quitamos cualquier burbuja/estilo anterior */
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;

  /* Solo texto */
  color: var(--sv-red) !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-size: 0.85rem;

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

  padding: 10px 0 !important;
  margin: 10px auto 0 !important;
  width: 100% !important;
  text-align: center;
}

/* Hover: rojo un poco más oscuro */
body.woocommerce ul.products li.product a.button:hover,
body.tax-product_cat ul.products li.product a.button:hover,
body.post-type-archive-product ul.products li.product a.button:hover{
  color: var(--sv-red-dark) !important;
  transform: translateY(-2px);
}

/* Ajuste ligero de tamaño en móviles muy pequeños */
@media (max-width:480px){
  body.woocommerce ul.products li.product a.button,
  body.tax-product_cat ul.products li.product a.button,
  body.post-type-archive-product ul.products li.product a.button{
    font-size: 0.80rem;
    padding: 10px 0 !important;
  }
}

/* ==========================================================
   BADGE ¡OFERTA! — colocado dentro de la IMAGEN del producto
   ========================================================== */

/* Tamaño pequeño y limpio */
.woocommerce span.onsale{
    font-size: 0.72rem !important;
    padding: 5px 10px !important;
    border-radius: 8px !important;
    line-height: 1.2 !important;
    z-index: 30 !important;
}

/* --- 1) LISTADO / CATEGORÍAS --- */
.woocommerce ul.products li.product .onsale{
    top: 10px !important;        /* Dentro del borde superior */
    right: 10px !important;      /* Pegado esquina */
    left: auto !important;
    position: absolute !important;
}

/* --- 2) FICHA DE PRODUCTO (single-product) --- */
.single-product .woocommerce-product-gallery .onsale{
    top: 12px !important;        /* Ligeramente más abajo para que no toque borde */
    right: 12px !important;
    left: auto !important;
    position: absolute !important;
    z-index: 50 !important;
}

/* --- Ajustes móviles --- */
@media (max-width:480px){
    .woocommerce span.onsale{
        font-size: 0.65rem !important;
        padding: 4px 8px !important;
    }

    .woocommerce ul.products li.product .onsale{
        top: 6px !important;
        right: 6px !important;
    }

    .single-product .woocommerce-product-gallery .onsale{
        top: 8px !important;
        right: 8px !important;
    }
}

/* ==========================================================
   MÓVIL — Ocultar lupita del zoom en ficha de producto
   ========================================================== */
@media (max-width: 768px){
  .single-product .woocommerce-product-gallery__trigger{
    display: none !important;
  }
}

/* ==========================================================
   MÓVIL — ¡Oferta! en la esquina superior derecha elegante
   ========================================================== */
@media (max-width: 768px){

    .single-product div.product .onsale{
        font-size: 0.75rem !important;
        padding: 5px 10px !important;
        border-radius: 10px !important;
        line-height: 1.2 !important;

        top: 14px !important;      /* ligeramente abajo para equilibrio visual */
        right: 14px !important;    /* pegado a la derecha, pero con un respiro */
        left: auto !important;

        z-index: 40 !important;
        opacity: 0.95;
    }

}

/* ==========================================================
   SINGLE PRODUCT — MÓVIL
   Badge ¡Oferta! pequeño dentro de la imagen (esquina)
   ========================================================== */
@media (max-width: 768px){

  /* Aseguramos que la galería sea el contenedor relativo */
  .single-product .woocommerce-product-gallery{
    position: relative !important;
  }

  /* Badge compacto dentro de la foto, arriba a la izquierda */
  .single-product div.product .onsale{
    font-size: 0.70rem !important;
    padding: 4px 8px !important;
    border-radius: 8px !important;
    line-height: 1.2 !important;

    top: 10px !important;     /* dentro de la imagen */
    left: 10px !important;    /* esquina izquierda */
    right: auto !important;

    z-index: 40 !important;
    opacity: 0.95;
  }
}

@media (max-width: 768px){
  body.single-product .woocommerce-product-gallery{
    position: relative !important;
  }

  body.single-product div.product .onsale{
    font-size: 0.70rem !important;
    padding: 4px 8px !important;
    border-radius: 8px !important;
    line-height: 1.2 !important;

    top: 4px !important;
    right: -4px !important;   /* ← MÁS A LA DERECHA */
    left: auto !important;

    z-index: 40 !important;
    opacity: 0.95;
  }
}

.woocommerce-product-gallery__wrapper .zoomImg {
    display: none !important;
}

.woocommerce-product-gallery__image a {
    pointer-events: auto !important;
}

/* ==========================================================
   PRECIO DUAL: UNA SOLA LÍNEA
   ========================================================== */
.kv-bcv-dual {
    display:inline-flex !important;
    align-items:center;
    gap:6px;
    white-space:nowrap !important;
}
.kv-bcv-dual del,
.kv-bcv-dual ins,
.kv-bcv-dual .bs-text {
    white-space:nowrap !important;
    display:inline-flex !important;
    align-items:center;
}

/* ==========================================================
   PASTILLAS DE SEDES (CARACAS / ARAGUA / ENVÍOS)
   ========================================================== */

/* Contenedor general */
.sv-tiendas-estado {
    margin:10px 0 14px;
    display:flex !important;
    flex-direction:column;
    align-items:center;
    gap:10px;
    width:100%;
}

/* Burbuja base (todas las sedes, incluyendo 24/7) */
.sv-sede-chip,
.sv-sede-chip-247 {
    position:relative;
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 22px;
    min-width:260px;
    max-width:560px;
    width:100%;
    background:#f3f4f6;
    border-radius:999px;
    box-shadow:0 2px 6px rgba(0,0,0,.08);
    font-size:14px;
    font-weight:600;
    line-height:1.1;
}

/* Zona izquierda: punto + nombre + disponibilidad */
.sv-sede-main {
    display:flex;
    align-items:center;
    gap:8px;
    flex:1 1 auto;
    min-width:0;
    color:#111827;
}

/* Punto gris */
.sv-sede-dot {
    width:10px;
    height:10px;
    border-radius:50%;
    background:#9e9e9e;
    flex-shrink:0;
}

/* Nombre perfectamente alineado (el truco principal) */
.sv-sede-label {
    display:inline-block;
    width:230px;            /* TODAS las sedes alineadas verticalmente */
    font-weight:700;
}

/* Texto de disponibilidad */
.sv-sede-main strong {
    margin-left:auto;
    white-space:nowrap;
    text-align:right;
    font-weight:700;
}

/* Colores según disponibilidad */
.sv-chip-stock-yes strong { color:#1e7d31; }
.sv-chip-stock-no strong  { color:#c62828; }

/* Pastilla derecha: “Abierta hoy”, “Cerrada hoy”, “24/7” */
.sv-sede-badge {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 18px;           /* mismo alto/espacio para TODAS */
    border-radius:999px;
    font-size:12px;
    font-weight:600;
    white-space:nowrap;
    min-width:110px;            /* MISMO ANCHO para TODAS las burbujas */
    text-align:center;
    flex-shrink:0;
}

/* Abierta hoy */
.sv-badge-open {
    background:#e7f8e9;
    color:#1e7d31;
}

/* Cerrada */
.sv-badge-closed {
    background:#ffebee;
    color:#c62828;
}

/* 24/7 — MISMO tamaño que Abierta hoy */
.sv-badge-247 {
    background:#e3f2fd !important;
    color:#1565c0 !important;
}

/* ==========================================================
   TOOLTIP (si está habilitado)
   ========================================================== */

.sv-sede-tooltip {
    position:absolute;
    left:50%;
    bottom:100%;
    transform:translate(-50%,-16px);
    max-width:640px;
    padding:16px 22px;
    border-radius:24px;
    background:#fff;
    box-shadow:0 22px 60px rgba(15,23,42,.25);
    font-size:14px;
    line-height:1.45;
    color:#111827;
    z-index:30;
    opacity:0;
    visibility:hidden;
    transition:opacity .18s ease, transform .18s ease;
}
.sv-sede-tooltip::before {
    content:"";
    position:absolute;
    left:50%;
    bottom:-10px;
    transform:translateX(-50%);
    border-width:10px 10px 0 10px;
    border-style:solid;
    border-color:#fff transparent transparent transparent;
}

.sv-sede-chip-envios { position:relative; }
.sv-sede-chip-envios .sv-sede-tooltip {
    width:100%;
    max-width:560px;
    border-radius:28px;
}
.sv-sede-chip-envios:hover .sv-sede-tooltip,
.sv-sede-chip-envios.sv-open .sv-sede-tooltip {
    opacity:1;
    visibility:visible;
    transform:translate(-50%,-10px);
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media (max-width:480px){
    .sv-sede-chip,
    .sv-sede-chip-247 {
        padding:10px 16px;
    }

    /* Alineación de nombres optimizada para móvil */
    .sv-sede-label {
        width:150px;   /* igual alineado pero más compacto */
    }

    .sv-sede-badge {
        min-width:100px;  /* burbuja proporcional pero igual tamaño */
    }
}

.sv-sede-chip-247 .sv-sede-label {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}
/* ==========================================================
   ANIMACIÓN GLOBAL — EFECTO FLOTAR SUAVE
   ========================================================== */
@keyframes sv-wa-float {
    0%   { transform: translateY(0); }
    50%  { transform: translateY(-6px); }
    100% { transform: translateY(0); }
}

/* ==========================================================
   BOTONES FLOTANTES (IA + WHATSAPP) — MISMO TAMAÑO
   ========================================================== */
.sv-whatsapp-button,
.sv-ia-button {
    position: fixed;
    right: 18px;
    bottom: 18px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex !important;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    z-index: 999999 !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.35);
    animation: sv-wa-float 3.2s ease-in-out infinite;
    transition: transform .2s ease, box-shadow .25s ease, border-color .25s ease;
    box-sizing: border-box;
}

/* --- Botón WhatsApp --- */
.sv-whatsapp-button {
    background: #25D366;
    border: none;
}
.sv-whatsapp-button img {
    width: 38px;
    height: 38px;
    pointer-events: none;
}
.sv-whatsapp-button:hover {
    animation: none;
    transform: translateY(-4px) scale(1.04);
    box-shadow: 0 14px 30px rgba(0,0,0,.45);
}

/* --- Botón IA --- */
.sv-ia-button {
    background: #ffffff;
    border: 2px solid #E1251B;
    bottom: 104px; /* posición vertical */
}
.sv-ia-button .sv-ia-label{
    display:block;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #C84621;
    text-shadow: 0 1px 0 rgba(255,255,255,.7);
}
.sv-ia-button:hover {
    animation: none;
    transform: translateY(-4px) scale(1.04);
    box-shadow:
        0 0 0 6px rgba(225, 37, 27, .18),
        0 16px 38px rgba(0, 0, 0, .65);
    border-color: #ff5a3c;
}

/* Estado chat IA abierto */
body.sv-chat-open .sv-ia-button {
    opacity: 0;
    pointer-events: none;
    transform: translateY(20px) scale(.9);
}
body.sv-chat-open .sv-whatsapp-button {
    transform: translateY(-6px);
}

/* ==========================================================
   CHAT IA — VENTANA
   ========================================================== */
.sv-chat-ia-window{
    position: fixed;
    bottom: 105px;
    right: 90px;
    width: 360px;
    max-width: 92vw;
    height: 520px;
    max-height: 80vh;
    background: #05060a;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(0,0,0,.55);
    border: 1px solid rgba(255,255,255,.06);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    z-index: 99997;
    transform: translateY(20px);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, transform .25s ease;
    box-sizing: border-box;
}
.sv-chat-ia-window.sv-open{
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Header */
.sv-chat-ia-header{
    background: #111827;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255,255,255,.06);
}
.sv-chat-ia-header-title{
    display:flex;
    flex-direction:column;
}
.sv-chat-ia-header-title strong{
    font-size: 14px;
    color: #f9fafb;
}
.sv-chat-ia-header-title span{
    font-size: 11px;
    color: #9ca3af;
}

/* Área mensajes */
.sv-chat-ia-messages{
    flex: 1;
    padding: 12px 10px 8px;
    overflow-y: auto;
    background: radial-gradient(circle at top left, #1f2937 0, #020617 42%);
}
.sv-chat-ia-messages::-webkit-scrollbar{
    width: 6px;
}
.sv-chat-ia-messages::-webkit-scrollbar-thumb{
    background: rgba(148,163,184,.7);
    border-radius: 999px;
}
.sv-msg{
    max-width: 86%;
    padding: 7px 10px;
    border-radius: 12px;
    font-size: 13px;
    margin-bottom: 6px;
    line-height:1.4;
}
.sv-msg.sv-user{
    margin-left: auto;
    background: #22c55e;
    color: #052e16;
    border-bottom-right-radius: 4px;
}
.sv-msg.sv-bot{
    margin-right: auto;
    background: rgba(15,23,42,.9);
    color: #e5e7eb;
    border-bottom-left-radius: 4px;
}

/* Mensaje de sistema */
.sv-msg.sv-system{
    margin: 8px auto;
    text-align: center;
    font-size: 11px;
    color: #9ca3af;
    background: transparent;
}

/* Input */
.sv-chat-ia-input{
    padding: 8px 10px;
    border-top: 1px solid rgba(255,255,255,.06);
    background: #020617;
    display: flex;
    gap: 6px;
    box-sizing:border-box;
}
.sv-chat-ia-input input{
    flex: 1;
    font-size: 13px;
    padding: 8px 10px;
    border-radius: 999px;
    border: 1px solid #4b5563;
    background: #020617;
    color: #e5e7eb;
}
.sv-chat-ia-input input::placeholder{
    color:#6b7280;
}
.sv-chat-ia-input button{
    border-radius: 999px;
    background: linear-gradient(135deg,#b52b1f,#e1251b);
    border: none;
    padding: 0 16px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    cursor:pointer;
    box-shadow: 0 6px 18px rgba(225,37,27,.45);
}
.sv-chat-ia-input.sv-disabled button{
    opacity:.6;
    cursor:default;
}

/* ==========================================================
   RESPONSIVE — MÓVILES (CHAT + BOTONES)
   ========================================================== */
@media (max-width:768px){
    .sv-whatsapp-button,
    .sv-ia-button {
        width: 58px;
        height: 58px;
        right: 14px;
    }
    .sv-whatsapp-button img { width: 30px; height: 30px; }
    .sv-ia-button{ bottom: 88px; }
    .sv-ia-button .sv-ia-label{ font-size:16px; }

    .sv-chat-ia-window{
        right: 8px;
        bottom: 86px;
        width: 94vw;
        height: 68vh;
        max-height:80vh;
        border-radius: 16px;
    }
}

/* ==========================================================
   ESTADOS DE TIENDA (CHIP)
   ========================================================== */
.sv-sede-estado {
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}
.sv-chip-open {
    background: #e6f8e9;
    color: #22863a;
}
.sv-chip-closed {
    background: #fde4e4;
    color: #b3261e;
}

/* ==========================================================
   TOOLTIP MODERNO — (VERSIÓN VIEJA, YA NO SE USA PERO NO ESTORBA)
   ========================================================== */
.sv-tooltip {
    position: relative;
    cursor:pointer;
}

.sv-tip-box {
    position: absolute;
    bottom: 110%;
    left: 50%;
    transform: translateX(-50%);
    background: #111827;
    color: #fff;
    padding: 9px 12px;
    font-size: 12px;
    border-radius: 8px;
    width: 240px;
    white-space: normal;
    box-shadow: 0 4px 15px rgba(0,0,0,.35);
    z-index: 999999;
    opacity: 0;
    visibility: hidden;
    transition: opacity .18s ease, transform .18s ease;
}
.sv-tooltip:hover .sv-tip-box {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -6px);
}
.sv-tip-box::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #111827 transparent transparent transparent;
}

/* En móvil para esa versión antigua */
@media (max-width:768px){
    .sv-tip-box{
        bottom:-10px !important;
        left:0;
        transform:none;
        width:85vw;
        max-width:330px;
        z-index:999999 !important;
    }
    .sv-tooltip.sv-open .sv-tip-box{
        opacity:1;
        visibility:visible;
    }
}

/* ==========================================================
   PRECIO FLOTANTE — MISMA VELOCIDAD QUE WHATSAPP / IA
   ========================================================== */
.single-product .summary.entry-summary .price{
    animation: sv-wa-float 3.2s ease-in-out infinite;
    will-change: transform;
}

/* Hover en escritorio: pausa y sube un poco */
@media (min-width:769px){
    .single-product .summary.entry-summary .price:hover{
        animation-play-state: paused;
        transform: translateY(-3px);
        box-shadow: 0 12px 28px rgba(0,0,0,.16);
    }
}

/* ==========================================================
   FICHA PRODUCTO — CANTIDAD + BOTÓN (BASE ESCRITORIO)
   ========================================================== */

/* Fila cantidad + botón */
.single-product form.cart {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    margin-top:18px;
    width:100%;
    flex-wrap:nowrap;
}

/* Bloque cantidad */
.single-product form.cart .quantity{
    margin:0 !important;
    flex:0 0 auto;
}

/* Input cantidad — escritorio */
.single-product form.cart .qty{
    width:88px;
    height:64px;
    border-radius:12px;
    border:1px solid #cdd4dd;
    font-size:22px;
    font-weight:600;
    text-align:center;
    color:#3f3f46;
    box-shadow:0 10px 26px rgba(0,0,0,.06);
    background:#ffffff;
    transition:all .25s ease;
    animation: sv-wa-float 3.2s ease-in-out infinite;
}

/* Foco cantidad */
.single-product form.cart .qty:focus{
    outline:none;
    border-color:#e1251b;
    box-shadow:0 0 0 2px rgba(225,37,27,.16);
}

/* Quitar flechas numéricas */
.single-product form.cart .qty::-webkit-outer-spin-button,
.single-product form.cart .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.single-product form.cart .qty[type=number] {
    -moz-appearance: textfield;
}

/* Botón añadir al carrito a la derecha */
.single-product .single_add_to_cart_button{
    flex:1 1 auto;
    max-width:420px;
    margin:0 !important;
}

/* ==========================================================
   SINGLE PRODUCT — MÓVIL
   ========================================================== */
@media (max-width:768px){

    .single-product form.cart{
        display:flex;
        flex-direction:row;
        align-items:center;
        justify-content:center;
        gap:10px;
        margin-top:14px;
        flex-wrap:nowrap;
        width:100%;
    }

    .single-product form.cart .qty{
        width:70px;
        height:46px;
        border-radius:14px;
        font-size:18px;
        box-shadow:0 4px 10px rgba(0,0,0,.06);
        padding:6px 4px;
    }

    .single-product .single_add_to_cart_button{
        flex:1 1 auto;
        width:auto;
        max-width:100%;
        padding:12px 14px;
        font-size:0.95rem;
        border-radius:14px;
        display:flex;
        align-items:center;
        justify-content:center;
    }
}

/* ==========================================================
   BOTÓN AÑADIR AL CARRITO FLOTANTE
   ========================================================== */
.single-product .single_add_to_cart_button{
    animation: sv-wa-float 3.2s ease-in-out infinite;
}

@media (min-width:769px){

    .single-product .single_add_to_cart_button{
        height: 64px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 32px;
    }

    .single-product .single_add_to_cart_button:hover{
        animation-play-state: paused;
        transform: translateY(-3px);
        box-shadow: 0 12px 28px rgba(0,0,0,.16);
    }
}

/* ==========================================================
   AVISO TIENDA CERRADA — POSICIÓN DEL BANNER
   ========================================================== */
body .woocommerce-store-notice,
body .woocommerce-store-notice.demo_store {
    position: fixed !important;
    left: 24px !important;
    right: 120px !important;
    bottom: 40px !important;
    z-index: 99990 !important;
}

@media (max-width: 768px) {
    body .woocommerce-store-notice,
    body .woocommerce-store-notice.demo_store {
        left: 16px !important;
        right: 90px !important;
        bottom: 110px !important;
    }
}

/* ==========================================================
   CUANDO EL AVISO ESTÁ ACTIVO — MOVER BURBUJAS
   ========================================================== */
body.woocommerce-store-notice-active .sv-whatsapp-button {
    bottom: 70px !important;
}
body.woocommerce-store-notice-active .sv-ia-button {
    bottom: 156px !important;
}

@media (max-width: 768px) {
    body.woocommerce-store-notice-active .sv-whatsapp-button {
        bottom: 140px !important;
    }
    body.woocommerce-store-notice-active .sv-ia-button {
        bottom: 220px !important;
    }
}

/* ==========================================================
   OVERRIDE PASTILLAS DE SEDES — TAMAÑO UNIFICADO
   ========================================================== */

/* Estilo base de cualquier badge de sede (mismo tamaño que Solo delivery) */
.sv-sede-badge,
.sv-badge-247 {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    padding:8px 22px !important;   /* tamaño chip pequeño */
    font-size:16px !important;
    font-weight:600;
    border-radius:32px;
    border:2px solid transparent;
    min-width:160px;               /* ancho mínimo común */
    text-align:center;
    white-space:nowrap;
    flex-shrink:0;
}

/* Solo delivery */
.sv-chip-delivery {
    background:#eddb8b !important;
    color:#6c5410 !important;
    border-color:#d4bf63 !important;
}

/* Abierta hoy – verde */
.sv-chip-open {
    background:#e6f8e9 !important;
    color:#22863a !important;
    border-color:#9ed3a1 !important;
}

/* Cerrada hoy – rojo */
.sv-chip-closed {
    background:#fdeaea !important;
    color:#a44433 !important;
    border-color:#e3b0a7 !important;
}

/* 24/7 – azul (MISMO ANCHO QUE LAS OTRAS, también en móvil) */
.sv-chip-247,
.sv-badge-247 {
    background:#e8f0ff !important;
    color:#2b4da8 !important;
    border-color:#c3d3ff !important;
    min-width:160px !important;
}

/* Texto de disponibilidad */
.sv-sede-stock {
    font-weight:600;
    padding:4px 10px;
    border-radius:8px;
}
.sv-stock-ok {
    background:#e6f8e9;
    color:#22863a;
    border:1px solid #b8e3c5;
}
.sv-stock-no {
    background:#fde4e4;
    color:#b3261e;
    border:1px solid #e5bebe;
}

/* Filas de sedes / envíos con mismo layout */
.sv-sede-chip,
.sv-sede-chip-247,
.sv-sede-chip-envios {
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 22px;
    min-width:260px;
    max-width:560px;
    width:100%;
    background:#f3f4f6;
    border-radius:999px;
    box-shadow:0 2px 6px rgba(0,0,0,.08);
    font-size:14px;
    font-weight:600;
}

.sv-sede-chip .sv-sede-label,
.sv-sede-chip-247 .sv-sede-label,
.sv-sede-chip-envios .sv-sede-label {
    display:inline-block;
    width:230px;
    font-weight:700;
}

/* ==========================================================
   AJUSTE MÓVIL — CENTRAR BURBUJAS
   ========================================================== */
@media (max-width:480px){

    /* Centrar contenedor en la pantalla */
    .sv-sede-chip,
    .sv-sede-chip-247,
    .sv-sede-chip-envios {
        margin: 0 auto;
        justify-content:center;
    }

    /* Label un poco más corto para que quepan los dos chips */
    .sv-sede-chip .sv-sede-label,
    .sv-sede-chip-247 .sv-sede-label,
    .sv-sede-chip-envios .sv-sede-label {
        width:140px !important;
    }

    /* MISMO ANCHO VISUAL para todos los chips,
       incluyendo 24/7 en móviles */
    .sv-chip-delivery,
    .sv-chip-open,
    .sv-chip-closed,
    .sv-chip-247,
    .sv-badge-247,
    .sv-sede-badge {
        min-width:160px !important;
    }
}

/* ==========================================================
   FIX CHAT IA — TEXTO VISIBLE EN EL INPUT
   ========================================================== */
.sv-chat-ia-input input{
    background:#020617 !important;
    color:#f9fafb !important;
    -webkit-text-fill-color:#f9fafb !important;
    caret-color:#f97316 !important;
}
.sv-chat-ia-input input::placeholder{
    color:#6b7280 !important;
}
.sv-chat-ia-input input::selection{
    background:#f97316;
    color:#020617;
}

/* ==========================================================
   TOOLTIP GENERAL SOBRE LOS CHIPS (SOLO UNO A LA VEZ)
   ========================================================== */
.sv-sede-badge[data-tip] {
    position:relative;
    cursor:pointer;
}

/* Estado inicial oculto */
.sv-sede-badge[data-tip]::after,
.sv-sede-badge[data-tip]::before {
    opacity:0;
    visibility:hidden;
    transition:opacity .2s ease, visibility .2s ease;
}

/* Globito */
.sv-sede-badge[data-tip]::after {
    content:attr(data-tip);
    position:absolute;
    bottom:calc(100% + 10px);
    left:50%;
    transform:translateX(-50%);
    padding:10px 18px;
    background:#111827;
    color:#ffffff;
    border-radius:12px;
    white-space:nowrap;
    font-size:15px;
    font-weight:600;
    box-shadow:0 6px 16px rgba(0,0,0,.28);
    z-index:99;
}

/* Flechita */
.sv-sede-badge[data-tip]::before {
    content:"";
    position:absolute;
    bottom:100%;
    left:50%;
    transform:translateX(-50%);
    border-width:10px;
    border-style:solid;
    border-color:#111827 transparent transparent transparent;
    z-index:98;
}

/* Mostrar SOLO el tooltip del chip en hover */
.sv-sede-badge[data-tip]:hover::after,
.sv-sede-badge[data-tip]:hover::before {
    opacity:1;
    visibility:visible;
}

/* Solo un tooltip activo por fila */
.sv-sede-chip:hover .sv-sede-badge[data-tip]:not(:hover)::after,
.sv-sede-chip:hover .sv-sede-badge[data-tip]:not(:hover)::before,
.sv-sede-chip-247:hover .sv-sede-badge[data-tip]:not(:hover)::after,
.sv-sede-chip-247:hover .sv-sede-badge[data-tip]:not(:hover)::before,
.sv-sede-chip-envios:hover .sv-sede-badge[data-tip]:not(:hover)::after,
.sv-sede-chip-envios:hover .sv-sede-badge[data-tip]:not(:hover)::before {
    opacity:0;
    visibility:hidden;
}

/* Evita tooltips en el label (Caracas:, Cagua:, etc.) */
.sv-sede-chip .sv-sede-label,
.sv-sede-chip-247 .sv-sede-label,
.sv-sede-chip-envios .sv-sede-label {
    pointer-events: none !important;
}

/* =======================================================
   SONIDOS VENEZUELA — PRECIO PREMIUM PERFECTO
   (Altura fija, solo crece hacia los lados)
   ======================================================= */

/* Contenedor externo */
.sv-price-box {
    max-width: 750px;            /* ancho perfecto */
    margin: 25px auto;
    padding: 22px 35px;          /* solo lados */
    background: #ffffff;
    border-radius: 22px;
    border: 2px solid #e5e5e5;
    box-shadow: 0 8px 28px rgba(0,0,0,0.08);
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Burbuja interna (precio real) */
.sv-price-inner {
    padding: 16px 38px;          /* solo expande lados */
    background: #ffffff;
    border-radius: 18px;
    border: 2px solid #d8d8d8;
    font-size: 24px;             /* tamaño ideal */
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #222;
}

/* Adaptación móvil */
@media (max-width: 768px) {
    .sv-price-box {
        max-width: 92%;
        padding: 18px 22px;
    }

    .sv-price-inner {
        font-size: 20px;
        padding: 14px 28px;      /* no aumenta altura */
    }
}

/* ==========================================================
   [1502+] SONIDOS VENEZUELA — PACK PREMIUM (CENTRADO)
   ========================================================== */

/* ==========================================================
   1) PRECIO DUAL ULTRA PREMIUM (US$ + Bs) — BASE
   ========================================================== */

.kv-bcv-dual{
    display:flex;
    align-items:center;
    gap:10px;
    font-family:inherit;
}

/* Precio fuerte (US$) */
.kv-bcv-dual ins{
    font-size:24px;
    font-weight:700;
    color:var(--sv-red, #e1251b);
    text-decoration:none !important;
    letter-spacing:-0.3px;
}

/* Precio tachado dentro del dual (por si acaso) */
.kv-bcv-dual del{
    font-size:16px;
    opacity:.55;
    text-decoration:line-through;
    margin-right:6px;
}

/* Precio en bolívares */
.kv-bcv-dual .bs-text{
    font-size:17px;
    color:#333;
    font-weight:600;
    opacity:.9;
    padding:2px 10px;
    background:#f5f5f5;
    border-radius:999px;
    letter-spacing:-0.2px;
    display:inline-flex;
    align-items:center;
    gap:4px;
}

/* Iconito 🇻🇪 */
.kv-bcv-dual .bs-text::before{
    content:"🇻🇪";
    font-size:16px;
}

/* Ajuste global en móvil */
@media (max-width:768px){
    .kv-bcv-dual{
        gap:8px;
        flex-wrap:nowrap;
    }
    .kv-bcv-dual ins{
        font-size:20px;
    }
    .kv-bcv-dual .bs-text{
        font-size:15px;
        padding:2px 8px;
    }
}

/* ==========================================================
   2) GLOBOS TOOLTIP "FUERA DEL HORARIO" (Tooltipster)
   ========================================================== */
.single-product .tooltipster-base{
    background:#111827 !important;
    color:#ffffff !important;
    font-size:13px !important;
    padding:6px 10px !important;
    border-radius:10px !important;
    box-shadow:0 4px 14px rgba(0,0,0,.25) !important;
    max-width:180px !important;
}
.single-product .tooltipster-base .tooltipster-content{
    padding:0 !important;
}
.single-product .tooltipster-base .tooltipster-arrow{
    transform:scale(.75);
}

/* ==========================================================
   3) BARRA AVISO TIENDA CERRADA — ESTILO PREMIUM
   ========================================================== */
body .woocommerce-store-notice,
body .woocommerce-store-notice.demo_store{
    background:rgba(0,0,0,.78) !important;
    color:#f9fafb !important;
    font-size:13px !important;
    line-height:1.3;
    padding:10px 14px !important;
    border-radius:12px !important;
    box-shadow:0 6px 20px rgba(0,0,0,.35) !important;
    backdrop-filter:blur(3px);
    display:flex;
    align-items:center;
    gap:10px;
}

/* Chip "TIENDA ABIERTA / CERRADA" */
body .woocommerce-store-notice .sv-open-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:2px 8px;
    border-radius:8px;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.04em;
    background:#16a34a;
    color:#ecfdf3;
}
body .woocommerce-store-notice .sv-open-tag.sv-closed{
    background:#b91c1c;
    color:#fee2e2;
}

@media (max-width:768px){
    body .woocommerce-store-notice,
    body .woocommerce-store-notice.demo_store{
        font-size:12px !important;
        padding:8px 10px !important;
        border-radius:10px !important;
    }
}

/* ==========================================================
   4) EFECTO PREMIUM EN FOTOS DE PRODUCTO
   ========================================================== */
.woocommerce div.product div.images img,
.woocommerce ul.products li.product img{
    transition:transform .35s ease, box-shadow .35s ease;
    border-radius:8px;
}
@media (hover:hover){
    .woocommerce div.product div.images:hover img,
    .woocommerce ul.products li.product:hover img{
        transform:scale(1.06);
        box-shadow:0 12px 28px rgba(0,0,0,.18);
    }
}

/* ==========================================================
   5) CATÁLOGO MÓVIL — IMAGEN PROPORCIONAL Y CENTRADA
   ========================================================== */
@media (max-width: 768px){

    .woocommerce ul.products li.product {
        max-width: 420px;
        margin-left: auto;
        margin-right: auto;
    }

    .woocommerce ul.products li.product a img,
    .woocommerce ul.products li.product img {
        width: 100%;
        max-width: 360px;
        height: auto;
        display: block;
        margin: 0 auto 10px auto;
        border-radius: 18px;
        object-fit: contain;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product .price {
        text-align: center;
    }
}

/* ==========================================================
   6) PÁGINA DE MARCAS — SIN MÁRGENES LATERALES EN MÓVIL
   ========================================================== */
@media (max-width: 768px){

    .content-area,
    .entry-content,
    .site-container,
    .kt-container,
    .wp-site-blocks {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
    }

    .woocommerce ul.products {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }

    .woocommerce ul.products li.product {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .woocommerce ul.products li.product img {
        width: 100% !important;
        max-width: 100% !important;
        border-radius: 0 !important;
        height: auto !important;
        object-fit: contain !important;
    }
}

/* ==========================================================
   7) ALTURA UNIFICADA — CHIPS DE SEDES
   ========================================================== */
@media (max-width: 768px){

    .sv-sede-chip,
    .sv-sede-chip-247,
    .sv-sede-chip-envios{
        min-height: 62px !important;
        align-items: center !important;
    }

    .sv-sede-label{
        display: flex;
        align-items: center;
    }

    .sv-sede-badge{
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

/* ==========================================================
   8) SINGLE PRODUCT — PRECIO BONITO
   ========================================================== */

.single-product .summary.entry-summary .price{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:12px 20px;
    margin:18px auto 10px;
    background:#ffffff;
    border-radius:18px;
    border:2px solid #e5e5e5;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
    width:100%;
    max-width:420px;
    text-align:center;
    box-sizing:border-box;
    animation:sv-wa-float 3.2s ease-in-out infinite;
}

.single-product .summary.entry-summary .price > *{
    display:inline-flex;
    align-items:center;
}

.single-product .summary.entry-summary .price del{
    font-size:0.95rem;
    opacity:0.7;
    margin-right:4px;
}

.single-product .summary.entry-summary .price .kv-bcv-dual{
    gap:8px;
}

@media (min-width:769px){
    .single-product .summary.entry-summary .price:hover{
        animation-play-state:paused;
        transform:translateY(-3px);
        box-shadow:0 12px 28px rgba(0,0,0,.16);
    }
}

@media (max-width:768px){

    .single-product .summary.entry-summary .price{
        padding:10px 14px;
        margin-top:14px;
        gap:8px;
    }

    .single-product .summary.entry-summary .price del{
        font-size:0.9rem;
    }

    .single-product .summary.entry-summary .price .kv-bcv-dual ins{
        font-size:1rem;
    }

    .single-product .summary.entry-summary .price .kv-bcv-dual .bs-text{
        font-size:0.9rem;
        padding:2px 8px;
    }
}

/* ==========================================================
   UNIFICAR “SÍ DISPONIBLE” — TODAS LAS SEDES
   ========================================================== */
.sv-sede-stock {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    padding:6px 14px;
    border-radius:999px;
    min-width:140px;
    max-width:140px;
    white-space:nowrap;
    box-sizing:border-box;
    text-align:center;
}

@media (max-width:480px){
    .sv-sede-stock{
        min-width:130px;
        max-width:130px;
        font-size:15px;
    }
}

/* =====================================================
   HOME / ARCHIVE CAR AUDIO — TARJETAS + FOTOS
   ===================================================== */

body.post-type-archive-product .products .product,
body.tax-product_cat .products .product,
body.search .products .product {
    background:#ffffff;
    border-radius:26px;
    padding:14px 14px 18px;
    margin:0 0 18px;
    box-shadow:0 10px 28px rgba(0,0,0,0.07);
    overflow:hidden;
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
    width:100%;
    max-width:100%;
    height:190px;
    object-fit:contain;
    display:block;
    margin:0 auto 10px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    text-align:center;
    font-size:17px;
    line-height:1.3;
    font-weight:700;
    margin:8px 6px 10px;
    min-height:2.6em;
}

.woocommerce ul.products li.product .kv-bcv-box{
    max-width:290px;
    margin:0 auto 0;
}

.woocommerce ul.products li.product .kv-bcv-dual{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    width:100%;
}

.woocommerce ul.products li.product .kv-bcv-dual del{
    font-size:13px;
    opacity:0.6;
    margin-right:4px;
}

@media (max-width:768px){
    body.post-type-archive-product .products,
    body.tax-product_cat .products,
    body.search .products {
        padding-left:8px;
        padding-right:8px;
    }
}

/* ==========================================================
   PRODUCTOS RELACIONADOS — SONIDOS VENEZUELA PRO
   Precio normal + oferta centrada en una línea + Bs centrado
   ========================================================== */

.single-product .related.products{
    max-width: 1350px !important;
    margin: 40px auto 10px !important;
    padding: 0 10px !important;
}

.single-product .related.products > h2{
    text-align: center !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    margin-bottom: 24px !important;
    color: #111 !important;
}

.related.products ul.products{
    display: flex !important;
    justify-content: center !important;
    gap: 26px !important;
    flex-wrap: wrap !important;
    padding: 0 !important;
    margin: 0 auto !important;
    max-width: 1500px !important;
}

.related.products ul.products li.product{
    background: #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 6px 28px rgba(0,0,0,0.09) !important;
    overflow: hidden !important;
    padding: 0 !important;
    width: 320px !important;
    min-height: 575px !important;
    display: flex !important;
    flex-direction: column !important;
    transition: .25s ease;
}

.related.products ul.products li.product img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
}

.related.products ul.products li.product .woocommerce-loop-product__title{
    font-size: 17px !important;
    font-weight: 700 !important;
    text-align: center !important;
    line-height: 1.22em !important;
    min-height: 4.9em !important;
    max-height: 4.9em !important;
    overflow: hidden !important;
    margin: 12px 10px 8px !important;
    padding: 0 !important;
}

/* BLOQUE DE PRECIO */
.related.products ul.products li.product .kv-bcv-box,
.single-product .related ul.products li.product .kv-bcv-box{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 10px auto 16px auto !important;
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
    min-height: 96px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* CHIP INTERNO */
.related.products ul.products li.product .kv-bcv-dual,
.single-product .related ul.products li.product .kv-bcv-dual{
    background: #ffffff !important;
    padding: 8px 10px !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.08) !important;
    border: 2px solid #d8d8d8 !important;

    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 4px 10px !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 72px !important;

    white-space: normal !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* PRECIO TACHADO + PRECIO OFERTA EN LA MISMA LÍNEA */
.related.products ul.products li.product .kv-bcv-dual del,
.single-product .related ul.products li.product .kv-bcv-dual del{
    order: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    margin: 0 !important;

    color: #b7bbc3 !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: line-through !important;
    opacity: 1 !important;
    white-space: nowrap !important;
}

.related.products ul.products li.product .kv-bcv-dual ins,
.single-product .related ul.products li.product .kv-bcv-dual ins{
    order: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    margin: 0 !important;

    color: #111 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* PRECIO NORMAL SIN OFERTA */
.related.products ul.products li.product .kv-bcv-dual > .woocommerce-Price-amount,
.single-product .related ul.products li.product .kv-bcv-dual > .woocommerce-Price-amount{
    order: 1 !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    margin: 0 auto !important;

    color: #111 !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
}

/* Bs + BCV EURO CENTRADO DEBAJO */
.related.products ul.products li.product .kv-bcv-dual .bs-text,
.single-product .related ul.products li.product .kv-bcv-dual .bs-text,
.related.products ul.products li.product .kv-bcv-dual .sv-price-bs,
.single-product .related ul.products li.product .kv-bcv-dual .sv-price-bs{
    order: 3 !important;
    flex: 0 0 auto !important;
    width: fit-content !important;
    max-width: 100% !important;

    display: inline-flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;

    margin: 2px auto 0 auto !important;

    font-size: 11.5px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -0.25px !important;

    padding: 5px 8px !important;
    border-radius: 999px !important;

    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    box-sizing: border-box !important;
}

.related.products ul.products li.product .kv-bcv-dual .sv-bcv-tag,
.single-product .related ul.products li.product .kv-bcv-dual .sv-bcv-tag{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    font-size: 7.5px !important;
    line-height: 1 !important;
    padding: 3px 5px !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
}

/* BOTÓN */
.related.products ul.products li.product a.button{
    margin-top: auto !important;
    margin-bottom: 20px !important;
    font-weight: 700 !important;
    display: flex !important;
    justify-content: center !important;
    width: fit-content !important;
    color: #cb3b00 !important;
}

/* MÓVIL */
@media(max-width:768px){
    .related.products ul.products{
        flex-direction: column !important;
        align-items: center !important;
        gap: 20px !important;
    }

    .related.products ul.products li.product{
        width: 100% !important;
        max-width: 380px !important;
        min-height: auto !important;
    }

    .related.products ul.products li.product img{
        width: 100% !important;
        object-fit: contain !important;
    }
}





/* ===========================================================
   8) SINGLE PRODUCT — TARJETA DE DESCRIPCIÓN PREMIUM
   Ancho similar al bloque de producto + máximo espacio útil
   =========================================================== */

/* --- Base general (móvil + escritorio) --- */
.single-product .woocommerce-Tabs-panel{
    background: #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 14px 36px rgba(0,0,0,0.12) !important;

    /* margen interno base (pequeño) */
    padding: 28px 18px 32px 18px !important;

    margin-top: 0 !important;
    box-sizing: border-box;
}

/* Título "Descripción" */
.single-product .woocommerce-Tabs-panel h2,
.single-product .wc-tab h2{
    margin-top: 0 !important;
    margin-bottom: 22px !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #b54322 !important;
}

/* Texto interno (regla base) */
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-Tabs-panel li{
    font-size: 14px !important;
    line-height: 1.45 !important;

    /* 🔥 IMPORTANTE: que usen TODO el ancho disponible */
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* -----------------------------------------------------------
   ESCRITORIO (>= 1025px)
   Ancho casi total + margen lateral reducido
   ----------------------------------------------------------- */
@media (min-width: 1025px){

    .single-product .woocommerce-tabs{
        max-width: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .single-product .woocommerce-Tabs-panel{
        /* más ancho para que entren frases largas en una sola línea */
        max-width: 1350px !important;
        margin-left: auto !important;
        margin-right: auto !important;

        /* margen interno pequeño (≈ 1–1,5 cm visual según monitor) */
        padding-left: 18px !important;
        padding-right: 18px !important;
        padding-top: 32px !important;
        padding-bottom: 36px !important;
    }

    .single-product .woocommerce-Tabs-panel p,
    .single-product .woocommerce-Tabs-panel li{
        font-size: 13.5px !important;
        line-height: 1.4 !important;

        /* aseguramos otra vez que no tenga max-width heredado */
        max-width: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* -----------------------------------------------------------
   MÓVIL (<= 768px)
   Mantiene buena legibilidad
   ----------------------------------------------------------- */
@media (max-width: 768px){
    .single-product .woocommerce-Tabs-panel{
        border-radius: 20px !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
        max-width: 95% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .single-product .woocommerce-Tabs-panel p,
    .single-product .woocommerce-Tabs-panel li{
        font-size: 15px !important;
        line-height: 1.6 !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* ==========================================================
   FICHA DE PRODUCTO — PRECIO UNIFICADO PREMIUM
   (Desktop = igual catálogo, Móvil = columna centrada)
   ========================================================== */

/* Caja de precio en la ficha */
.single-product .summary.entry-summary .price{
    display:flex;
    align-items:center;
    justify-content:flex-start; /* Desktop: de izq a der */
    gap:14px;

    background:#ffffff;
    border:2px solid #e0e0e0;
    border-radius:18px;
    box-shadow:0 6px 18px rgba(0,0,0,.08);

    padding:12px 18px;
    margin:18px auto 16px;
    max-width:420px;
    width:100%;
    box-sizing:border-box;

    font-size:1.05rem;
    font-weight:900;
    color:#111;
    animation:sv-wa-float 3.2s ease-in-out infinite;
}

/* Interno alineado */
.single-product .summary.entry-summary .price > *{
    display:inline-flex;
    align-items:center;
}

/* Precio tachado */
.single-product .summary.entry-summary .price del{
    color:#9ca3af;
    font-size:.95rem;
    font-weight:800;
    text-decoration:line-through;
    opacity:.8;
}

/* Precio actual */
.single-product .summary.entry-summary .price ins{
    color:#111;
    font-size:1.05rem;
    font-weight:900;
    text-decoration:none;
}

/* Span suelto */
.single-product .summary.entry-summary .price > span:not(.kv-bcv-dual){
    display:block;
}

/* CHIP BCV */
.single-product .summary.entry-summary .price .kv-bcv-dual{
    margin-left:auto;
    min-width:200px;
    max-width:100%;
    padding:8px 14px;
    font-size:.95rem!important;
    box-shadow:0 4px 12px rgba(0,0,0,.08);
    justify-content:center;
    flex-shrink:1;
}

/* Si NO hay oferta → solo chip */
.single-product .summary.entry-summary .price:not(:has(del)) > :not(.kv-bcv-dual){
    display:none!important;
}
.single-product .summary.entry-summary .price:not(:has(del)){
    justify-content:center;
}
.single-product .summary.entry-summary .price:not(:has(del)) .kv-bcv-dual{
    margin-left:0;
    width:100%;
    max-width:360px;
}

/* ==========================================================
   MÓVIL — PRECIO APILADO
   ========================================================== */
@media (max-width: 768px){
    .single-product .summary.entry-summary .price{
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 8px;
        padding: 10px 14px;
        max-width: 100%;
    }

    .single-product .summary.entry-summary .price del,
    .single-product .summary.entry-summary .price ins{
        width: 100%;
        justify-content: center;
        font-size: .98rem;
    }

    .single-product .summary.entry-summary .price .kv-bcv-dual{
        margin-left: 0;
        width: 100%;
        padding: 8px 12px !important;
        white-space: normal;
    }
}

@media (max-width: 430px){
    .single-product .summary.entry-summary .price{
        padding: 8px 10px;
    }
    .single-product .summary.entry-summary .price .kv-bcv-dual{
        font-size: .9rem !important;
    }
}

/* ==========================================================
   CHIPS UNIFICADOS — TAMAÑO Y ESTILO BASE
   ========================================================== */

.sv-sede-badge,
.sv-sede-stock,
.sv-chip-abierta,
.sv-chip-pausa,
.sv-chip-cerrada,
.sv-chip-delivery,
.sv-chip-open,
.sv-chip-closed,
.sv-chip-247,
.sv-badge-247{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 8px 22px !important;
    min-width: 160px !important;
    max-width: 160px !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 600;
    box-sizing: border-box;
    white-space: nowrap;
    border: 2px solid transparent;
}

/* Abierta */
.sv-chip-abierta,
.sv-chip-open{
    background-color:#E6F8E9 !important;
    border-color:#C4E9CF !important;
    color:#246B3D !important;
}

/* Cerrada */
.sv-chip-cerrada,
.sv-chip-closed{
    background-color:#FBE9E6 !important;
    border-color:#F3C6BD !important;
    color:#9B3F2B !important;
}

/* Sí disponible (stock) */
.sv-sede-stock.sv-stock-ok{
    background-color:#E6F8E9 !important;
    border-color:#C4E9CF !important;
    color:#246B3D !important;
}

/* 24/7 */
.sv-chip-247,
.sv-badge-247{
    background-color:#E8F0FF !important;
    border-color:#C3D3FF !important;
    color:#2B4DA8 !important;
}

/* ==========================================================
   AÚN NO DISPONIBLE — AMARILLO FUERTE
   ========================================================== */

.sv-chip-pausa,
.sv-sede-stock.sv-stock-no,
.badge-warning,
.badge-aun-no-disponible,
.sv-badge-unavailable{
    background-color:#FACC15 !important;
    border-color:#EAB308 !important;
    color:#422006 !important;
}

.sv-chip-pausa *,
.sv-sede-stock.sv-stock-no *,
.badge-warning *{
    background: transparent !important;
    color: inherit !important;
}

/* ==========================================================
   SOLO DELIVERY — AMARILLO CLARO
   ========================================================== */

.sv-chip-delivery,
.sv-sede-badge.sv-chip-delivery,
.sv-tiendas-estado .sv-chip-delivery,
.sv-sede-badge.delivery,
.sv-sede-chip .delivery,
.sv-tiendas-estado .delivery{
    background:#FEFCE8 !important;
    border:1px solid #FDE68A !important;
    color:#854D0E !important;
    font-weight:600;
}

/* ==========================================================
   MÓVIL — AJUSTE DE TAMAÑO DE CHIPS
   ========================================================== */
@media (max-width:480px){
    .sv-sede-badge,
    .sv-sede-stock,
    .sv-chip-abierta,
    .sv-chip-pausa,
    .sv-chip-cerrada,
    .sv-chip-delivery,
    .sv-chip-open,
    .sv-chip-closed,
    .sv-chip-247,
    .sv-badge-247{
        min-width:140px !important;
        max-width:140px !important;
        font-size:13px !important;
    }
}

/* ==========================================================
   MI CUENTA — DASHBOARD SOLO EN TARJETAS (SIN MENÚ)
   ========================================================== */

/* Ocultar menú lateral original */
.woocommerce-account .woocommerce-MyAccount-navigation{
    display:none !important;
}

/* Contenido a lo ancho */
.woocommerce-account .woocommerce-MyAccount-content{
    width:100% !important;
    margin-top:24px !important;     /* un poco de aire bajo el avatar */
}

/* Wrapper principal del área "Mi cuenta" */
.woocommerce-account #primary,
.woocommerce-account .site-main{
    margin-top:24px !important;     /* separa el recuadro oscuro del bloque claro de arriba */
}

/* Grid de cajas del dashboard */
.woocommerce-account .account-dashboard,
.woocommerce-account .b2bking_account_boxes_container{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:20px !important;
}

/* Tarjetas del dashboard */
.woocommerce-account .account-dashboard > div,
.woocommerce-account .b2bking_account_box{
    background:#F9FAFB !important;
    border-radius:18px !important;
    border:1px solid #E5E7EB !important;
    padding:20px !important;
    text-align:center !important;
    box-shadow:0 10px 30px rgba(15,23,42,.18);
    transition:.2s ease;
}

.woocommerce-account .account-dashboard > div:hover,
.woocommerce-account .b2bking_account_box:hover{
    transform:translateY(-4px);
    border-color:#E1251B !important;
    box-shadow:0 16px 40px rgba(15,23,42,.25);
}

/* Íconos siempre visibles */
.woocommerce-account .account-dashboard i,
.woocommerce-account .account-dashboard svg,
.woocommerce-account .b2bking_account_box i,
.woocommerce-account .b2bking_account_box svg{
    font-size:26px !important;
    color:#E1251B !important;
    fill:#E1251B !important;
    opacity:1 !important;
}

/* Textos de las tarjetas */
.woocommerce-account .account-dashboard span,
.woocommerce-account .account-dashboard strong,
.woocommerce-account .b2bking_account_box span,
.woocommerce-account .b2bking_account_box strong{
    color:#0F172A !important;
    font-weight:600 !important;
    font-size:14px !important;
    opacity:1 !important;
}

/* Enlaces dentro de las tarjetas */
.woocommerce-account .account-dashboard a,
.woocommerce-account .account-dashboard a *,
.woocommerce-account .b2bking_account_boxes_container a,
.woocommerce-account .b2bking_account_boxes_container a *{
    color:inherit !important;
    text-decoration:none !important;
    opacity:1 !important;
}

/* Responsive dashboard */
@media (max-width:900px){
    .woocommerce-account .account-dashboard,
    .woocommerce-account .b2bking_account_boxes_container{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:14px !important;
    }
}
@media (max-width:600px){
    .woocommerce-account .account-dashboard,
    .woocommerce-account .b2bking_account_boxes_container{
        grid-template-columns:minmax(0,1fr) !important;
    }
}

/* ==========================================================
   MI CUENTA — TABLAS Y TEXTOS INTERNOS LEGIBLES
   (Subcuentas, Listas de compra, etc.)
   ========================================================== */

/* Títulos dentro del recuadro oscuro */
.woocommerce-account .woocommerce-MyAccount-content h1,
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3{
    color:#F9FAFB !important;
}

/* Tabla genérica */
.woocommerce-account table{
    background:#F9FAFB !important;
    color:#111827 !important;
    font-size:14px !important;
}

/* Encabezados de tabla */
.woocommerce-account table thead th{
    background:#111827 !important;
    color:#F9FAFB !important;
}

/* Celdas */
.woocommerce-account table td{
    color:#111827 !important;
}

/* Mensaje “Ningún dato disponible en esta tabla” */
.woocommerce-account table td.dataTables_empty{
    color:#111827 !important;
}

/* Paginación / info de DataTables */
.woocommerce-account .dataTables_info,
.woocommerce-account .dataTables_paginate a,
.woocommerce-account .dataTables_paginate span{
    color:#111827 !important;
}

/* ==========================================================
   MENSAJES (WCFM) — CAJA BONITA Y TEXTO VISIBLE
   ========================================================== */

.wcfm_messages_dashboard,
#wcfm_messages_wrapper{
    background:#0F1628 !important;
    border-radius:18px !important;
    padding:30px !important;
}

.wcfm_messages_heading{
    font-size:22px !important;
    color:#E1251B !important;
    font-weight:700 !important;
    margin-bottom:20px !important;
}

.wcfm-message-box{
    background:#F9FAFB !important;
    border-radius:12px !important;
    padding:20px !important;
    border:1px solid #E5E7EB !important;
}

.wcfm_message_new_form input,
.wcfm_message_new_form textarea,
.wcfm_message_new_form select{
    background:#FFFFFF !important;
    border-radius:10px !important;
    border:1px solid #D1D5DB !important;
    padding:10px 12px !important;
    font-size:14px !important;
}

.wcfm_messages_button{
    background:#E1251B !important;
    color:#FFFFFF !important;
    border-radius:8px !important;
    padding:10px 18px !important;
    border:none !important;
    font-weight:600 !important;
}

.wcfm_message_block_empty{
    background:#F1F5F9 !important;
    padding:15px !important;
    border-radius:10px !important;
    text-align:center !important;
    color:#475569 !important;
    font-size:15px !important;
}

/* ==========================================================
   HEADER — AJUSTE DEL BOTÓN DE CARRITO
   ========================================================== */

.site-header .cart-contents{
    border-radius:18px !important;
    padding:8px 14px !important;
    min-height:auto !important;
    line-height:1.2 !important;
}

/* por si algún wrapper lo estira demasiado */
.site-header .header-cart-button,
.site-header .header-cart-button .cart-contents{
    box-shadow:none !important;
    margin-top:0 !important;
}

/* ==========================================================
   MI CUENTA — BOTONES VISIBLES Y CON ESTILO SV
   ========================================================== */

.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button {
    background: #E1251B !important;       /* rojo SonidosVenezuela */
    color: #FFFFFF !important;            /* texto blanco */
    border-radius: 8px !important;
    padding: 10px 18px !important;
    border: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    box-shadow: 0 8px 20px rgba(15,23,42,.25) !important;
    text-transform: none !important;
}

/* Hover / foco */
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button:hover,
.woocommerce-account .woocommerce-MyAccount-content .button:focus {
    background: #C11F16 !important;       /* rojo un poco más oscuro */
    box-shadow: 0 10px 26px rgba(15,23,42,.32) !important;
}

/* Estados deshabilitado */
.woocommerce-account .woocommerce-MyAccount-content .button.disabled,
.woocommerce-account .woocommerce-MyAccount-content .button:disabled,
.woocommerce-account .woocommerce-MyAccount-content .button[disabled]{
    background: #9CA3AF !important;
    color: #F9FAFB !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
}

/* ==========================================================
   MI CUENTA — ESTILO ELEGANTE PARA BOTONES “OJO”
   ========================================================== */

/* Caja del botón */
.woocommerce form .password-input .show-password-input,
.woocommerce-account .woocommerce form .show-password-input {
    background: #1E2537 !important;
    border: 1px solid #323B52 !important;
    color: #FFFFFF !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
}

/* Icono del ojo */
.woocommerce form .password-input .show-password-input::after,
.woocommerce-account .woocommerce form .show-password-input::after {
    color: #CBD5E1 !important;   /* gris claro */
}

/* Hover */
.woocommerce form .password-input .show-password-input:hover,
.woocommerce-account .woocommerce form .show-password-input:hover {
    background: #272F45 !important;
    border-color: #3A4661 !important;
}

/* Cuando está activo */
.woocommerce form .password-input .show-password-input.display-password,
.woocommerce-account .woocommerce form .show-password-input.display-password {
    background: #2F3850 !important;
}

/* ==========================================================
   TARJETAS POR MODELO — ESPACIO + ESQUINAS LIMPIAS
   ========================================================== */

/* 1) Fila de las tarjetas */
.sv-tarjetas-modelo {
    padding-top: 40px !important;      /* MÁS aire arriba */
    padding-left: 10px !important;
    padding-right: 10px !important;
    overflow: visible !important;      /* NO recorta esquinas */
}

/* 2) Evitar recortes internos de Kadence */
.sv-tarjetas-modelo .kt-row-layout-inner,
.sv-tarjetas-modelo .kt-row-column-wrap,
.sv-tarjetas-modelo .kt-inside-inner-col {
    overflow: visible !important;
}

/* 3) Tarjeta blanca (cada bloque) */
.sv-tarjetas-modelo .kt-inside-inner-col > div {
    border-radius: 24px !important;
    overflow: hidden !important;   /* Las tarjetas sí recortan imágenes */
}

/* ==========================================================
   FIX CRÍTICO: PRODUCT GRID NO DEBE RECORTAR ESQUINAS
   ========================================================== */

body.tax-product_cat ul.products {
    overflow: visible !important;   /* Antes era hidden → cortaba tus esquinas */
}

/* ==========================================================
   MI CUENTA — AVATAR: BLOQUEAR CLIC DIRECTO A GRAVATAR
   ========================================================== */

/* Evita que al hacer clic en la foto del perfil
   abra directamente gravatar.com */
.woocommerce-account a[href*="gravatar.com"]{
    pointer-events: none !important;
    cursor: default !important;
}

/* ==========================================================
   MI CUENTA — AVATAR PANEL PRO (SONIDOS VENEZUELA)
   ========================================================== */

/* Contenedor completo del campo de avatar */
.sv-avatar-fieldset{
    border: 1px solid #111827;
    border-radius: 20px;
    padding: 18px 20px 20px;
    margin-bottom: 28px;
    background: radial-gradient(circle at top left, #020617 0%, #020617 45%, #020617 100%);
    box-shadow: 0 26px 60px rgba(15,23,42,.75);
    color: #e5e7eb;
    position: relative;
    overflow: hidden;
}

/* Línea superior sutil */
.sv-avatar-fieldset::before{
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 20px;
    border: 1px solid rgba(248,250,252,.03);
    pointer-events: none;
}

/* Título del bloque */
.sv-avatar-fieldset legend{
    padding: 0 10px;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .09em;
    color: #E1251B;                /* Rojo Sonidos Venezuela */
}

/* Layout interno */
.sv-avatar-row{
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

/* ==========================================================
   AVATAR – PREVIEW
   ========================================================== */

.sv-avatar-preview{
    position: relative;
    padding: 3px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 0, #E1251B 0, #C11F16 40%, #020617 100%);
    box-shadow: 0 10px 30px rgba(0,0,0,.7);
}

.sv-avatar-preview img{
    width: 84px;
    height: 84px;
    border-radius: 999px;
    border: 2px solid #020617;
    object-fit: cover;
    display: block;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

/* Microinteracción al pasar el mouse */
.sv-avatar-preview:hover img{
    transform: translateY(-1px) scale(1.02);
    box-shadow: 0 18px 40px rgba(0,0,0,.9);
    border-color: #E1251B;
}

/* ==========================================================
   AVATAR – CONTROLES Y TEXTOS
   ========================================================== */

.sv-avatar-controls{
    flex: 1 1 240px;
    font-size: 13px;
}

.sv-avatar-text{
    margin: 0 0 6px;
    color: #e5e7eb;
}

.sv-avatar-text strong{
    color: #f9fafb;
    font-weight: 600;
}

.sv-avatar-help{
    margin: 0 0 10px;
    font-size: 12px;
    color: #9CA3AF;
}

/* ==========================================================
   INPUT FILE — ESTILO PRO
   ========================================================== */

/* Caja general del input file */
.sv-avatar-controls input[type="file"]{
    font-size: 12px;
    color: #e5e7eb;
    background: #020617;
    border-radius: 999px;
    border: 1px solid #374151;
    padding: 6px 10px;
    width: 100%;
    max-width: 330px;
    cursor: pointer;
}

/* Botón “Seleccionar archivo” moderno (navegadores modernos) */
.sv-avatar-controls input[type="file"]::file-selector-button{
    background: #E1251B;
    color: #FFFFFF;
    border: none;
    border-radius: 999px;
    padding: 7px 16px;
    margin-right: 10px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease, box-shadow .18s ease;
    box-shadow: 0 10px 24px rgba(220,38,38,.45);
}

.sv-avatar-controls input[type="file"]::file-selector-button:hover{
    background: #C11F16;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(185,28,28,.8);
}

.sv-avatar-controls input[type="file"]::file-selector-button:active{
    transform: translateY(0);
    box-shadow: 0 4px 12px rgba(0,0,0,.7);
}

/* Para Safari antiguo / fallback simple */
.sv-avatar-controls input[type="file"]::-webkit-file-upload-button{
    background: #E1251B;
    color: #FFFFFF;
    border: none;
    border-radius: 999px;
    padding: 7px 16px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    cursor: pointer;
}

/* Texto “Sin archivos seleccionados” */
.sv-avatar-controls .description,
.sv-avatar-controls span{
    font-size: 11px;
    color: #9CA3AF;
}

/* ==========================================================
   AVATAR – ELIMINAR / RESTABLECER
   ========================================================== */

.sv-avatar-remove{
    margin-top: 10px;
}

.sv-avatar-remove input[type="checkbox"]{
    margin-right: 6px;
    accent-color: #E1251B;  /* Navegadores modernos */
}

.sv-avatar-remove label{
    font-size: 12px;
    color: #FCA5A5;
}

/* ==========================================================
   CHIP OPCIONAL: “CAMBIAR FOTO DE PERFIL”
   (por si lo usamos debajo del nombre en el dashboard)
   ========================================================== */

.woocommerce-account .sv-avatar-edit-link{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    padding: 5px 13px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .07em;
    background: rgba(15,23,42,.95);
    color: #e5e7eb !important;
    border: 1px solid rgba(148,163,184,.6);
    box-shadow: 0 10px 26px rgba(15,23,42,.8);
    text-decoration: none !important;
    white-space: nowrap;
}

.woocommerce-account .sv-avatar-edit-link::before{
    content: "✏️";
    font-size: 11px;
}

.woocommerce-account .sv-avatar-edit-link:hover{
    background: #E1251B;
    border-color: #F97316;
    color: #ffffff !important;
    box-shadow: 0 16px 40px rgba(185,28,28,.85);
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 768px){
    .sv-avatar-row{
        flex-direction: column;
        align-items: flex-start;
    }

    .sv-avatar-fieldset{
        padding: 16px 14px 18px;
    }

    .sv-avatar-controls input[type="file"]{
        max-width: 100%;
    }
}

/* ===========================================================
   PRODUCTOS RELACIONADOS — 4 TARJETAS POR FILA (ESCRITORIO)
   =========================================================== */

/* Contenedor general del bloque (mismo ancho que la tarjeta de arriba) */
.single-product .related {
    max-width: 1350px !important;
    margin: 0 auto 40px auto !important;
    padding: 0 18px !important;
}

/* Título “Productos relacionados” centrado */
.single-product .related > h2 {
    text-align: center !important;
    margin-bottom: 24px !important;
}

/* Fila de productos: 4 por fila, poco espacio entre ellos */
.single-product .related ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px !important;          /* espacio entre tarjetas */
    padding: 0 !important;
    margin: 0 auto !important;
}

/* TARJETA — 4 POR FILA EN ESCRITORIO */
.single-product .related ul.products li.product {
    background: #ffffff !important;
    border-radius: 24px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
    overflow: hidden !important;
    padding: 0 !important;

    flex: 1 1 calc(25% - 10px) !important;
    max-width: calc(25% - 10px) !important;

    display: flex !important;
    flex-direction: column !important;
    min-height: 540px !important;

    transition: transform .25s ease, box-shadow .25s ease;
}

.single-product .related ul.products li.product:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 40px rgba(0,0,0,0.16) !important;
}

/* IMAGEN OCUPA EL 100% DE LA TARJETA (sin bordes ni márgenes) */
.single-product .related ul.products li.product img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    margin: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
}

/* TÍTULO — ALTURA FIJA (hasta 4 líneas) */
.single-product .related ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    text-align: center !important;

    line-height: 1.25 !important;
    min-height: 4.9em !important;
    max-height: 4.9em !important;

    overflow: hidden !important;
    margin: 12px 8px 10px !important;
    padding: 0 !important;
    display: block !important;
}

/* PRECIO (caja centrada debajo del título) */
.single-product .related ul.products li.product .kv-bcv-box {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 12px auto 16px auto !important;
    width: calc(100% - 24px) !important;
    max-width: calc(100% - 24px) !important;
    min-height: 72px !important;
}


/* CHIP DE PRECIO DUAL */
.single-product .related ul.products li.product .kv-bcv-dual {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;

    background: #ffffff;
    padding: 10px 14px !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,0.09);
}

/* BOTÓN “Añadir al carrito” ANCLADO ABAJO */
.single-product .related ul.products li.product a.button {
    margin-top: auto !important;
    margin-bottom: 20px !important;
    display: flex !important;
    justify-content: center !important;
    width: fit-content !important;
    align-self: center !important;
    font-weight: 700 !important;
    color: #cb3b00 !important;
}

/* ============================
   RESPONSIVE
   ============================ */

/* Tablets → 3 por fila */
@media (max-width: 1150px) {
    .single-product .related ul.products li.product {
        flex: 1 1 calc(33.333% - 10px) !important;
        max-width: calc(33.333% - 10px) !important;
    }
}

/* Tablets pequeños → 2 por fila */
@media (max-width: 900px) {
    .single-product .related ul.products li.product {
        flex: 1 1 calc(50% - 10px) !important;
        max-width: calc(50% - 10px) !important;
        min-height: auto !important;
    }
}

/* Móvil → 1 por fila */
@media (max-width: 600px) {
    .single-product .related ul.products {
        flex-direction: column !important;
        gap: 18px !important;
        align-items: center !important;
    }

    .single-product .related ul.products li.product {
        flex: 1 1 100% !important;
        max-width: 390px !important;
        min-height: auto !important;
    }
}

/* ===========================================================
   DESCRIPCIÓN — TÍTULO CENTRADO Y MÁS ROJO
   =========================================================== */

.single-product .woocommerce-Tabs-panel h2 {
    text-align: center !important;
    width: 100% !important;
    display: block !important;
    color: #E1251B !important;  /* rojo SonidosVenezuela */
}


/* ==========================================================
   MODO INTERNO — DETALLE DE STOCK POR DEPÓSITO
   (visible solo cuando el usuario está logueado)
   ========================================================== */

/* Por defecto, el resumen interno NO se ve */
.sv-interno-stock{
    display:none;
    font-size:11px;
    font-weight:500;
    color:#4b5563;
    margin:0 8px;
    white-space:nowrap;
    opacity:0.9;
}

/* Cuando estás logueado en WP → se muestra */
body.logged-in .sv-interno-stock{
    display:inline-flex;
    align-items:center;
    gap:4px;
}

/* Versión compacta en móvil */
@media (max-width:480px){
    body.logged-in .sv-interno-stock{
        display:block;
        margin-top:4px;
        text-align:left;
        font-size:10.5px;
    }
}

.sv-chip {
    border-radius: 40px;
    padding: 6px 16px;
    margin-left: 8px;
    font-size: 14px;
    font-weight: 600;
    display: inline-block;
    cursor: pointer;
    position: relative;
}

.sv-chip-ok { background: #E6F8E9; color: #246B3D; }
.sv-chip-few { background: #FFF2CC; color: #8a6d1d; }
.sv-chip-no { background: #F8E6E6; color: #8a1d1d; }
.sv-chip-open { background: #D1F4D7; color: #225c31; }
.sv-chip-closed { background: #F2D6D6; color: #8a2e2e; }
.sv-chip-info { background: #e3e6ff; color: #3947d8; }

/* TOOLTIP */
.sv-chip[data-tip]:hover::after {
    content: attr(data-tip);
    position: absolute;
    bottom: 130%;
    left: 50%;
    transform: translateX(-50%);
    background: #111827;
    color: white;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 12px;
    line-height: 1.4;
    width: 240px;
    text-align: center;
    box-shadow: 0 8px 20px rgba(0,0,0,0.35);
    z-index: 999;
}

.sv-chip[data-tip]:hover::before {
    content: '';
    position: absolute;
    bottom: 115%;
    left: 50%;
    transform: translateX(-50%);
    border: 8px solid transparent;
    border-top-color: #111827;
}

/* ==========================================================
   BURBUJA AMARILLA – QUEDAN POCOS (sv-stock-low)
   ========================================================== */

.sv-stock-low {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;

    /* Amarillo light */
    background-color: #FFF6D8; /* amarillo cremoso claro */
    border: 2px solid #FFE7A3; /* borde amarillo tenue */
    color: #8A6D00; /* texto dorado oscuro */
}

/* CHIP AÚN NO DISPONIBLE - CORAL PASTEL */
.sv-chip-pausa {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    padding: 8px 22px !important;
    min-width: 160px !important;
    max-width: 160px !important;

    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 600;

    background-color: #FFE2CC !important; /* coral pastel */
    border: 2px solid #F7B893 !important; /* borde durazno */
    color: #A85A2F !important; /* texto coral oscuro */
}

/* Agotado – mismo estilo que Cerrada hoy */
.sv-stock-no {
    background-color: #F7E9E5 !important;   /* fondo rojo pastel */
    border: 2px solid #E7C8C0 !important;   /* borde rojo pastel suave */
    color: #A55E44 !important;              /* el mismo marrón usado en “Cerrada hoy” */
}

/* ==========================================================
   AGOTADO — ROJO SONIDOSVENEZUELA (HERMANO DE CERRADA HOY)
   ========================================================== */
.sv-sede-stock.sv-stock-no,
.sv-stock-no{
    background-color: rgba(225, 37, 27, 0.10) !important; /* fondo rojo muy suave */
    border-color: rgba(225, 37, 27, 0.35) !important;     /* borde basado en --sv-red */
    color: var(--sv-red-dark) !important;                 /* texto rojo oscuro de marca */

    /* por si acaso, mismo formato de chip que el resto */
    padding: 8px 22px !important;
    border-radius: 999px !important;
    font-weight: 600 !important;
}

/* ==========================================================
   FIX ESPACIO BLANCO DEBAJO DEL CINTILLO EN PRODUCTOS
   (Mobile / WooCommerce)
   ========================================================== */

/* Quitar margen inferior de la imagen */
.woocommerce ul.products li.product a img{
    display: block !important;
    margin-bottom: 0 !important;
}

/* Evitar espacio generado por el enlace contenedor */
.woocommerce ul.products li.product a{
    line-height: 0 !important;
}

/* Ajustar el contenedor de la imagen */
.woocommerce ul.products li.product .woocommerce-product-gallery__image,
.woocommerce ul.products li.product figure{
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Subir el título pegado al cintillo */
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    margin-top: 8px !important;
}

/* ==========================================================
   SV-4020-CHECKPOINT-START
   4020 — MINI CART / DRAWER + CHAT IA — ULTRA PREMIUM (SAFE)
   OBJETIVO:
   - Skin premium (glass) en:
       1) Drawer/Side cart (WooFC / Xoo / Kadence off-canvas)
       2) Mini-cart popup del HEADER (Kadence/Woo)
       3) Popup centrado “Agregado al carrito”
   - SAFE: solo contenedores conocidos de carrito + #svChatIA
   - Corrige enlaces invisibles (“Ver carrito”) + micro-contraste
   - Scrollbar minimal SOLO dentro de esos contenedores
   - Web + móvil consistente
   ========================================================== */


/* ==========================================================
   4020A — CHAT IA — VARIABLES SOLO DENTRO DEL CHAT (SAFE)
   ========================================================== */
#svChatIA{
  --sv-chat-bg-1:#0a1020;
  --sv-chat-bg-2:#070b15;

  --sv-chat-text:rgba(255,255,255,.94);
  --sv-chat-muted:rgba(255,255,255,.66);

  --sv-chat-red:#dc2626;
  --sv-chat-red-hover:#b91c1c;

  --sv-chat-radius:22px;
  --sv-chat-shadow:0 34px 92px rgba(0,0,0,.46);

  --sv-chat-stroke:rgba(255,255,255,.12);
  --sv-chat-stroke-2:rgba(255,255,255,.08);

  --sv-chat-focus:0 0 0 3px rgba(220,38,38,.22);

  --sv-chat-glass:
    radial-gradient(140% 180% at 12% -10%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(120% 140% at 110% 0%, rgba(220,38,38,.10) 0%, rgba(220,38,38,0) 40%),
    linear-gradient(180deg, var(--sv-chat-bg-1) 0%, var(--sv-chat-bg-2) 100%);
}


/* ==========================================================
   4020B — CARRITOS: VARIABLES EXPLÍCITAS (no dependen de #svChatIA)
   ========================================================== */
.site-header .kadence-cart-dropdown,
.site-header .kadence-cart-popup,
.site-header .kadence-woo-cart-popup,
.site-header .header-cart-popup,
.site-header .cart-popup,
.site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
.site-header .widget_shopping_cart_content,

.woofc-wrapper,
.woofc-wrapper .woofc-inner,
.woofc-wrapper .widget_shopping_cart_content,

.xoo-wsc-container,
.xoo-wsc-container .xoo-wsc-body,
.xoo-wsc-container .widget_shopping_cart_content,

.kadence-off-canvas,
.kadence-off-canvas .panel,
.kadence-off-canvas .kadence-panel,
.kadence-off-canvas .kadence-off-canvas-panel,
.kadence-off-canvas .widget_shopping_cart_content,

/* Popups centrados “agregado al carrito” (clases comunes) */
.kt-cart-popup,
.woo-cart-popup,
.woocommerce-cart-popup,
.wc-cart-popup,
.wpc-notice,
.wpcsn-notice,
.wpc-popup,
.wpc-fly-cart,
.wpc-cart-popup{

  --sv-bg-1:#0a1020;
  --sv-bg-2:#070b15;

  --sv-text:rgba(255,255,255,.94);
  --sv-muted:rgba(255,255,255,.66);

  --sv-red:#dc2626;
  --sv-red-hover:#b91c1c;

  --sv-radius-lg:22px;
  --sv-radius-md:14px;

  --sv-shadow:0 34px 92px rgba(0,0,0,.46);
  --sv-border:1px solid rgba(255,255,255,.12);
  --sv-stroke:1px solid rgba(255,255,255,.08);
  --sv-focus:0 0 0 3px rgba(220,38,38,.22);

  --sv-glass:
    radial-gradient(140% 180% at 12% -10%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(120% 140% at 110% 0%, rgba(220,38,38,.10) 0%, rgba(220,38,38,0) 40%),
    linear-gradient(180deg, var(--sv-bg-1) 0%, var(--sv-bg-2) 100%);
}


/* ==========================================================
   4020Z — Z-INDEX / OVERFLOW FIX (HEADER POPUP NO SE TAPA)
   ========================================================== */
.site-header .kadence-header-cart,
.site-header .header-cart,
.site-header .site-header-item .header-cart{
  position: relative !important;
  z-index: 999990 !important;
  overflow: visible !important;
}

.site-header .kadence-cart-dropdown,
.site-header .kadence-cart-popup,
.site-header .kadence-woo-cart-popup,
.site-header .header-cart-popup,
.site-header .cart-popup,
.site-header .woocommerce.widget_shopping_cart,
.site-header .widget_shopping_cart_content{
  position: relative !important;
  z-index: 999999 !important;
}


/* ==========================================================
   4020S1 — SCROLLBAR MINIMAL (SOLO CONTENEDORES)
   ========================================================== */
.woofc-wrapper .woofc-inner::-webkit-scrollbar,
.xoo-wsc-container .xoo-wsc-body::-webkit-scrollbar,
.site-header .widget_shopping_cart_content::-webkit-scrollbar,
.woofc-wrapper .widget_shopping_cart_content::-webkit-scrollbar,
.xoo-wsc-container .widget_shopping_cart_content::-webkit-scrollbar,
.kadence-off-canvas .widget_shopping_cart_content::-webkit-scrollbar,
#svChatIA .sv-chat-ia-messages::-webkit-scrollbar{
  width: 4px !important;
}
.woofc-wrapper .woofc-inner::-webkit-scrollbar-thumb,
.xoo-wsc-container .xoo-wsc-body::-webkit-scrollbar-thumb,
.site-header .widget_shopping_cart_content::-webkit-scrollbar-thumb,
.woofc-wrapper .widget_shopping_cart_content::-webkit-scrollbar-thumb,
.xoo-wsc-container .widget_shopping_cart_content::-webkit-scrollbar-thumb,
.kadence-off-canvas .widget_shopping_cart_content::-webkit-scrollbar-thumb,
#svChatIA .sv-chat-ia-messages::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.16) !important;
  border-radius: 10px !important;
}


/* ==========================================================
   4020P — PANEL PREMIUM (TODOS LOS CARRITOS) — GLASS ÚNICO
   ========================================================== */
.site-header .kadence-cart-dropdown,
.site-header .kadence-cart-popup,
.site-header .kadence-woo-cart-popup,
.site-header .header-cart-popup,
.site-header .cart-popup,
.site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
.site-header .widget_shopping_cart_content,

.woofc-wrapper .woofc-inner,
.woofc-wrapper .widget_shopping_cart_content,
.xoo-wsc-container,
.xoo-wsc-container .xoo-wsc-body,
.xoo-wsc-container .widget_shopping_cart_content,
.kadence-off-canvas .panel,
.kadence-off-canvas .kadence-panel,
.kadence-off-canvas .kadence-off-canvas-panel,
.kadence-off-canvas .widget_shopping_cart_content,

.kt-cart-popup,
.woo-cart-popup,
.woocommerce-cart-popup,
.wc-cart-popup,
.wpc-notice,
.wpcsn-notice,
.wpc-popup,
.wpc-fly-cart,
.wpc-cart-popup{
  background: var(--sv-glass) !important;
  border: var(--sv-border) !important;
  border-radius: var(--sv-radius-lg) !important;
  box-shadow: var(--sv-shadow) !important;
  color: var(--sv-text) !important;

  backdrop-filter: blur(22px) saturate(185%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(185%) !important;

  position: relative !important;
  overflow: hidden !important;
}

/* Brillo interno (NO bloquea clicks) */
.site-header .kadence-cart-dropdown::before,
.site-header .kadence-cart-popup::before,
.site-header .kadence-woo-cart-popup::before,
.site-header .header-cart-popup::before,
.site-header .cart-popup::before,
.site-header .widget_shopping_cart_content::before,

.woofc-wrapper .woofc-inner::before,
.woofc-wrapper .widget_shopping_cart_content::before,
.xoo-wsc-container::before,
.xoo-wsc-container .xoo-wsc-body::before,
.xoo-wsc-container .widget_shopping_cart_content::before,
.kadence-off-canvas .panel::before,
.kadence-off-canvas .kadence-panel::before,
.kadence-off-canvas .kadence-off-canvas-panel::before,
.kadence-off-canvas .widget_shopping_cart_content::before,

.kt-cart-popup::before,
.woo-cart-popup::before,
.woocommerce-cart-popup::before,
.wc-cart-popup::before,
.wpc-notice::before,
.wpcsn-notice::before,
.wpc-popup::before,
.wpc-fly-cart::before,
.wpc-cart-popup::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  border-radius:inherit !important;
  border: var(--sv-stroke) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  z-index:0 !important;
}

/* Contenido por encima del brillo */
.site-header .kadence-cart-dropdown > *,
.site-header .kadence-cart-popup > *,
.site-header .kadence-woo-cart-popup > *,
.site-header .header-cart-popup > *,
.site-header .cart-popup > *,
.site-header .widget_shopping_cart_content > *,

.woofc-wrapper .woofc-inner > *,
.woofc-wrapper .widget_shopping_cart_content > *,
.xoo-wsc-container > *,
.xoo-wsc-container .xoo-wsc-body > *,
.xoo-wsc-container .widget_shopping_cart_content > *,
.kadence-off-canvas .panel > *,
.kadence-off-canvas .kadence-panel > *,
.kadence-off-canvas .kadence-off-canvas-panel > *,
.kadence-off-canvas .widget_shopping_cart_content > *,

.kt-cart-popup > *,
.woo-cart-popup > *,
.woocommerce-cart-popup > *,
.wc-cart-popup > *,
.wpc-notice > *,
.wpcsn-notice > *,
.wpc-popup > *,
.wpc-fly-cart > *,
.wpc-cart-popup > *{
  position: relative !important;
  z-index: 1 !important;
}


/* ==========================================================
   4020T — TIPOGRAFÍA / LINKS VISIBLES (corrige “Ver carrito”)
   ========================================================== */
.site-header .widget_shopping_cart_content,
.woofc-wrapper,
.xoo-wsc-container,
.kadence-off-canvas,
.kt-cart-popup,
.woo-cart-popup,
.woocommerce-cart-popup,
.wc-cart-popup{
  color: var(--sv-text) !important;
}

/* links siempre visibles */
.site-header .widget_shopping_cart_content a,
.site-header .widget_shopping_cart_content a:visited,
.woofc-wrapper a,
.xoo-wsc-container a,
.kadence-off-canvas a,
.kt-cart-popup a,
.woo-cart-popup a,
.woocommerce-cart-popup a,
.wc-cart-popup a,
.wpc-notice a,
.wpcsn-notice a{
  color: rgba(255,255,255,.98) !important;
  text-decoration: none !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}

/* ==========================================================
   4020W — LIMPIEZA QUIRÚRGICA DE “WRAPPERS BLANCOS” (SAFE)
   ========================================================== */
.site-header .widget_shopping_cart_content :where(form, ul, ol, li),
.kt-cart-popup :where(form, ul, ol, li),
.woo-cart-popup :where(form, ul, ol, li),
.woocommerce-cart-popup :where(form, ul, ol, li),
.wc-cart-popup :where(form, ul, ol, li),
.wpc-notice :where(form, ul, ol, li),
.wpcsn-notice :where(form, ul, ol, li){
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* ==========================================================
   4020H — HEADER MINI CART (KADENCE/WOO) — GRID + BOTONES
   ========================================================== */
.site-header .widget_shopping_cart_content{
  padding: 14px !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item{
  display: grid !important;
  grid-template-columns: 62px 1fr auto !important;
  gap: 12px !important;
  align-items: center !important;

  padding: 10px !important;
  margin: 0 0 10px 0 !important;

  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item img{
  width: 62px !important;
  height: 62px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.38) !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item > a{
  color: rgba(255,255,255,.98) !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1.18 !important;

  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* cantidad/precio chip */
.site-header .widget_shopping_cart_content .quantity{
  justify-self: end !important;
  white-space: nowrap !important;

  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 999px !important;

  padding: 8px 10px !important;
  color: rgba(255,255,255,.92) !important;
  font-weight: 900 !important;
  font-size: 12.5px !important;
}

/* subtotal (evita verdes) */
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__total,
.site-header .widget_shopping_cart_content .amount{
  color: rgba(255,255,255,.96) !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart__total{
  margin-top: 12px !important;
  padding: 12px !important;
  background: rgba(0,0,0,.18) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 14px !important;

  font-weight: 900 !important;

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

.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons{
  display: grid !important;
  gap: 10px !important;
  margin-top: 12px !important;
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a,
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a:visited{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

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

  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.16) !important;

  background: rgba(255,255,255,.10) !important;
  color: rgba(255,255,255,.98) !important;

  font-weight: 900 !important;
  letter-spacing: .2px !important;
  text-decoration: none !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease, background .15s ease !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout{
  background: var(--sv-red) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(220,38,38,.36) !important;
}

.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a:hover{
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout:hover{
  background: var(--sv-red-hover) !important;
  box-shadow: 0 18px 40px rgba(220,38,38,.50) !important;
}

/* ==========================================================
   4020D — DRAWERS / SIDE CARTS (WooFC / Xoo / Off-canvas)
   ========================================================== */
.woofc-wrapper,
.xoo-wsc-container,
.kadence-off-canvas{
  color: var(--sv-text) !important;
}

.woofc-wrapper .cart_list li,
.woofc-wrapper .woocommerce-mini-cart-item,
.xoo-wsc-container .cart_list li,
.xoo-wsc-container .woocommerce-mini-cart-item,
.kadence-off-canvas .cart_list li,
.kadence-off-canvas .woocommerce-mini-cart-item{
  background: transparent !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  padding: 12px 0 !important;
}

.woofc-wrapper .woocommerce-mini-cart__total,
.xoo-wsc-container .woocommerce-mini-cart__total,
.kadence-off-canvas .woocommerce-mini-cart__total{
  background: rgba(0,0,0,.18) !important;
  padding: 18px 16px !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  color: #fff !important;
  font-weight: 900 !important;
}

.woofc-wrapper .woocommerce-mini-cart__buttons,
.xoo-wsc-container .woocommerce-mini-cart__buttons,
.kadence-off-canvas .woocommerce-mini-cart__buttons{
  display: grid !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.woofc-wrapper .woocommerce-mini-cart__buttons a,
.xoo-wsc-container .woocommerce-mini-cart__buttons a,
.kadence-off-canvas .woocommerce-mini-cart__buttons a{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

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

  border-radius: var(--sv-radius-md) !important;
  border: 1px solid rgba(255,255,255,.16) !important;

  background: rgba(255,255,255,.10) !important;
  color: rgba(255,255,255,.95) !important;

  font-weight: 900 !important;
  text-decoration: none !important;
}

.woofc-wrapper .woocommerce-mini-cart__buttons a.checkout,
.xoo-wsc-container .woocommerce-mini-cart__buttons a.checkout,
.kadence-off-canvas .woocommerce-mini-cart__buttons a.checkout{
  background: var(--sv-red) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(220,38,38,.36) !important;
}


/* ==========================================================
   4021P — POPUP CENTRADO “AGREGADO AL CARRITO” — PREMIUM
   ========================================================== */
.kt-cart-popup,
.woo-cart-popup,
.woocommerce-cart-popup,
.wc-cart-popup,
.wpc-notice,
.wpcsn-notice{
  padding: 18px 18px 16px !important;
  max-width: 520px !important;
  width: min(92vw, 520px) !important;
}

/* close (genérico) en rojo */
.kt-cart-popup [class*="close"],
.woo-cart-popup [class*="close"],
.woocommerce-cart-popup [class*="close"],
.wc-cart-popup [class*="close"],
.wpc-notice [class*="close"],
.wpcsn-notice [class*="close"]{
  background: var(--sv-red) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 30px rgba(220,38,38,.35) !important;
}
.kt-cart-popup [class*="close"]:hover,
.woo-cart-popup [class*="close"]:hover,
.woocommerce-cart-popup [class*="close"]:hover,
.wc-cart-popup [class*="close"]:hover,
.wpc-notice [class*="close"]:hover,
.wpcsn-notice [class*="close"]:hover{
  background: var(--sv-red-hover) !important;
}

/* ==========================================================
   4020AN — ANIMACIÓN HEADER POPUP
   ========================================================== */
.site-header .kadence-cart-dropdown,
.site-header .kadence-woo-cart-popup,
.site-header .kadence-cart-popup,
.site-header .header-cart-popup,
.site-header .cart-popup,
.site-header .widget_shopping_cart_content{
  transform-origin: top right;
  animation: svCartDropIn .16s ease both;
}

@keyframes svCartDropIn{
  from{
    opacity:0;
    transform: translateY(10px) scale(.985);
  }
  to{
    opacity:1;
    transform: translateY(0) scale(1);
  }
}

/* ==========================================================
   SV CART — SUBTOTAL HOLGADO FINAL
   ========================================================== */
body.woocommerce-cart table.shop_table td.product-subtotal{
  white-space: nowrap !important;
  text-align: right !important;
  vertical-align: middle !important;
  padding-right: 18px !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :first-child,
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  box-sizing: border-box !important;
  vertical-align: middle !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 62px !important;
  min-width: 300px !important;
  padding: 0 26px !important;
  background: #fff !important;
  border: 2px solid rgba(15,23,42,.12) !important;
  border-right: 0 !important;
  border-radius: 999px 0 0 999px !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  color: #111827 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.06) !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 62px !important;
  min-width: 330px !important;
  padding: 0 24px !important;
  background: #fff !important;
  border: 2px solid rgba(15,23,42,.12) !important;
  border-left: 1px solid rgba(15,23,42,.12) !important;
  border-radius: 0 999px 999px 0 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #6b7280 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.06) !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :last-child *,
body.woocommerce-cart table.shop_table td.product-subtotal .bs-text,
body.woocommerce-cart table.shop_table td.product-subtotal .sv-bcv-tag{
  white-space: nowrap !important;
  color: inherit !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal .sv-bcv-tag{
  font-size: 12px !important;
  margin-left: 8px !important;
}

@media (max-width: 1280px){
  body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
    min-width: 260px !important;
    min-height: 58px !important;
    padding: 0 20px !important;
    font-size: 18px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
    min-width: 280px !important;
    min-height: 58px !important;
    padding: 0 20px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 768px){
  body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
    min-width: 190px !important;
    min-height: 50px !important;
    padding: 0 14px !important;
    font-size: 15px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
    min-width: 210px !important;
    min-height: 50px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal .sv-bcv-tag{
    font-size: 10px !important;
    margin-left: 6px !important;
  }
}


/* ==========================================================
   SV CART OVERRIDE FUERTE — SUBTOTAL MÁS GRANDE
   ========================================================== */
body.woocommerce-cart table.shop_table td.product-subtotal{
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  text-align:right !important;
  white-space:nowrap !important;
  padding-right:16px !important;
  font-size:0 !important;
}

body.woocommerce-cart{
  --sv-sub-usd-w: 165px !important;
  --sv-sub-bs-w: 220px !important;
  --sv-sub-h: 48px !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :first-child,
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:var(--sv-sub-h) !important;
  min-height:var(--sv-sub-h) !important;
  margin:0 !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
  width:var(--sv-sub-usd-w) !important;
  padding:0 18px !important;
  border-radius:999px 0 0 999px !important;
  font-size:15px !important;
  font-weight:950 !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  width:var(--sv-sub-bs-w) !important;
  padding:0 18px !important;
  border-radius:0 999px 999px 0 !important;
  font-size:13px !important;
  font-weight:850 !important;
}

@media (max-width:768px){
  body.woocommerce-cart{
    --sv-sub-usd-w: 145px !important;
    --sv-sub-bs-w: 190px !important;
    --sv-sub-h: 44px !important;
  }
}


/* ==========================================================
   4020DESK — HEADER: SCROLL INTERNO (DESKTOP)
   ========================================================== */
@media (min-width: 769px){
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart{
    max-height: 320px !important;
    overflow: auto !important;
    padding-right: 6px !important;
  }
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-woo-cart-popup,
  .site-header .kadence-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup{
    min-width: 420px !important;
    margin-top: 10px !important;
  }
}


/* ==========================================================
   4020MOB — MÓVIL: ANCHOS CONSISTENTES + SAFE AREA
   ========================================================== */
@media (max-width:768px){
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-woo-cart-popup,
  .site-header .kadence-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup{
    width: 92vw !important;
    right: 4vw !important;
    left: auto !important;
    margin-top: 10px !important;
  }

  .woofc-wrapper .woofc-inner,
  .woofc-wrapper .widget_shopping_cart_content,
  .xoo-wsc-container,
  .xoo-wsc-container .widget_shopping_cart_content,
  .kadence-off-canvas .panel,
  .kadence-off-canvas .kadence-panel,
  .kadence-off-canvas .kadence-off-canvas-panel,
  .kadence-off-canvas .widget_shopping_cart_content{
    margin-bottom: env(safe-area-inset-bottom, 0px) !important;
  }
}


/* ==========================================================
   4020M — CUANDO HAY DRAWER/OVERLAY ABIERTO:
   BAJAMOS FLOTANTES PARA QUE NO TAPEN (SAFE)
   ========================================================== */
body.woofc-open .sv-whatsapp-button,
body.woofc-open .sv-ia-button,
body.xoo-wsc-active .sv-whatsapp-button,
body.xoo-wsc-active .sv-ia-button,
body.offcanvas-open .sv-whatsapp-button,
body.offcanvas-open .sv-ia-button{
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: .10 !important;
  transform: scale(.92) !important;
}


/* ==========================================================
   4028 — CHAT IA — VENTANA (OPEN/CLOSE)
   ========================================================== */
#svChatIA.sv-chat-ia-window{
  position:fixed !important;
  right:18px !important;
  bottom:105px !important;
  z-index:999999 !important;

  width:360px !important;
  max-width:calc(100vw - 36px) !important;

  border-radius:var(--sv-chat-radius) !important;
  overflow:hidden !important;

  border:1px solid var(--sv-chat-stroke) !important;
  box-shadow:var(--sv-chat-shadow) !important;

  background: var(--sv-chat-glass) !important;

  backdrop-filter:blur(12px) saturate(120%) !important;
  -webkit-backdrop-filter:blur(12px) saturate(120%) !important;

  transform:translateY(14px) scale(.985) !important;
  opacity:0 !important;
  pointer-events:none !important;

  transition:opacity .18s ease, transform .18s ease !important;
  contain:layout paint style;
  isolation:isolate;
}
#svChatIA.sv-chat-ia-window::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  border:1px solid var(--sv-chat-stroke-2) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06) !important;
}
#svChatIA.sv-chat-ia-window.sv-open{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
  pointer-events:auto !important;
}
@media (max-width:520px){
  #svChatIA.sv-chat-ia-window{
    right:12px !important;
    bottom:calc(92px + env(safe-area-inset-bottom, 0px)) !important;
    width:calc(100vw - 24px) !important;
  }
}


/* ==========================================================
   4060 — CHAT IA — HEADER
   ========================================================== */
#svChatIA .sv-chat-ia-header{
  position:relative !important;
  padding:14px 14px 12px 14px !important;
  background:linear-gradient(180deg, rgba(0,0,0,.70) 0%, rgba(0,0,0,.20) 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.09) !important;
}
#svChatIA .sv-chat-ia-header-title strong{
  display:block !important;
  color:var(--sv-chat-text) !important;
  letter-spacing:.25px !important;
  font-weight:900 !important;
  font-size:13px !important;
  line-height:1.15 !important;
}
#svChatIA .sv-chat-ia-header-title span{
  display:block !important;
  margin-top:3px !important;
  color:var(--sv-chat-muted) !important;
  font-size:11px !important;
  line-height:1.2 !important;
}
#svChatIA .sv-chat-ia-header > button{
  position:absolute !important;
  top:12px !important;
  right:12px !important;

  width:30px !important;
  height:30px !important;

  border-radius:999px !important;
  background:var(--sv-chat-red) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10) !important;

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

  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  cursor:pointer !important;

  box-shadow:0 12px 30px rgba(220,38,38,.40) !important;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease !important;
}
#svChatIA .sv-chat-ia-header > button:hover{
  background:var(--sv-chat-red-hover) !important;
  transform:translateY(-1px) !important;
  box-shadow:0 16px 36px rgba(220,38,38,.52) !important;
}


/* ==========================================================
   4120 — CHAT IA — MENSAJES
   ========================================================== */
#svChatIA .sv-chat-ia-messages{
  padding:12px !important;
  height:270px !important;
  overflow:auto !important;
  background:transparent !important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
@media (max-width:520px){
  #svChatIA .sv-chat-ia-messages{ height:240px !important; }
}
#svChatIA .sv-msg{
  margin:0 0 10px 0 !important;
  color:var(--sv-chat-text) !important;
  font-size:12px !important;
  line-height:1.42 !important;
  max-width:92% !important;
  overflow-wrap:anywhere;
  word-break:break-word;
}
#svChatIA .sv-msg.sv-bot{
  margin-right:auto !important;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-left: 3px solid var(--sv-chat-red) !important;
  border-radius: 4px 18px 18px 18px !important;
  padding:10px 12px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
#svChatIA .sv-msg.sv-user{
  margin-left:auto !important;
  background: linear-gradient(135deg, rgba(220,38,38,.30) 0%, rgba(220,38,38,.15) 100%) !important;
  border: 1px solid rgba(220,38,38,.40) !important;
  border-radius: 18px 18px 4px 18px !important;
  padding:10px 12px !important;
  box-shadow: 0 10px 26px rgba(220,38,38,.10) !important;
}
#svChatIA .sv-map-link{
  color:rgba(255,255,255,.97) !important;
  text-decoration:underline !important;
  font-weight:900 !important;
}


/* ==========================================================
   4160 — CHAT IA — INPUT + ENVIAR
   ========================================================== */
#svChatIA .sv-chat-ia-input{
  display:flex !important;
  gap:10px !important;
  padding:12px !important;
  background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.42) 100%) !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}
#svChatIA .sv-chat-ia-input input{
  flex:1 1 auto !important;
  height:40px !important;
  background: rgba(0,0,0,.40) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:var(--sv-chat-text) !important;
  border-radius:999px !important;
  outline:none !important;
  padding:0 12px !important;
  min-width:0 !important;
  transition: all .30s ease !important;
}
@media (max-width:768px){
  #svChatIA .sv-chat-ia-input input{ font-size:16px !important; }
}
#svChatIA .sv-chat-ia-input input:focus{
  border-color: var(--sv-chat-red) !important;
  background: rgba(0,0,0,.60) !important;
  box-shadow: 0 0 15px rgba(220,38,38,.20) !important;
}
#svChatIA .sv-chat-ia-input button{
  height:40px !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:var(--sv-chat-red) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.10) !important;
  font-weight:900 !important;
  cursor:pointer !important;
  box-shadow:0 14px 34px rgba(220,38,38,.36) !important;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease !important;
  white-space:nowrap !important;
}
#svChatIA .sv-chat-ia-input button:hover{
  background:var(--sv-chat-red-hover) !important;
  transform:translateY(-1px) !important;
  box-shadow:0 18px 40px rgba(220,38,38,.50) !important;
}


/* * ==========================================================
   SV-5852-CHECKPOINT-END
   ========================================================== */


/* ==========================================================
   SV — HOTFIX KADENCE MINI CART (HEADER) — FORCE OVERRIDE
   (NO quita efectos visuales / mantiene glass + hover)
   Pegar AL FINAL del CSS
   ========================================================== */

/* 1) Variables y panel oscuro en el contenedor del dropdown */
.site-header .kadence-header-cart .kadence-cart-dropdown,
.site-header .kadence-header-cart .kadence-cart-popup,
.site-header .kadence-header-cart .kadence-woo-cart-popup,
.site-header .kadence-header-cart .header-cart-popup,
.site-header .kadence-header-cart .cart-popup{
  --sv-bg-1:#0a1020;
  --sv-bg-2:#070b15;
  --sv-text:rgba(255,255,255,.94);
  --sv-muted:rgba(255,255,255,.66);
  --sv-red:#dc2626;
  --sv-red-hover:#b91c1c;
  --sv-radius:22px;
  --sv-border:1px solid rgba(255,255,255,.12);

  background:
    radial-gradient(140% 180% at 12% -10%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(120% 140% at 110% 0%, rgba(220,38,38,.10) 0%, rgba(220,38,38,0) 40%),
    linear-gradient(180deg, var(--sv-bg-1) 0%, var(--sv-bg-2) 100%) !important;

  border: var(--sv-border) !important;
  border-radius: var(--sv-radius) !important;
  box-shadow: 0 34px 92px rgba(0,0,0,.46) !important;
  color: var(--sv-text) !important;

  backdrop-filter: blur(22px) saturate(185%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(185%) !important;

  overflow: hidden !important;
}

/* 1.1) Borde/brillo interno (para que se vea “premium”) */
.site-header .kadence-header-cart .kadence-cart-dropdown::before,
.site-header .kadence-header-cart .kadence-cart-popup::before,
.site-header .kadence-header-cart .kadence-woo-cart-popup::before,
.site-header .kadence-header-cart .header-cart-popup::before,
.site-header .kadence-header-cart .cart-popup::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  border-radius: inherit !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* 2) A veces Kadence mete el blanco en widget_shopping_cart_content */
.site-header .kadence-header-cart .kadence-cart-dropdown .widget_shopping_cart_content,
.site-header .kadence-header-cart .kadence-cart-popup .widget_shopping_cart_content,
.site-header .kadence-header-cart .kadence-woo-cart-popup .widget_shopping_cart_content,
.site-header .kadence-header-cart .header-cart-popup .widget_shopping_cart_content,
.site-header .kadence-header-cart .cart-popup .widget_shopping_cart_content{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 14px !important;
  color: var(--sv-text) !important;
}

/* 3) Mata wrappers “blancos” internos SIN romper estructura */
.site-header .kadence-header-cart .kadence-cart-dropdown .widget_shopping_cart_content :where(form, ul, ol, li, div, section, article, p){
  background: transparent !important;
  box-shadow: none !important;
  border-color: rgba(255,255,255,.10) !important;
}

/* 4) Link visible (Ver carrito) + texto */
.site-header .kadence-header-cart .kadence-cart-dropdown a,
.site-header .kadence-header-cart .kadence-cart-dropdown a:visited{
  color: rgba(255,255,255,.98) !important;
  opacity: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

/* 5) Subtotal: fuera verde (forzar blanco) */
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__total,
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__total *{
  color: rgba(255,255,255,.96) !important;
}
.site-header .kadence-header-cart .kadence-cart-dropdown .amount{
  color: rgba(255,255,255,.96) !important;
}

/* 6) Botones (checkout rojo SV + ghost visible) */
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__buttons{
  display: grid !important;
  gap: 10px !important;
  margin-top: 12px !important;
  background: transparent !important;
  border: 0 !important;
}
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__buttons a{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

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

  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.16) !important;

  background: rgba(255,255,255,.10) !important;
  color: rgba(255,255,255,.98) !important;

  font-weight: 900 !important;
  text-decoration: none !important;

  transition: transform .15s ease, filter .15s ease, background .15s ease, box-shadow .15s ease !important;
}
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__buttons a:hover{
  background: rgba(255,255,255,.14) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.28) !important;
}
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__buttons a.checkout{
  background: var(--sv-red) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(220,38,38,.36) !important;
}
.site-header .kadence-header-cart .kadence-cart-dropdown .woocommerce-mini-cart__buttons a.checkout:hover{
  background: var(--sv-red-hover) !important;
  box-shadow: 0 18px 40px rgba(220,38,38,.50) !important;
}

/* 7) Close (X) en rojo, por si el tema lo redefine */
.site-header .kadence-header-cart .kadence-cart-dropdown [class*="close"]{
  background: var(--sv-red) !important;
  color:#fff !important;
  border-radius: 999px !important;
}


/* ======================================================================
   [SV CONTROL POINT] 4020 — MINI CART / DRAWER + CHAT IA — ULTRA PREMIUM
   (SIN cambios destructivos: se mantiene glass + hover dropdown)
   ====================================================================== */

/* =========================
   4020V — VARIABLES UNIFICADAS (CARRITOS)
   ========================= */
:where(
  .site-header .kadence-header-cart,
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-cart-popup,
  .site-header .kadence-woo-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup,
  .site-header .woocommerce.widget_shopping_cart,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .site-header .widget_shopping_cart_content,

  .woofc-wrapper,
  .woofc-wrapper .woofc-inner,
  .woofc-wrapper .widget_shopping_cart_content,

  .xoo-wsc-container,
  .xoo-wsc-container .widget_shopping_cart_content,

  .kadence-off-canvas,
  .kadence-off-canvas .panel,
  .kadence-off-canvas .kadence-panel,
  .kadence-off-canvas .kadence-off-canvas-panel,
  .kadence-off-canvas .widget_shopping_cart_content,

  .kt-cart-popup,
  .woo-cart-popup,
  .woocommerce-cart-popup,
  .wc-cart-popup,
  .wpc-notice,
  .wpcsn-notice
){
  --sv-bg-1:#0a1020;
  --sv-bg-2:#070b15;

  --sv-text:rgba(255,255,255,.94);
  --sv-muted:rgba(255,255,255,.66);

  --sv-red:#dc2626;
  --sv-red-hover:#b91c1c;

  --sv-radius-lg:22px;
  --sv-radius-md:14px;

  --sv-shadow:0 34px 92px rgba(0,0,0,.46);
  --sv-border:1px solid rgba(255,255,255,.12);
  --sv-stroke:1px solid rgba(255,255,255,.08);
  --sv-focus:0 0 0 3px rgba(220,38,38,.22);

  --sv-glass:
    radial-gradient(140% 180% at 12% -10%, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(120% 140% at 110% 0%, rgba(220,38,38,.10) 0%, rgba(220,38,38,0) 40%),
    linear-gradient(180deg, var(--sv-bg-1) 0%, var(--sv-bg-2) 100%);
}

/* =========================
   4020Z — Z-INDEX FIX
   ========================= */
.site-header .kadence-header-cart,
.site-header .header-cart,
.site-header .site-header-item .header-cart{
  position: relative !important;
  z-index: 999990 !important;
  overflow: visible !important;
}
.site-header .kadence-cart-dropdown,
.site-header .kadence-cart-popup,
.site-header .kadence-woo-cart-popup,
.site-header .header-cart-popup,
.site-header .cart-popup,
.site-header .woocommerce.widget_shopping_cart,
.site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
.site-header .widget_shopping_cart_content{
  position: relative !important;
  z-index: 999999 !important;
}

/* =========================
   4020P — PANEL GLASS
   ========================= */
:where(
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-cart-popup,
  .site-header .kadence-woo-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup,
  .site-header .woocommerce.widget_shopping_cart,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .site-header .widget_shopping_cart_content,

  .woofc-wrapper .woofc-inner,
  .woofc-wrapper .widget_shopping_cart_content,
  .xoo-wsc-container,
  .xoo-wsc-container .widget_shopping_cart_content,
  .kadence-off-canvas .panel,
  .kadence-off-canvas .kadence-panel,
  .kadence-off-canvas .kadence-off-canvas-panel,
  .kadence-off-canvas .widget_shopping_cart_content,

  .kt-cart-popup,
  .woo-cart-popup,
  .woocommerce-cart-popup,
  .wc-cart-popup,
  .wpc-notice,
  .wpcsn-notice
){
  background: var(--sv-glass) !important;
  border: var(--sv-border) !important;
  border-radius: var(--sv-radius-lg) !important;
  box-shadow: var(--sv-shadow) !important;
  color: var(--sv-text) !important;

  backdrop-filter: blur(22px) saturate(185%) !important;
  -webkit-backdrop-filter: blur(22px) saturate(185%) !important;

  overflow: hidden !important;
}

/* Brillo interno */
:where(
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-cart-popup,
  .site-header .kadence-woo-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .site-header .widget_shopping_cart_content,

  .woofc-wrapper .woofc-inner,
  .woofc-wrapper .widget_shopping_cart_content,
  .xoo-wsc-container,
  .xoo-wsc-container .widget_shopping_cart_content,
  .kadence-off-canvas .panel,
  .kadence-off-canvas .kadence-panel,
  .kadence-off-canvas .kadence-off-canvas-panel,
  .kadence-off-canvas .widget_shopping_cart_content,

  .kt-cart-popup,
  .woo-cart-popup,
  .woocommerce-cart-popup,
  .wc-cart-popup,
  .wpc-notice,
  .wpcsn-notice
)::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  border-radius:inherit !important;
  border: var(--sv-stroke) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* 4020W — Mata blancos internos */
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .kt-cart-popup,
  .woo-cart-popup,
  .woocommerce-cart-popup,
  .wc-cart-popup,
  .wpc-notice,
  .wpcsn-notice
) :where(form, ul, ol, li, p, div, section, article){
  background: transparent !important;
  box-shadow: none !important;
  border-color: rgba(255,255,255,.10) !important;
}

/* 4020T — Links + texto */
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .kt-cart-popup, .woo-cart-popup, .woocommerce-cart-popup, .wc-cart-popup,
  .wpc-notice, .wpcsn-notice
) a,
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .kt-cart-popup, .woo-cart-popup, .woocommerce-cart-popup, .wc-cart-popup,
  .wpc-notice, .wpcsn-notice
) a:visited{
  color: rgba(255,255,255,.98) !important;
  opacity: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content
) :where(p, span, small, strong, em, b, i){
  color: var(--sv-text) !important;
}

/* 4020S — Subtotal */
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content,
  .kt-cart-popup, .woo-cart-popup, .woocommerce-cart-popup, .wc-cart-popup,
  .wpc-notice, .wpcsn-notice
) .woocommerce-mini-cart__total{
  margin-top: 12px !important;
  padding: 12px 12px !important;
  background: rgba(0,0,0,.18) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 14px !important;
  color: rgba(255,255,255,.92) !important;
  font-weight: 900 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content
) .amount{ color: rgba(255,255,255,.96) !important; }
:where(
  .site-header .widget_shopping_cart_content,
  .site-header .woocommerce.widget_shopping_cart .widget_shopping_cart_content
) .woocommerce-mini-cart__total strong{ color: rgba(255,255,255,.98) !important; }

/* 4020H — Estructura mini cart */
.site-header .widget_shopping_cart_content{ padding: 14px !important; }
.site-header .widget_shopping_cart_content .woocommerce-mini-cart{
  background: transparent !important; border: 0 !important; box-shadow: none !important;
  padding: 0 !important; margin: 0 !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item{
  display: grid !important;
  grid-template-columns: 62px 1fr auto !important;
  gap: 12px !important;
  align-items: center !important;

  padding: 10px 10px !important;
  margin: 0 0 10px 0 !important;

  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 16px !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item img{
  width: 62px !important; height: 62px !important; object-fit: cover !important;
  border-radius: 14px !important; border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.38) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart-item > a{
  color: rgba(255,255,255,.98) !important;
  font-weight: 900 !important;
  font-size: 14px !important;
  line-height: 1.18 !important;

  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
.site-header .widget_shopping_cart_content .quantity{
  justify-self: end !important;
  white-space: nowrap !important;

  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 999px !important;

  padding: 8px 10px !important;
  color: rgba(255,255,255,.90) !important;
  font-weight: 900 !important;
  font-size: 12.5px !important;
}

/* Botones header */
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons{
  display: grid !important;
  gap: 10px !important;
  margin-top: 12px !important;
  border: 0 !important;
  padding-bottom: 0 !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a,
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a:visited{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

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

  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.16) !important;

  background: rgba(255,255,255,.10) !important;
  color: rgba(255,255,255,.98) !important;

  font-weight: 900 !important;
  letter-spacing: .2px !important;
  text-decoration: none !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease, background .15s ease !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a:not(.checkout){
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout,
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout:visited{
  background: var(--sv-red) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px rgba(220,38,38,.36) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a:hover{
  background: rgba(255,255,255,.14) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.site-header .widget_shopping_cart_content .woocommerce-mini-cart__buttons a.checkout:hover{
  background: var(--sv-red-hover) !important;
  box-shadow: 0 18px 40px rgba(220,38,38,.50) !important;
}

/* 4020X — Close rojo */
:where(
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-cart-popup,
  .site-header .kadence-woo-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup
) [class*="close"]{
  background: var(--sv-red) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color:#fff !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 30px rgba(220,38,38,.35) !important;
}
:where(
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-cart-popup,
  .site-header .kadence-woo-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup
) [class*="close"]:hover{
  background: var(--sv-red-hover) !important;
}

/* 4020SC — Scrollbar */
.site-header .widget_shopping_cart_content::-webkit-scrollbar{ width: 4px !important; }
.site-header .widget_shopping_cart_content::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.16) !important;
  border-radius: 10px !important;
}

/* 4020MOB — Móvil */
@media (max-width:768px){
  .site-header .kadence-cart-dropdown,
  .site-header .kadence-woo-cart-popup,
  .site-header .kadence-cart-popup,
  .site-header .header-cart-popup,
  .site-header .cart-popup,
  .site-header .widget_shopping_cart_content{
    width: 92vw !important;
    right: 4vw !important;
    left: auto !important;
    margin-top: 10px !important;
  }
}

/* ======================================================================
   SV HOTFIX — 4020-HOVER (se mantiene)
   ====================================================================== */
@media (min-width: 769px){
  .site-header .kadence-header-cart{
    position: relative !important;
    overflow: visible !important;
  }
  .site-header .kadence-header-cart .widget_shopping_cart_content{
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;

    min-width: 420px !important;
    max-width: min(92vw, 520px) !important;

    opacity: 0 !important;
    transform: translateY(10px) scale(.985) !important;
    visibility: hidden !important;
    pointer-events: none !important;

    transform-origin: top right !important;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease !important;

    display: block !important;
  }
  .site-header .kadence-header-cart::after{
    content:"" !important;
    position:absolute !important;
    right:-12px !important;
    top: 100% !important;
    width: min(560px, 92vw) !important;
    height: 18px !important;
    background: transparent !important;
    pointer-events: none !important;
  }
  .site-header .kadence-header-cart:hover::after,
  .site-header .kadence-header-cart:focus-within::after{ pointer-events: auto !important; }

  .site-header .kadence-header-cart:hover .widget_shopping_cart_content,
  .site-header .kadence-header-cart:focus-within .widget_shopping_cart_content{
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .site-header .kadence-header-cart .woocommerce.widget_shopping_cart{
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }
}
@media (max-width: 768px){
  .site-header .kadence-header-cart .widget_shopping_cart_content{
    position: static !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}


/* ==========================================================
   SV-HEADER-BUBBLES-ULTRA — (MEJORADO)
   - Hover redes: ROJO
   - Buscador: más premium
   - Sombras: menos “mancha” hacia el cintillo rojo
   ========================================================== */

/* 1) Variables */
.site-header{
  --sv-h-bg-1: rgba(10,16,32,.62);
  --sv-h-bg-2: rgba(7,11,21,.44);
  --sv-h-stroke: rgba(255,255,255,.16);
  --sv-h-stroke-2: rgba(255,255,255,.10);
  --sv-h-text: rgba(255,255,255,.92);
  --sv-h-muted: rgba(255,255,255,.72);

  /* SOMBRA AJUSTADA (menos caída hacia el rojo) */
  --sv-h-shadow: 0 10px 22px rgba(0,0,0,.22);
  --sv-h-shadow-hover: 0 14px 28px rgba(0,0,0,.28);

  --sv-h-radius: 999px;
  --sv-h-red: #dc2626;
  --sv-h-red-hover: #b91c1c;

  --sv-h-glass:
    radial-gradient(140% 200% at 10% -20%, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 45%),
    radial-gradient(120% 180% at 110% 0%, rgba(220,38,38,.14) 0%, rgba(220,38,38,0) 40%),
    linear-gradient(180deg, var(--sv-h-bg-1) 0%, var(--sv-h-bg-2) 100%);
}

/* 2) Burbujas: wrapper */
.site-header :where(
  .header-social-wrap,
  .header-phone-wrap, .header-phone,
  .header-time-wrap, .header-time,
  .kadence-header-search,
  .kadence-header-account,
  .kadence-header-cart
){
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;

  padding: 6px 12px !important;
  border-radius: var(--sv-h-radius) !important;

  background: var(--sv-h-glass) !important;
  border: 1px solid var(--sv-h-stroke) !important;
  box-shadow: var(--sv-h-shadow) !important;

  backdrop-filter: blur(18px) saturate(165%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(165%) !important;

  color: var(--sv-h-text) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* brillo interno */
.site-header :where(
  .header-social-wrap,
  .header-phone-wrap, .header-phone,
  .header-time-wrap, .header-time,
  .kadence-header-search,
  .kadence-header-account,
  .kadence-header-cart
)::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  border-radius: inherit !important;
  border: 1px solid var(--sv-h-stroke-2) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* contenido por encima */
.site-header :where(
  .header-social-wrap,
  .header-phone-wrap, .header-phone,
  .header-time-wrap, .header-time,
  .kadence-header-search,
  .kadence-header-account,
  .kadence-header-cart
) > *{ position: relative !important; z-index: 1 !important; }

/* hover premium */
@media (hover:hover){
  .site-header :where(
    .header-social-wrap,
    .header-phone-wrap, .header-phone,
    .header-time-wrap, .header-time,
    .kadence-header-search,
    .kadence-header-account,
    .kadence-header-cart
  ):hover{
    transform: translateY(-1px) !important;
    box-shadow: var(--sv-h-shadow-hover) !important;
  }
}

/* 3) Redes: icon-pill + HOVER ROJO */
.site-header .header-social-wrap{
  padding: 6px 10px !important;
  gap: 8px !important;
}
.site-header .header-social-wrap :where(a, button){
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 999px !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;

  transition: background .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease, filter .15s ease !important;
}
.site-header .header-social-wrap :where(a, button) svg{
  transition: fill .15s ease, color .15s ease !important;
}
@media (hover:hover){
  .site-header .header-social-wrap :where(a, button):hover{
    background: var(--sv-h-red) !important;
    border-color: rgba(255,255,255,.18) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 26px rgba(220,38,38,.28) !important;
  }
  .site-header .header-social-wrap :where(a, button):hover svg{
    fill: #fff !important;
    color: #fff !important;
  }
}

/* 4) Teléfono / horario */
.site-header :where(.header-phone, .header-time){
  font-weight: 800 !important;
  color: var(--sv-h-text) !important;
}
.site-header :where(.header-phone, .header-time) :where(span, small){
  color: var(--sv-h-muted) !important;
}

/* 5) Buscador: MÁS PREMIUM (mejor estética “lo último”) */
.site-header .kadence-header-search{
  padding: 6px 10px !important;
  gap: 10px !important;
}
.site-header .kadence-header-search form{
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
}
.site-header .kadence-header-search :where(input[type="search"], input[type="text"]){
  height: 40px !important;
  min-width: 360px !important;
  max-width: 46vw !important;

  border-radius: 999px !important;
  padding: 0 46px 0 16px !important;

  background: rgba(0,0,0,.26) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: rgba(255,255,255,.92) !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.06) !important;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease !important;
}
.site-header .kadence-header-search :where(input[type="search"], input[type="text"])::placeholder{
  color: rgba(255,255,255,.55) !important;
}
.site-header .kadence-header-search :where(input[type="search"], input[type="text"]):focus{
  outline: none !important;
  border-color: rgba(220,38,38,.55) !important;
  box-shadow: 0 0 0 3px rgba(220,38,38,.22), inset 0 1px 0 rgba(255,255,255,.06) !important;
  background: rgba(0,0,0,.32) !important;
}

/* botón lupa dentro/pegado premium */
.site-header .kadence-header-search :where(button, .search-submit){
  width: 40px !important;
  height: 40px !important;
  border-radius: 999px !important;

  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;

  transition: background .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease !important;
}
@media (hover:hover){
  .site-header .kadence-header-search :where(button, .search-submit):hover{
    background: rgba(255,255,255,.10) !important;
    border-color: rgba(255,255,255,.18) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 26px rgba(0,0,0,.24) !important;
  }
}

/* 6) Cuenta y carrito: “icon chip” + bajar sombra para no manchar el rojo */
.site-header :where(.kadence-header-account, .kadence-header-cart){
  padding: 6px 8px !important;
  box-shadow: 0 8px 16px rgba(0,0,0,.18) !important; /* menos caída hacia el cintillo */
}
@media (hover:hover){
  .site-header :where(.kadence-header-account, .kadence-header-cart):hover{
    box-shadow: 0 10px 18px rgba(0,0,0,.22) !important;
  }
}
.site-header :where(.kadence-header-account a, .kadence-header-cart a, .kadence-header-cart button){
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;

  background: rgba(0,0,0,.10) !important;
  border: 1px solid rgba(255,255,255,.10) !important;

  transition: background .15s ease, border-color .15s ease, transform .15s ease !important;
}
@media (hover:hover){
  .site-header :where(.kadence-header-account a:hover, .kadence-header-cart a:hover, .kadence-header-cart button:hover){
    border-color: rgba(255,255,255,.18) !important;
    background: rgba(255,255,255,.06) !important;
    transform: translateY(-1px) !important;
  }
}

/* Badge carrito */
.site-header .kadence-header-cart :where(.count, .cart-count, .kadence-cart-count, .quantity){
  background: var(--sv-h-red) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
  font-weight: 900 !important;
  box-shadow: 0 10px 22px rgba(220,38,38,.30) !important;
}
.site-header .kadence-header-cart :where(.count, .cart-count, .kadence-cart-count, .quantity):hover{
  background: var(--sv-h-red-hover) !important;
}

/* 7) Móvil */
@media (max-width: 768px){
  .site-header :where(
    .header-social-wrap,
    .header-phone-wrap, .header-phone,
    .header-time-wrap, .header-time,
    .kadence-header-search,
    .kadence-header-account,
    .kadence-header-cart
  ){
    padding: 5px 10px !important;
    box-shadow: 0 10px 20px rgba(0,0,0,.20) !important;
  }

  .site-header .kadence-header-search :where(input[type="search"], input[type="text"]){
    min-width: 54vw !important;
    max-width: 64vw !important;
    height: 38px !important;
  }
  .site-header .kadence-header-search :where(button, .search-submit){
    width: 38px !important;
    height: 38px !important;
  }

  .site-header :where(.kadence-header-account a, .kadence-header-cart a, .kadence-header-cart button){
    width: 40px !important;
    height: 40px !important;
  }
}

/* ==========================================================
   FIN — SV-HEADER-BUBBLES-ULTRA (MEJORADO)
   ========================================================== */

/* ======================================================================
   [SV CONTROL POINT] 5852B — FIX REDES (CUADRADOS -> BURBUJAS) + HOVER ROJO
   Pegar AL FINAL (debajo del 5852 anterior)
   ====================================================================== */

/* 1) Burbuja contenedora (por si Kadence la “aplana”) */
.site-header .header-social-wrap,
.site-header .header-social-wrap .header-social-inner{
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;

  padding: 6px 10px !important;
  border-radius: 999px !important;

  background: var(--sv-h-glass) !important;
  border: 1px solid var(--sv-h-stroke) !important;
  box-shadow: var(--sv-h-shadow) !important;

  backdrop-filter: blur(18px) saturate(165%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(165%) !important;

  overflow: hidden !important;
  position: relative !important;
}

/* 2) Cada red: círculo real (mata el “botón cuadrado blanco”) */
.site-header .header-social-wrap :where(a, button){
  width: 36px !important;
  height: 36px !important;

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

  border-radius: 999px !important;
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;

  color: rgba(255,255,255,.92) !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;

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

/* 3) Íconos: forzar visibilidad (fill + stroke) */
.site-header .header-social-wrap :where(svg, i, span){
  color: currentColor !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
}

/* 4) Hover ROJO: fondo rojo + ícono blanco */
@media (hover:hover){
  .site-header .header-social-wrap :where(a, button):hover{
    background: var(--sv-h-red) !important;
    border-color: rgba(255,255,255,.20) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 14px 26px rgba(220,38,38,.28) !important;
  }
  .site-header .header-social-wrap :where(a, button):hover :where(svg, i, span){
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
  }
}

/* ======================================================================
   FIN 5852B
   ====================================================================== */

/* ======================================================================
   [SV ADD-ONS PREMIUM SAFE] — NO rompe centrado, mantiene visual ULTRA
   Pegar AL FINAL
   ====================================================================== */

/* P1) Scroll interno con estética premium (fade + padding + scrollbar fino) */
@media (min-width: 769px){
  .site-header .widget_shopping_cart_content{
    /* mantiene glass; solo refina interacción */
    max-height: min(78vh, 560px) !important;
  }

  .site-header .widget_shopping_cart_content .woocommerce-mini-cart{
    max-height: 320px !important;
    overflow: auto !important;
    padding-right: 8px !important;
    scrollbar-gutter: stable both-edges !important;
  }

  /* Fade superior/inferior para que el scroll se vea “premium” */
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart{
    -webkit-mask-image: linear-gradient(
      to bottom,
      transparent 0%,
      #000 10%,
      #000 90%,
      transparent 100%
    ) !important;
            mask-image: linear-gradient(
      to bottom,
      transparent 0%,
      #000 10%,
      #000 90%,
      transparent 100%
    ) !important;
  }

  /* Scrollbar más “fino” y elegante */
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar{
    width: 6px !important;
  }
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb{
    background: linear-gradient(
      180deg,
      rgba(255,255,255,.22),
      rgba(255,255,255,.10)
    ) !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
  }
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-track{
    background: rgba(255,255,255,.05) !important;
    border-radius: 999px !important;
  }
}

/* P2) Apertura: en vez de “solo animación”, sumo glow sutil y nitidez */
@media (min-width: 769px){
  .site-header .kadence-header-cart:hover .widget_shopping_cart_content,
  .site-header .kadence-header-cart:focus-within .widget_shopping_cart_content{
    animation: svCartDropIn .16s ease both !important;
    filter: drop-shadow(0 18px 38px rgba(0,0,0,.22)) !important;
  }
}
@keyframes svCartDropIn{
  from{ opacity:0; transform: translateY(10px) scale(.985); }
  to  { opacity:1; transform: translateY(0) scale(1); }
}

/* P3) Hover de items: micro-zoom + highlight (sin cambiar layout) */
@media (hover:hover){
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart-item{
    transition: transform .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease !important;
  }
  .site-header .widget_shopping_cart_content .woocommerce-mini-cart-item:hover{
    transform: translateY(-1px) !important;
    background: rgba(255,255,255,.06) !important;
    border-color: rgba(255,255,255,.14) !important;
    box-shadow:
      0 18px 44px rgba(0,0,0,.22),
      inset 0 1px 0 rgba(255,255,255,.06) !important;
  }
}

/* P4) Focus visible “premium” (usa tu --sv-focus + brillo sutil) */
.site-header .kadence-header-cart :where(a, button):focus-visible,
.site-header .kadence-header-search :where(input, button):focus-visible,
.site-header .kadence-header-account :where(a, button):focus-visible{
  outline: none !important;
  box-shadow: var(--sv-focus), inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* P5) Cuando hay drawer abierto: flotantes NO molestan, pero se ven pro */
body.woofc-open .sv-whatsapp-button,
body.woofc-open .sv-ia-button,
body.xoo-wsc-active .sv-whatsapp-button,
body.xoo-wsc-active .sv-ia-button,
body.offcanvas-open .sv-whatsapp-button,
body.offcanvas-open .sv-ia-button{
  z-index: 2 !important;            /* no desaparecen, solo bajan prioridad */
  pointer-events: none !important;  /* no tapan clicks del drawer */
  opacity: .10 !important;
  filter: blur(.8px) saturate(.7) !important;
  transform: translateY(6px) scale(.92) !important;
  transition: opacity .15s ease, transform .15s ease, filter .15s ease !important;
}

/* P6) “No disponible aún” ultra consistente (chip estilo SV) */
:where(.sv-chip-no-disponible, .sv-chip-no-disponible-aun, .sv-chip-soon, .sv-chip-not-available){
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 8px 22px !important;
  min-width: 160px !important;
  max-width: 160px !important;

  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;

  background: linear-gradient(180deg, rgba(255,247,204,1) 0%, rgba(255,238,170,1) 100%) !important;
  border: 2px solid rgba(255,224,138,1) !important;
  color: #6A4A00 !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    0 12px 28px rgba(0,0,0,.14) !important;
}

/* ======================================================================
   [SV HOTFIX] 5852D — REDES EN 1 SOLA LÍNEA (SIEMPRE)
   - Aumenta el “pill” lo justo y reduce iconos si hace falta
   ====================================================================== */

/* 1) El contenedor NO puede partir */
.site-header :where(.header-social-wrap, .header-social-inner){
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  align-items: center !important;
}

/* 2) Asegura ancho suficiente para 4 íconos en fila */
.site-header .header-social-wrap{
  width: auto !important;
  max-width: none !important;
  padding: 6px 10px !important;
  gap: 8px !important;
  min-width: 176px !important;  /* clave: evita que salte a 2 filas */
}

/* 3) La lista interna también en fila (algunos headers meten UL/LI) */
.site-header .header-social-wrap :where(ul, ol){
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.site-header .header-social-wrap :where(li){
  list-style: none !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* 4) Reducimos íconos un poco para garantizar 4 en 1 línea */
.site-header .header-social-wrap :where(a, button){
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 32px !important;
  border-radius: 999px !important;
}

/* 5) Si el SVG se ve grande, lo normalizamos */
.site-header .header-social-wrap :where(svg){
  width: 16px !important;
  height: 16px !important;
}

/* ======================================================================
   [SV CONTROL POINT] 6100 — PRODUCT PAGE / RECUADRO BAJO PRECIO (PREMIUM PRO)
   - Jerarquía tipográfica real (títulos/strong/links)
   - “Glass card” limpio (borde interno + highlight superior)
   - Acento SV sutil (línea superior degradada)
   - Hover premium solo desktop
   ====================================================================== */

.single-product div.product .summary{
  background: transparent !important;
}

/* Card descripción (premium PRO) */
.single-product .woocommerce-product-details__short-description{
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(16px, 2.2vw, 22px) !important;
  margin-top: 14px !important;
  border-radius: 18px !important;

  background:
    radial-gradient(1200px 280px at 12% 0%,
      rgba(255,255,255,.95),
      rgba(255,255,255,.72) 40%,
      rgba(255,255,255,.92) 100%) !important;

  border: 1px solid rgba(15,23,42,.10) !important;

  box-shadow:
    0 24px 60px rgba(2,6,23,.10),
    0 8px 18px rgba(2,6,23,.06) !important;

  backdrop-filter: blur(10px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(140%) !important;

  color: rgba(15,23,42,.88) !important;
  line-height: 1.68 !important;
}

/* Borde interno + highlight superior */
.single-product .woocommerce-product-details__short-description::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  border-radius: inherit !important;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.62),
    inset 0 10px 22px rgba(255,255,255,.22),
    inset 0 1px 0 rgba(255,255,255,.82) !important;

  opacity: .95 !important;
}

/* Acento superior */
.single-product .woocommerce-product-details__short-description::after{
  content:"" !important;
  position:absolute !important;
  left: 14px !important;
  right: 14px !important;
  top: 12px !important;
  height: 3px !important;
  border-radius: 999px !important;
  pointer-events:none !important;

  background: linear-gradient(90deg,
    rgba(206,54,33,.00),
    rgba(206,54,33,.35),
    rgba(233,176,66,.35),
    rgba(206,54,33,.00)
  ) !important;

  opacity: .85 !important;
}

/* Textos */
.single-product .woocommerce-product-details__short-description :where(p, li, span, small){
  color: rgba(15,23,42,.86) !important;
}

.single-product .woocommerce-product-details__short-description :where(strong, b){
  color: rgba(2,6,23,.92) !important;
  font-weight: 900 !important;
  letter-spacing: .1px !important;
}

.single-product .woocommerce-product-details__short-description a{
  color: rgba(15,23,42,.92) !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(206,54,33,.35) !important;
  padding-bottom: 1px !important;
  transition: border-color .15s ease, color .15s ease, opacity .15s ease !important;
}
.single-product .woocommerce-product-details__short-description a:hover{
  color: rgba(2,6,23,.98) !important;
  border-bottom-color: rgba(206,54,33,.70) !important;
}

/* Listas */
.single-product .woocommerce-product-details__short-description :where(ul, ol){
  margin: 12px 0 0 18px !important;
  padding: 0 !important;
}
.single-product .woocommerce-product-details__short-description :where(li){
  margin: 7px 0 !important;
}
.single-product .woocommerce-product-details__short-description ul li::marker{
  color: rgba(206,54,33,.55) !important;
}

/* Párrafos */
.single-product .woocommerce-product-details__short-description p{
  margin: 0 0 10px 0 !important;
}
.single-product .woocommerce-product-details__short-description p:last-child{
  margin-bottom: 0 !important;
}

/* Hover premium (solo desktop) */
@media (min-width: 1025px){
  .single-product .woocommerce-product-details__short-description{
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }
  .single-product .woocommerce-product-details__short-description:hover{
    transform: translateY(-1px) !important;
    border-color: rgba(15,23,42,.14) !important;
    box-shadow:
      0 34px 80px rgba(2,6,23,.12),
      0 10px 20px rgba(2,6,23,.07) !important;
  }
}


/* ======================================================================
   [SV CONTROL POINT] 6201 — CART PAGE (PULIDO PREMIUM FINAL)
   ====================================================================== */

body.woocommerce-cart{
  background:
    radial-gradient(1200px 420px at 15% 0%,
      rgba(2,6,23,.035),
      rgba(255,255,255,0) 60%) !important;
}

.woocommerce-cart table.shop_table{
  box-shadow:
    0 28px 70px rgba(2,6,23,.10),
    0 10px 22px rgba(2,6,23,.06) !important;
  border-color: rgba(15,23,42,.07) !important;
}

.woocommerce-cart table.shop_table thead th{
  background: rgba(2,6,23,.030) !important;
  font-size: 12.5px !important;
  letter-spacing: .35px !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  color: rgba(15,23,42,.62) !important;
}

.woocommerce-cart table.shop_table tbody tr{
  transition: background-color .15s ease, transform .15s ease !important;
}
@media (min-width: 1025px){
  .woocommerce-cart table.shop_table tbody tr:hover{
    background: rgba(2,6,23,.018) !important;
  }
}

.woocommerce-cart table.shop_table tbody td{
  border-top-color: rgba(15,23,42,.06) !important;
}

.woocommerce-cart a.remove{
  width: 28px !important;
  height: 28px !important;
  line-height: 28px !important;
  border-radius: 999px !important;
  background: rgba(2,6,23,.04) !important;
  color: rgba(15,23,42,.65) !important;
  font-weight: 900 !important;
  transition: transform .15s ease, background .15s ease, color .15s ease !important;
}
.woocommerce-cart a.remove:hover{
  transform: translateY(-1px) !important;
  background: rgba(206,54,33,.10) !important;
  color: rgba(206,54,33,.95) !important;
}

.woocommerce-cart td.product-name a{
  font-size: 13.5px !important;
  line-height: 1.35 !important;
  letter-spacing: .1px !important;
}

/* Jerarquía base */
.woocommerce-cart td.product-price,
.woocommerce-cart td.product-subtotal{
  font-weight: 950 !important;
  color: rgba(2,6,23,.92) !important;
}

.woocommerce-cart td.product-quantity input.qty{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    0 6px 14px rgba(2,6,23,.06) !important;
  border-color: rgba(15,23,42,.16) !important;
}

.woocommerce-cart .actions{
  background: rgba(2,6,23,.020) !important;
  border-top: 1px solid rgba(15,23,42,.06) !important;
}

.woocommerce-cart .cart_totals table tr{
  border-bottom-color: rgba(15,23,42,.06) !important;
}
.woocommerce-cart .cart_totals table th{
  font-weight: 800 !important;
  color: rgba(15,23,42,.66) !important;
}
.woocommerce-cart .cart_totals table td{
  font-weight: 950 !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  padding: 14px 18px !important;
  font-size: 13.5px !important;
  text-transform: uppercase !important;
  letter-spacing: .35px !important;
}

@media (min-width: 1025px){
  .woocommerce-cart .cart-collaterals{
    position: sticky !important;
    top: 110px !important;
    align-self: flex-start !important;
  }
}


/* ======================================================================
   [SV CONTROL POINT] 6212B — FIX BOTONES + “GUARDAR PRESUPUESTO”
   ====================================================================== */

.woocommerce-cart .actions .coupon button,
.woocommerce-cart .actions .coupon .button,
.woocommerce-cart .actions button[name="update_cart"],
.woocommerce-cart .actions button[name="update_cart"].button{
  color: rgba(15,23,42,.92) !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-indent: 0 !important;
  -webkit-text-fill-color: rgba(15,23,42,.92) !important;

  background: rgba(2,6,23,.03) !important;
  border: 1px solid rgba(15,23,42,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;
  border-radius: 999px !important;
}

.woocommerce-cart .actions button[name="update_cart"][disabled],
.woocommerce-cart .actions button[name="update_cart"].disabled,
.woocommerce-cart .actions button[name="update_cart"]:disabled{
  opacity: .55 !important;
  cursor: not-allowed !important;
}

.woocommerce-cart .coupon button:hover,
.woocommerce-cart button[name="update_cart"]:hover{
  transform: translateY(-1px) !important;
  box-shadow:
    0 16px 34px rgba(2,6,23,.14),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

@media (min-width: 769px){
  .woocommerce-cart .actions > :where(a.button, button.button):not([name="update_cart"]){
    background: linear-gradient(180deg, #F6D77A, #E9B042) !important;
    border: 1px solid rgba(233,176,66,.65) !important;
    box-shadow:
      0 14px 30px rgba(2,6,23,.14),
      inset 0 1px 0 rgba(255,255,255,.70) !important;

    color: transparent !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 999px !important;
  }

  .woocommerce-cart .actions > :where(a.button, button.button):not([name="update_cart"])::after{
    content: "Guardar Presupuesto" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: rgba(15,23,42,.92) !important;
    font-weight: 950 !important;
    letter-spacing: .35px !important;
    text-transform: uppercase !important;
    pointer-events: none !important;
  }

  .woocommerce-cart .actions > :where(a.button, button.button):not([name="update_cart"]):hover{
    filter: brightness(.98) saturate(1.05) !important;
    transform: translateY(-1px) !important;
    box-shadow:
      0 18px 40px rgba(2,6,23,.18),
      inset 0 1px 0 rgba(255,255,255,.75) !important;
  }
}


/* ======================================================================
   [SV CONTROL POINT] 6219F — SUBTOTAL: “PILL” UNIDO (USD + Bs) MISMO TAMAÑO SIEMPRE
   - No toca el ancho del TD (no invade Cantidad)
   - Centrado vertical real en la fila
   - Misma burbuja (mismo ancho) aunque el Bs sea más largo
   - Sin “espacio muerto” a la izquierda (se pega visualmente a la derecha)
   ====================================================================== */

/* 1) Centrado vertical real en TODA la tabla */
body.woocommerce-cart table.shop_table tbody td{
  vertical-align: middle !important;
}

/* 2) Celda subtotal: mantiene tabla, solo alinea a la derecha */
body.woocommerce-cart table.shop_table td.product-subtotal{
  text-align: right !important;
  padding-right: 16px !important;
  white-space: nowrap !important;
}

/* 3) Solo USD (primero) + Bs (último) */
body.woocommerce-cart table.shop_table td.product-subtotal > *:not(:first-child):not(:last-child){
  display: none !important;
}

/* 4) Reseteo fuerte de spans (evita “pills” del plugin) */
body.woocommerce-cart table.shop_table td.product-subtotal > :first-child,
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  position: static !important;
  transform: none !important;
  float: none !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

/* 5) Tamaños FIJOS de cada mitad (igual en todas las filas) */
body.woocommerce-cart{
  --sv-sub-usd-w: 128px;  /* ancho mitad USD */
  --sv-sub-bs-w: 168px;   /* ancho mitad Bs */
  --sv-sub-h: 44px;       /* alto burbuja */
}

/* Quita hueco entre inline-elements para que queden “pegadas” */
body.woocommerce-cart table.shop_table td.product-subtotal{
  font-size: 0 !important;
}

/* USD = mitad izquierda */
body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: var(--sv-sub-h) !important;
  min-height: var(--sv-sub-h) !important;
  width: var(--sv-sub-usd-w) !important;

  padding: 0 14px !important;

  background: rgba(255,255,255,.92) !important;
  border: 2px solid rgba(15,23,42,.12) !important;
  border-right: 0 !important;

  border-radius: 999px 0 0 999px !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    0 10px 24px rgba(2,6,23,.10) !important;

  font-size: 14.5px !important;
  font-weight: 950 !important;
  letter-spacing: .2px !important;
  color: rgba(2,6,23,.95) !important;
}

/* Bs = mitad derecha (mismo tamaño SIEMPRE, aunque el número sea largo) */
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  height: var(--sv-sub-h) !important;
  min-height: var(--sv-sub-h) !important;
  width: var(--sv-sub-bs-w) !important;

  padding: 0 14px !important;

  background: rgba(255,255,255,.92) !important;
  border: 2px solid rgba(15,23,42,.12) !important;

  border-left: 1px solid rgba(15,23,42,.16) !important; /* separador interno */

  border-radius: 0 999px 999px 0 !important;

  box-shadow: inset 0 1px 0 rgba(255,255,255,.85) !important;

  font-size: 12.5px !important;
  font-weight: 850 !important;
  letter-spacing: .1px !important;
  color: rgba(15,23,42,.68) !important;

  /* por si algún monto se “pasa” */
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* 6) Mobile: anchos más compactos (mismo tamaño entre filas) */
@media (max-width: 768px){
  body.woocommerce-cart{
    --sv-sub-usd-w: 112px;
    --sv-sub-bs-w: 150px;
    --sv-sub-h: 42px;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal{
    padding-right: 10px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
    font-size: 13.8px !important;
    padding: 0 12px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
    font-size: 12px !important;
    padding: 0 12px !important;
  }
}

/* ======================================================================
   [SV CONTROL POINT] 6220B — BAJAR MÁS EL RECUADRO DERECHO (CART TOTALS)
   ====================================================================== */

@media (min-width: 1025px){

  /* Baja el bloque completo */
  .woocommerce-cart .cart-collaterals{
    margin-top: 42px !important;   /* ⬅️ aquí está la bajada real */
    top: 180px !important;         /* ⬅️ sticky más abajo */
  }

}
/* ======================================================================
   [SV CONTROL POINT] 6215 — TOTALES: USD + Bs JUNTOS (PREMIUM)
   ====================================================================== */

.woocommerce-cart .cart_totals td{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 6px !important;
}

/* USD dominante */
.woocommerce-cart .cart_totals td .amount{
  font-size: 15px !important;
  font-weight: 950 !important;
  color: rgba(2,6,23,.95) !important;
}

/* Bs como chip (si viene en span/small) */
.woocommerce-cart .cart_totals td small,
.woocommerce-cart .cart_totals td .sv-bcv,
.woocommerce-cart .cart_totals td .amount + span{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  padding: 7px 14px !important;
  border-radius: 999px !important;

  background: rgba(2,6,23,.045) !important;
  border: 1px solid rgba(15,23,42,.14) !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  color: rgba(15,23,42,.78) !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    0 10px 22px rgba(2,6,23,.10) !important;
}


/* ======================================================================
   [SV CONTROL POINT] 5852E — HEADER EN 1 SOLA LÍNEA (FIX WRAP) — DESKTOP
   ====================================================================== */
@media (min-width: 1025px){

  .site-header :where(
    .site-header-row-container-inner,
    .site-header-row,
    .site-header-item-wrap,
    .kadence-header-row,
    .kadence-header-row-inner,
    .kadence-header-bar,
    .kadence-header-bar-inner,
    .site-top-header-wrap,
    .site-top-header-inner
  ){
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    min-width: 0 !important;
  }

  .site-header :where(.site-header-item, .header-item, .kadence-header-item){
    min-width: 0 !important;
  }

  .site-header .header-social-wrap,
  .site-header .header-social-wrap .header-social-inner{
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    width: max-content !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .site-header :where(.search-form, .header-search, .kadence-header-search){
    min-width: 0 !important;
    flex: 0 1 360px !important;
  }
  .site-header :where(.search-form input[type="search"], .search-field){
    min-width: 0 !important;
    width: 100% !important;
  }

  .site-header :where(.header-phone-wrap, .header-html, .header-widget-area, .kadence-header-html){
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* ======================================================================
   SV — TOGGLE GLOBAL OCULTAR Bs (CSS SEGURO WP)
   Funciona con body.sv-hide-bs
   ====================================================================== */

/* 1️⃣ Carrito — SUBTOTAL pill: ocultar mitad Bs */
body.sv-hide-bs.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  display: none !important;
}

/* Mantener pill centrada y con presencia */
body.sv-hide-bs.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
  border-radius: 999px !important;
  border-right: 2px solid rgba(15,23,42,.12) !important;
  width: calc(var(--sv-sub-usd-w) + var(--sv-sub-bs-w)) !important;
}

/* 2️⃣ Totales del carrito — ocultar fila “Total en Bs (BCV)” */
body.sv-hide-bs.woocommerce-cart .cart_totals table tr:nth-child(3){
  display: none !important;
}

/* 3️⃣ Cards / loops / producto — ocultar Bs si viene como segundo span */
body.sv-hide-bs .price .woocommerce-Price-amount + span{
  display: none !important;
}

/* 4️⃣ Separadores tipo “ / ” */
body.sv-hide-bs .price .sv-price-sep,
body.sv-hide-bs .price .sep,
body.sv-hide-bs .price .divider{
  display: none !important;
}

/* 5️⃣ Si Bs viene con clase dedicada (ideal a futuro) */
body.sv-hide-bs .sv-bcv{
  display: none !important;
}


/* ==========================================================
   SV — DESDE EL EURO (BCV) + NO DISPONIBLE + RELACIONADOS
   FIX DEFINITIVO:
   - Chip BCV EURO discreto
   - NO DISPONIBLE SOLO cuando el snippet lo imprime (sv-oos-slot)
   - Relacionados: grid, misma altura, CTA alineado
   - Sin :has() y sin :empty (evita falsos "NO DISPONIBLE")
   ========================================================== */

/* =========================
   VARIABLES
   ========================= */
/* ==========================================================
   1) BCV EURO (chip gris discreto)
   ========================================================== */
.kv-bcv-dual .sv-bcv-tag{
  padding: 4px 8px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  background: rgba(248,250,252,.95) !important;
  color: rgba(15,23,42,.55) !important;
  box-shadow: none !important;
}

.woocommerce-cart .sv-price-bs .sv-bcv-tag,
.woocommerce-checkout .sv-price-bs .sv-bcv-tag{
  font-size: 9.5px !important;
  padding: 4px 7px !important;
  opacity: .85 !important;
}

/* ==========================================================
   2) SLOT PRECIO (altura uniforme)
   - NO inventa "NO DISPONIBLE"
   - Solo centra el contenido del slot
   ========================================================== */
.woocommerce ul.products li.product .price{
  min-height: var(--sv-slot-minh) !important;
  overflow: visible !important;

  /* centra tanto precios como el bloque NO DISPONIBLE del snippet */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  font-size: 14px !important;
  line-height: 1.1 !important;
  color: inherit !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Evitar pseudo-elementos raros del theme en el slot */
.woocommerce ul.products li.product .price::before,
.woocommerce ul.products li.product .price::after{
  content: none !important;
  display: none !important;
}

/* ==========================================================
   2B) SOLO cuando el SNIPPET marca sv-oos-slot => burbuja visible
   ========================================================== */
.woocommerce ul.products li.product .price.sv-oos-slot{
  /* ya está centrado por .price, pero lo reforzamos */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Burbuja NO DISPONIBLE (la imprime tu snippet) */
.woocommerce ul.products li.product .price.sv-oos-slot > .sv-no-disponible-slot{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;
  min-height: var(--sv-slot-minh) !important;

  margin: 0 !important;
  padding: 16px 18px !important;

  background: var(--sv-oos-bg) !important;
  background-color: var(--sv-oos-bg) !important;
  background-image: none !important;

  border: 1px dashed var(--sv-oos-border) !important;
  border-radius: 18px !important;

  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
  letter-spacing: .6px !important;
  text-transform: uppercase !important;

  color: var(--sv-oos-text) !important;
  opacity: 1 !important;
  visibility: visible !important;

  text-indent: 0 !important;
  -webkit-text-fill-color: var(--sv-oos-text) !important;

  box-shadow: 0 10px 26px rgba(0,0,0,.08) !important;
}

/* Blindaje extra por si el theme “apaga” spans internos */
.woocommerce ul.products li.product .price.sv-oos-slot > .sv-no-disponible-slot *{
  opacity: 1 !important;
  visibility: visible !important;
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

/* ==========================================================
   3) RELACIONADOS — GRID + MISMA ALTURA + CTA ABAJO
   ========================================================== */
.single-product .related,
.single-product .related ul.products{
  overflow: visible !important;
}

.single-product .related ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: var(--sv-rel-gap) !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: stretch !important;
}

@media (max-width: 1100px){
  .single-product .related ul.products{ grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 780px){
  .single-product .related ul.products{ grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; }
}
@media (max-width: 480px){
  .single-product .related ul.products{ grid-template-columns: 1fr !important; }
}

.single-product .related ul.products li.product{
  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;

  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;

  border-radius: var(--sv-rel-card-radius) !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Imagen 1:1 estable */
.single-product .related ul.products li.product a.woocommerce-loop-product__link{
  display: block !important;
  width: 100% !important;
  text-decoration: none !important;
}
.single-product .related ul.products li.product a.woocommerce-loop-product__link img{
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: var(--sv-rel-media-radius) var(--sv-rel-media-radius) 0 0 !important;
}

/* Título estable */
.single-product .related ul.products li.product .woocommerce-loop-product__title,
.single-product .related ul.products li.product h2.woocommerce-loop-product__title{
  margin: 12px var(--sv-rel-pad-x) 8px var(--sv-rel-pad-x) !important;
  font-weight: 800 !important;
  line-height: var(--sv-rel-title-lh) !important;

  display: -webkit-box !important;
  -webkit-line-clamp: var(--sv-rel-title-lines) !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;

  min-height: calc(var(--sv-rel-title-lines) * 1em * var(--sv-rel-title-lh)) !important;
}

/* Slot con margen lateral en relacionados */
.single-product .related ul.products li.product .price{
  margin: 10px var(--sv-rel-pad-x) 0 var(--sv-rel-pad-x) !important;
}

/* CTA abajo siempre */
.single-product .related ul.products li.product a.button,
.single-product .related ul.products li.product a.add_to_cart_button,
.single-product .related ul.products li.product a.ajax_add_to_cart,
.single-product .related ul.products li.product a.product_type_simple,
.single-product .related ul.products li.product a.product_type_variable,
.single-product .related ul.products li.product a.read-more,
.single-product .related ul.products li.product .woocommerce-loop-product__readmore{
  margin-top: auto !important;
  margin-bottom: var(--sv-rel-cta-mb) !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.single-product .related ul.products li.product *{
  box-sizing: border-box !important;
}

/* =========================
   SINGLE PRODUCT — NO DISPONIBLE (mismo estilo)
   ========================= */
.single-product div.product p.price.sv-oos-slot{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height: var(--sv-slot-minh) !important;
  margin: 14px 0 0 0 !important;
}

.single-product div.product p.price.sv-oos-slot > .sv-no-disponible-slot{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height: var(--sv-slot-minh) !important;
  padding: 16px 18px !important;
  background: var(--sv-oos-bg) !important;
  border: 1px dashed var(--sv-oos-border) !important;
  border-radius: 18px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .6px !important;
  text-transform: uppercase !important;
  color: var(--sv-oos-text) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.08) !important;
}

/* ==========================================================
   SINGLE PRODUCT — CENTRAR NO DISPONIBLE
   ========================================================== */

/* Contenedor del precio en single */
.single-product div.product p.price.sv-oos-slot{
  width: 100% !important;
  max-width: 520px !important; /* ajustable si lo quieres más ancho */
  margin-left: auto !important;
  margin-right: auto !important;

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

/* Burbuja interna */
.single-product div.product p.price.sv-oos-slot > .sv-no-disponible-slot{
  width: 100% !important;
  text-align: center !important;
}

/* =========================================================
   SV — CHECKOUT PREMIUM (UNIFICADO / SIN DUPLICADOS)
   - Oculta burbuja duplicada
   - Badge Bs premium (único)
   - Caja "Tu pedido" estilo banco
   - Métodos de pago modernizados (sin barra gris)
========================================================= */

/* 0) Ocultar la burbuja duplicada (kv-bcv-dual) SOLO en checkout */
.woocommerce-checkout #order_review small.kv-bcv-dual{
  display: none !important;
}

/* =========================================================
   1) CONTENEDORES / LAYOUT
========================================================= */
.woocommerce-checkout .woocommerce{
  max-width: 1200px;
}

.woocommerce-checkout form.checkout{
  margin-top: 14px;
}

/* Tarjeta derecha: Tu pedido + Payment */
.woocommerce-checkout .woocommerce-checkout-review-order{
  background: #ffffff !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  border-radius: 18px !important;
  padding: 18px 18px 14px !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.09) !important;
}

/* Títulos */
.woocommerce-checkout .woocommerce-checkout-review-order h3,
.woocommerce-checkout .woocommerce-checkout-review-order table thead th{
  font-size: 18px;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: .3px;
}

/* Precio general */
.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-Price-amount{
  font-size: 15px;
  font-weight: 650;
  color: #334155;
}

/* =========================================================
   2) TABLA DE RESUMEN "TU PEDIDO"
========================================================= */
.woocommerce-checkout .woocommerce-checkout-review-order-table{
  border: 0 !important;
  margin: 0 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  border: 0 !important;
  padding: 10px 10px !important;
  vertical-align: top !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{
  font-size: 12px !important;
  text-transform: uppercase;
  letter-spacing: .6px;
  color: rgba(15,23,42,.55) !important;
  padding-bottom: 10px !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr{
  border-top: 1px solid rgba(15,23,42,.08);
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr:first-child{
  border-top: 0;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{
  text-align: right !important;
}

/* Totales */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr{
  border-top: 1px solid rgba(15,23,42,.10);
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{
  font-size: 13px !important;
  color: rgba(15,23,42,.75) !important;
  font-weight: 800 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  text-align: right !important;
  font-weight: 900 !important;
}

/* Banda suave para el Total */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total{
  background: rgba(15,23,42,.04) !important;
  border-radius: 12px !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td{
  padding: 14px 12px !important;
  font-size: 14px !important;
  color: #020617 !important;
}

/* =========================================================
   3) BADGE BS (ÚNICO) + TAG BCV EURO
========================================================= */

/* Badge Bs premium SOLO en order_review */
.woocommerce-checkout #order_review .sv-price-bs{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 6px !important;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(15,23,42,.12) !important;
  background: linear-gradient(135deg,#f8fafc,#eef2ff) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  color: #020617 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7) !important;
}

/* Alineación del badge en la columna derecha */
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total .sv-price-bs{
  justify-content: flex-end !important;
}

/* Tag BCV Euro (oscuro premium) */
.woocommerce-checkout #order_review .sv-price-bs .sv-bcv-tag,
.woocommerce-checkout #order_review .sv-bcv-tag{
  background: #0f172a !important;
  color: #ffffff !important;
  font-size: 10px !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  font-weight: 700 !important;
  letter-spacing: .4px !important;
  opacity: .92 !important;
}

/* =========================================================
   4) MÉTODOS DE PAGO (SIN BARRA GRIS / TARJETAS)
========================================================= */

/* Contenedor payment */
.woocommerce-checkout #payment{
  margin-top: 14px !important;
  padding: 14px !important;
  border-radius: 16px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7) !important;
}

/* Reset estilos viejos */
.woocommerce-checkout #payment .wc_payment_methods,
.woocommerce-checkout #payment .payment_box{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Lista de métodos */
.woocommerce-checkout #payment ul.payment_methods{
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

/* Cada método: tarjeta */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  list-style: none !important;
  margin: 10px 0 !important;
  padding: 12px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(15,23,42,.10) !important;
  background: #ffffff !important;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(0,0,0,.07) !important;
  border-color: rgba(15,23,42,.16) !important;
}

/* Label y radio alineados */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label{
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  background: transparent !important;
  border: 0 !important;
}

/* Radio */
.woocommerce-checkout #payment input[type="radio"]{
  transform: scale(1.05);
  margin: 0 8px 0 0 !important;
}

/* Caja de detalles (si existe) */
.woocommerce-checkout #payment .payment_box{
  margin: 10px 0 0 !important;
  padding: 10px 0 0 !important;
  border-top: 1px dashed rgba(15,23,42,.14) !important;
  color: rgba(15,23,42,.75) !important;
  font-size: 12.5px !important;
}

/* Seleccionado: borde más fuerte (sin :has para compatibilidad) */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]:checked{
  accent-color: #0f172a;
}
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]:checked + label{
  color: #020617 !important;
}

/* =========================================================
   5) BOTÓN REALIZAR PEDIDO
========================================================= */
.woocommerce-checkout #place_order{
  border-radius: 14px !important;
  padding: 14px 16px !important;
  font-weight: 900 !important;
  letter-spacing: .2px !important;
  box-shadow: 0 14px 28px rgba(0,0,0,.12) !important;
}

/* =========================================================
   6) RESPONSIVE
========================================================= */
@media (max-width: 980px){
  .woocommerce-checkout .woocommerce-checkout-review-order{
    margin-top: 14px !important;
  }
}

/* =========================================================
   SV — CHECKOUT: CENTRADO + AIRE LATERAL (FIX)
   - Evita que todo quede pegado a la izquierda
========================================================= */

/* 1) Centrar el bloque completo del checkout */
.woocommerce-checkout .woocommerce,
.woocommerce-checkout .woocommerce-notices-wrapper,
.woocommerce-checkout form.checkout{
  width: 100% !important;
  max-width: 1200px !important; /* ajusta 1140/1200/1280 si quieres */
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 2) Padding lateral para que no toque los bordes (desktop/tablet) */
.woocommerce-checkout .woocommerce{
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

/* 3) Si tu tema usa contenedor interno, también lo centramos */
.woocommerce-checkout .site-container,
.woocommerce-checkout .content-container,
.woocommerce-checkout .entry-content,
.woocommerce-checkout .content-area{
  width: 100% !important;
}

/* 4) En pantallas grandes, un poco más de aire */
@media (min-width: 1280px){
  .woocommerce-checkout .woocommerce{
    padding-left: 32px !important;
    padding-right: 32px !important;
  }
}

/* 5) En móvil: padding más compacto */
@media (max-width: 768px){
  .woocommerce-checkout .woocommerce{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

.woocommerce-checkout-review-order h3{
  font-size: 20px !important;
  font-weight: 800 !important;
  margin-bottom: 12px !important;
}

.woocommerce-checkout-review-order{
  position: relative;
}
.woocommerce-checkout-review-order::before{
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  right: 20px;
  height: 1px;
  background: linear-gradient(
    to right,
    transparent,
    rgba(15,23,42,.15),
    transparent
  );
}

/* =========================================
   SV — CHECKOUT: TÍTULOS Y SUBTÍTULOS CENTRADOS
   Solo visual, no afecta lógica
========================================= */

/* Títulos principales */
.woocommerce-checkout h3,
.woocommerce-checkout h2{
  text-align: center !important;
}

/* Encabezados de secciones (Detalles, Tu pedido, Información adicional) */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout-review-order h3{
  text-align: center !important;
}

/* Subtítulos de tabla (Producto / Subtotal) */
.woocommerce-checkout-review-order-table thead th{
  text-align: center !important;
}

/* Títulos de métodos de pago */
#payment ul.payment_methods li label{
  text-align: center !important;
  width: 100%;
  display: block;
}

/* Texto legal inferior */
.woocommerce-checkout .woocommerce-privacy-policy-text{
  text-align: center !important;
}


/* Selector duración */
.sv-option{
  padding:10px 8px;
  border-radius:10px;
  text-align:center;
  font-size:12px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:#fff;
  transition:all .2s ease;
}

.sv-duration-selector input:checked + .sv-option{
  background:linear-gradient(135deg,#ff2e2e,#b40000);
  border-color:#ff2e2e;
  box-shadow:0 6px 20px rgba(255,35,35,.35);
}

/* ==========================================================
SV PRO — LANDING PREMIUM (SOLO DESCRIPCIÓN) + MEMBRESÍAS PAGE
CORREGIDO / LIMPIO / SIN CONFLICTOS (v2.0)
- Mantiene #svp-page (producto individual SV PRO)
- Mantiene #svm-page (landing /membresias-sv/)
- Fix: ocultar sedes / quantity SOLO en membresías
- Fix: body background SOLO en membresías (no global)
- Landing: cards estilo “BUY CARD” (black glass) + más aire
========================================================== */


/* ==========================================================
A) SV PRO — PRODUCTO INDIVIDUAL (Scope: #svp-page)
========================================================== */

#svp-page{
  max-width: 1120px;
  margin: 10px auto 60px;
  padding: 10px 0;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
#svp-page *{ box-sizing:border-box; }

#svp-page .svp-hero{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 18px;
  align-items: stretch;
  padding: 22px;
  border-radius: 28px;
  border: 1px solid rgba(0,0,0,.06);
  background:
    radial-gradient(circle at 15% 0%, rgba(255,46,46,.10), transparent 45%),
    radial-gradient(circle at 90% 80%, rgba(0,0,0,.04), transparent 55%),
    #ffffff;
  box-shadow: 0 24px 70px rgba(0,0,0,.10);
}

#svp-page .svp-pill{
  display:inline-flex;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,46,46,.20);
  background: rgba(255,46,46,.06);
  color: #c80000;
  font-weight: 900;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-size: 11px;
}
#svp-page .svp-title{
  margin: 14px 0 8px;
  font-size: 42px;
  font-weight: 950;
  letter-spacing: -.3px;
  line-height: 1.05;
  color: #0b0b0b;
}
#svp-page .svp-sub{
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(15,23,42,.72);
  max-width: 52ch;
}

#svp-page .svp-kpis{
  margin-top: 16px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
}
#svp-page .svp-kpi{
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(248,250,252,.85);
  border-radius: 16px;
  padding: 12px 12px;
}
#svp-page .svp-kpi__t{
  font-size: 12px;
  color: rgba(15,23,42,.55);
  font-weight: 800;
}
#svp-page .svp-kpi__v{
  margin-top: 4px;
  font-size: 14px;
  font-weight: 950;
  color: #0b0b0b;
}

#svp-page .svp-bullets{
  margin-top: 14px;
  display:grid;
  gap: 8px;
}
#svp-page .svp-bullet{
  font-size: 13px;
  color: rgba(15,23,42,.78);
  font-weight: 700;
}

#svp-page .svp-box{
  height: 100%;
  border-radius: 22px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.92));
  box-shadow: 0 16px 50px rgba(0,0,0,.10);
  overflow:hidden;
}
#svp-page .svp-box__head{
  padding: 14px 16px;
  border-bottom: 1px solid rgba(15,23,42,.06);
}
#svp-page .svp-box__h{
  font-weight: 950;
  color:#0b0b0b;
}
#svp-page .svp-box__s{
  margin-top: 3px;
  font-size: 12px;
  color: rgba(15,23,42,.55);
  font-weight: 700;
}
#svp-page .svp-box__body{ padding: 14px 16px; }
#svp-page .svp-note{
  padding: 14px;
  border-radius: 16px;
  border: 1px dashed rgba(15,23,42,.18);
  background: rgba(255,255,255,.65);
  color: rgba(15,23,42,.6);
  font-weight: 700;
  font-size: 13px;
}

/* BUY CARD */
#svp-page .svp-buy{
  margin-top: 18px;
  padding: 22px;
  border-radius: 28px;
  border: 1px solid rgba(0,0,0,.06);
  background:
    radial-gradient(circle at 18% 0%, rgba(255,46,46,.14), transparent 45%),
    linear-gradient(180deg,#0f0f10 0%, #070708 55%, #050506 100%);
  box-shadow: 0 45px 110px rgba(0,0,0,.30);
  color: rgba(255,255,255,.92);
}
#svp-page .svp-buy__top{
  display:flex;
  justify-content:space-between;
  gap: 16px;
  align-items:flex-end;
  flex-wrap:wrap;
}
#svp-page .svp-buy__kicker{
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,.70);
  font-weight: 950;
}
#svp-page .svp-buy__name{
  margin-top: 6px;
  font-size: 26px;
  font-weight: 950;
  color: #fff;
}

#svp-page .svp-price{
  display:flex;
  align-items:baseline;
  gap: 10px;
}
#svp-page .svp-price__cur{
  font-size: 18px;
  font-weight: 950;
  color: rgba(255,255,255,.80);
}
#svp-page .svp-price__num{
  font-size: 44px;
  font-weight: 990;
  color:#fff;
  letter-spacing: .2px;
}
#svp-page .svp-price__term{
  font-size: 13px;
  color: rgba(255,255,255,.72);
  font-weight: 900;
}

/* segmented */
#svp-page .svp-seg{
  margin-top: 14px;
  position: relative;
  display:flex;
  width: 100%;
  padding: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  gap: 6px;
}
#svp-page .svp-seg__btn{
  position:relative;
  z-index:2;
  flex:1 1 0;
  border:0;
  background:transparent;
  color: rgba(255,255,255,.78);
  padding: 12px 10px;
  border-radius: 999px;
  font-weight: 950;
  letter-spacing: .8px;
  text-transform: uppercase;
  font-size: 11px;
  cursor:pointer;
  white-space:nowrap;
  -webkit-tap-highlight-color: transparent;
  transition: transform .12s ease, color .12s ease, background .12s ease;
}
#svp-page .svp-seg__btn:hover{ transform: translateY(-1px); color:#fff; }
#svp-page .svp-seg__btn:active{ transform: translateY(0); }
#svp-page .svp-seg__btn.is-active{ color:#fff; filter: brightness(1.05); }

#svp-page .svp-seg__thumb{
  position:absolute;
  inset:6px auto 6px 6px;
  width: calc((100% - 12px) / 3);
  border-radius: 999px;
  background: linear-gradient(135deg,#ff2e2e 0%, #b40000 100%);
  box-shadow: 0 14px 34px rgba(255,35,35,.22);
  z-index:1;
  transform: translateX(0);
  transition: transform .22s ease, filter .22s ease;
  will-change: transform;
  filter: saturate(1.05);
  pointer-events:none !important;
}

/* meta */
#svp-page .svp-buy__meta{
  margin-top: 12px;
  display:flex;
  justify-content:space-between;
  gap: 12px;
  flex-wrap:wrap;
  align-items:center;
}
#svp-page .svp-chip{
  display:flex; gap: 10px; align-items:center; flex-wrap:wrap;
}
#svp-page .svp-chip__muted{
  color: rgba(255,255,255,.40);
  text-decoration: line-through;
  font-weight: 800;
  font-size: 12px;
  min-height: 14px;
}
#svp-page .svp-chip__hot{
  font-size: 12px;
  font-weight: 950;
  padding: 7px 10px;
  border-radius: 12px;
  background: rgba(255,46,46,.12);
  border: 1px solid rgba(255,46,46,.22);
  color: rgba(255,255,255,.92);
}
#svp-page .svp-mini{
  font-size: 12px;
  color: rgba(255,255,255,.62);
  font-weight: 700;
}

/* grid */
#svp-page .svp-buy__grid{
  margin-top: 14px;
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
#svp-page .svp-card{
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 14px;
}
#svp-page .svp-card__h{
  font-weight: 950;
  color:#fff;
  margin-bottom: 8px;
}
#svp-page .svp-card__li{
  font-size: 13px;
  color: rgba(255,255,255,.85);
  padding: 7px 0;
  border-top: 1px solid rgba(255,255,255,.08);
}

/* CTA */
#svp-page .svp-cta{
  margin-top: 16px;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width: 100%;
  min-height: 48px;
  padding: 18px 16px;
  border-radius: 16px;
  text-decoration:none;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 950;
  font-size: 12px;
  color:#fff;
  line-height:1 !important;
  text-align:center !important;
  background:
    radial-gradient(220px 80px at 20% 0%, rgba(255,255,255,.22), transparent 60%),
    linear-gradient(135deg,#b40000 0%, #ff2e2e 100%);
  box-shadow: 0 18px 50px rgba(255,35,35,.25);
  border: 1px solid rgba(255,255,255,.10);
}
#svp-page .svp-small{
  margin-top: 10px;
  text-align:center;
  font-size: 12px;
  color: rgba(255,255,255,.55);
}

/* FAQ */
#svp-page .svp-faq{
  margin-top: 18px;
  padding: 22px;
  border-radius: 28px;
  border: 1px solid rgba(0,0,0,.06);
  background: #fff;
  box-shadow: 0 22px 70px rgba(0,0,0,.08);
}
#svp-page .svp-faq__h{
  font-size: 18px;
  font-weight: 950;
  color:#0b0b0b;
  margin-bottom: 10px;
}
#svp-page .svp-q{
  border-top: 1px solid rgba(15,23,42,.08);
  padding: 10px 0;
}
#svp-page .svp-q summary{
  cursor:pointer;
  font-weight: 900;
  color: rgba(15,23,42,.85);
}
#svp-page .svp-a{
  margin-top: 8px;
  color: rgba(15,23,42,.70);
  line-height: 1.7;
  font-weight: 600;
}

/* Responsive */
@media (max-width: 980px){
  #svp-page .svp-hero{ grid-template-columns: 1fr; }
  #svp-page .svp-title{ font-size: 34px; }
  #svp-page .svp-buy__grid{ grid-template-columns: 1fr; }
}

/* Robustez (mantener clicks en seg si hay overlays) */
#svp-buy-card .svp-seg{ position: relative; isolation: isolate; }
#svp-buy-card .svp-seg__thumb{ pointer-events:none !important; z-index:0; }
#svp-buy-card .svp-seg__btn{ position:relative; z-index:2; cursor:pointer; }
#svp-buy-card, #svp-buy-card *{ position: relative; }


/* ==========================================================
B) REGLAS WOOCOMMERCE — SOLO MEMBRESÍAS
========================================================== */

/* Quitar cantidad SOLO en membresías (NO global) */
body.tax-product_cat.membresias-sv .quantity,
body.single-product.product_cat-membresias-sv .quantity{
  display:none !important;
}

/* Ocultar sistema de sedes SOLO en membresías */
body.tax-product_cat.membresias-sv .sv-availability,
body.tax-product_cat.membresias-sv .sv-sedes,
body.tax-product_cat.membresias-sv .sv-stock-box,
body.tax-product_cat.membresias-sv .sv-card-sedes,
body.single-product.product_cat-membresias-sv .sv-availability,
body.single-product.product_cat-membresias-sv .sv-sedes,
body.single-product.product_cat-membresias-sv .sv-stock-box,
body.single-product.product_cat-membresias-sv .sv-card-sedes{
  display:none !important;
}

/* Aviso upgrade (solo single product membresías) */
body.single-product.product_cat-membresias-sv form.cart{
  position: relative;
}
body.single-product.product_cat-membresias-sv form.cart::after{
  content: "⚠️ Si deseas cambiar a Instaladores (o Tienda), se reemplaza tu plan actual y se pierde el tiempo restante del anterior.";
  display:block;
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(226,11,11,.18);
  background: rgba(226,11,11,.06);
  color: rgba(15,23,42,.82);
  font-size: 12px;
  line-height: 1.35;
  font-weight: 700;
}


/* ==========================================================
C) SV — MEMBRESÍAS (LANDING /membresias-sv/) — MATCH BUY CARD
Scope: SOLO /membresias-sv/ + #svm-page
- Fondo “studio”
- Cards: black glass como el producto
- Más aire (padding/gaps/line-height)
- Segmented + CTA estilo premium oscuro
========================================================== */

/* Fondo studio SOLO en la landing */
body.page-membresias-sv{
  background:
    radial-gradient(1100px 520px at 18% 0%, rgba(255,46,46,.06), transparent 62%),
    radial-gradient(900px 520px at 85% 8%, rgba(0,0,0,.05), transparent 60%),
    linear-gradient(180deg, #fff7f6 0%, #ffffff 34%, #ffffff 100%) !important;
}

/* Header oscuro SOLO landing (si lo quieres rojo, me dices y lo ajusto) */
body.page-membresias-sv .site-header,
body.page-membresias-sv .main-navigation,
body.page-membresias-sv .primary-navigation,
body.page-membresias-sv .kadence-primary-nav,
body.page-membresias-sv .site-header-row{
  background: linear-gradient(180deg,#0b0b0c 0%, #0a0a0b 100%) !important;
  border-bottom: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.22) !important;
}
body.page-membresias-sv .main-navigation a,
body.page-membresias-sv .primary-navigation a{
  color: rgba(255,255,255,.90) !important;
}
body.page-membresias-sv .main-navigation a:hover,
body.page-membresias-sv .primary-navigation a:hover{
  color:#fff !important;
}

/* Layout */
#svm-page{
  max-width: 1180px;
  margin: 30px auto 80px;
  padding: 0 18px;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
#svm-page *{ box-sizing:border-box; }

/* Wrap glass */
#svm-page .svm-wrap{
  width:100%;
  padding: 26px 22px 18px;
  border-radius: 30px;
  border: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(1100px 460px at 18% 0%, rgba(255,46,46,.10), transparent 62%),
    radial-gradient(900px 420px at 85% 0%, rgba(0,0,0,.06), transparent 62%),
    rgba(255,255,255,.74);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow:
    0 40px 120px rgba(0,0,0,.10),
    0 1px 0 rgba(255,255,255,.85) inset,
    0 -1px 0 rgba(0,0,0,.03) inset;
}

/* Header */
#svm-page .svm-head{
  text-align:center;
  padding: 14px 10px 22px;
}
#svm-page .svm-pill{
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(226,11,11,.18);
  background:
    radial-gradient(260px 120px at 30% 0%, rgba(255,255,255,.55), transparent 60%),
    rgba(226,11,11,.06);
  color: rgba(168,0,0,.95);
  font-weight: 950;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  font-size: 10px;
  box-shadow: 0 10px 24px rgba(226,11,11,.08);
}
#svm-page .svm-title{
  margin: 12px 0 6px;
  font-size: 46px;
  line-height: 1.01;
  letter-spacing: -.8px;
  color: var(--svm-ink);
  font-weight: 990;
}
#svm-page .svm-sub{
  margin: 0 auto;
  max-width: 70ch;
  font-size: 14.5px;
  line-height: 1.7;
  color: rgba(15,23,42,.62);
  font-weight: 650;
}

/* Grid */
#svm-page .svm-grid{
  margin-top: 20px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;                 /* MÁS AIRE */
  align-items: stretch;
}

/* CARD: black glass (match producto) */
#svm-page .svm-card{
  position: relative;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(700px 260px at 18% 0%, rgba(255,46,46,.18), transparent 60%),
    radial-gradient(700px 320px at 85% 15%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg,#0f0f10 0%, #070708 58%, #050506 100%);
  box-shadow: 0 40px 120px rgba(0,0,0,.40);
  overflow:hidden;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, filter .16s ease;
}
#svm-page .svm-card:hover{
  transform: translateY(-6px);
  border-color: rgba(255,46,46,.20);
  box-shadow: 0 54px 150px rgba(0,0,0,.48);
  filter: brightness(1.01);
}
#svm-page .svm-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(520px 220px at 20% 0%, rgba(255,46,46,.22), transparent 62%);
  pointer-events:none;
  opacity: 1;
}

/* Recomendado (2da card) */
#svm-page .svm-card.is-featured,
#svm-page .svm-grid .svm-card:nth-child(2){
  border-color: rgba(255,46,46,.22);
  box-shadow: 0 60px 170px rgba(0,0,0,.52);
}

/* Badge recomendado */
#svm-page .svm-badge{
  position:absolute;
  top: 12px;
  right: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,46,46,.16);
  color: rgba(255,255,255,.92);
  font-weight: 950;
  letter-spacing: 1.4px;
  font-size: 10px;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(255,35,35,.16);
}

/* Card inner spacing (MUCHO MÁS AIRE) */
#svm-page .svm-card__in{
  position:relative;
  padding: 22px 20px 20px;
}

/* Textos */
#svm-page .svm-h{
  font-size: 15.5px;
  font-weight: 990;
  color: rgba(255,255,255,.95);
  margin: 0 0 8px;
  line-height: 1.25;
}
#svm-page .svm-p{
  margin: 0 0 16px;
  color: rgba(255,255,255,.72);
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
}

/* Segmented: oscuro */
#svm-page .svm-seg{
  display:flex;
  gap: 7px;
  padding: 7px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  box-shadow: 0 18px 44px rgba(0,0,0,.35);
  margin: 10px 0 16px;
}
#svm-page .svm-seg__btn{
  flex: 1 1 0;
  border: 0;
  padding: 12px 10px;
  border-radius: 999px;
  background: transparent;
  color: rgba(255,255,255,.68);
  font-weight: 950;
  letter-spacing: 1.25px;
  text-transform: uppercase;
  font-size: 10.5px;
  cursor: pointer;
  transition: transform .12s ease, background .12s ease, color .12s ease;
}
#svm-page .svm-seg__btn:hover{ transform: translateY(-1px); color: rgba(255,255,255,.92); }
#svm-page .svm-seg__btn.is-active{
  background:
    radial-gradient(260px 90px at 22% 0%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  color: #fff;
  box-shadow: 0 16px 40px rgba(255,35,35,.22);
}

/* Precio */
#svm-page .svm-price{
  margin: 14px 0 14px;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap: 12px;
}
#svm-page .svm-price__k{
  font-size: 10.5px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255,255,255,.55);
  font-weight: 900;
}
#svm-page .svm-price__v{
  font-size: 28px;
  font-weight: 990;
  color: rgba(255,255,255,.96);
  line-height: 1.05;
}

/* CTA: grande tipo barra */
#svm-page .svm-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  width: 100%;
  min-height: 52px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(420px 160px at 22% 0%, rgba(255,255,255,.16), transparent 60%),
    linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  color:#fff;
  text-decoration:none;
  font-weight: 990;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  font-size: 11px;
  box-shadow: 0 26px 70px rgba(255,35,35,.18);
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
  margin-top: 10px;
}
#svm-page .svm-cta:hover{
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 34px 95px rgba(255,35,35,.22);
}

/* lista (beneficios) */
#svm-page .svm-li{
  font-size: 12px;
  color: rgba(255,255,255,.86);
  font-weight: 700;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  line-height: 1.45;
}
#svm-page .svm-foot{
  margin-top: 14px;
  color: rgba(255,255,255,.62);
  font-size: 11.5px;
  font-weight: 650;
  line-height: 1.55;
}

/* FAQ (mantener claro, para contraste y lectura) */
#svm-page .svm-faq{
  margin-top: 16px;
  padding: 18px 18px;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.82);
  box-shadow: 0 26px 85px rgba(0,0,0,.08);
}
#svm-page .svm-faq__h{
  font-size: 16px;
  font-weight: 990;
  color: var(--svm-ink);
  margin: 0 0 10px;
}
#svm-page .svm-q{
  border-top: 1px solid rgba(15,23,42,.08);
  padding: 10px 0;
}
#svm-page .svm-q summary{
  cursor:pointer;
  font-weight: 900;
  color: rgba(15,23,42,.88);
}
#svm-page .svm-a{
  margin-top: 8px;
  color: rgba(15,23,42,.72);
  line-height: 1.7;
  font-weight: 650;
}

/* Responsive */
@media (max-width: 980px){
  #svm-page .svm-title{ font-size: 36px; }
  #svm-page .svm-grid{ grid-template-columns: 1fr; }
  #svm-page .svm-wrap{ padding: 18px 14px; }
}

/* ==========================================================
SV MEMBRESÍAS — FIX CLICKS + CAPAS (PEGAR AL FINAL)
- Evita overlays bloqueando clicks
- Asegura que el contenido esté arriba del ::before
========================================================== */

body.page-membresias-sv #svm-page .svm-card{
  position: relative;
  isolation: isolate; /* crea stacking context limpio */
}

/* Tu glow/overlay atrás, nunca encima del contenido */
body.page-membresias-sv #svm-page .svm-card::before,
body.page-membresias-sv #svm-page .svm-card::after{
  z-index: 0 !important;
  pointer-events: none !important;
}

/* Todo lo clickeable arriba */
body.page-membresias-sv #svm-page .svm-card__in{
  position: relative;
  z-index: 2 !important;
}

/* Segmented + botones: forzar clicks */
body.page-membresias-sv #svm-page .svm-seg,
body.page-membresias-sv #svm-page .svm-seg__btn,
body.page-membresias-sv #svm-page .svm-cta{
  position: relative;
  z-index: 3 !important;
  pointer-events: auto !important;
}

/* ==========================================================
SV MEMBRESÍAS — FIX VISIBILIDAD TOTAL (TEXT BOOST) v1.0
PEGAR AL FINAL ABSOLUTO
- Fuerza texto blanco real en las 3 cards
- Mata text-fill transparent / background-clip:text / blend
- Sube contraste + sombra sutil
========================================================== */

body.page-membresias-sv #svm-page .svm-card{
  color: rgba(255,255,255,.96) !important;
}

/* Títulos / headers */
body.page-membresias-sv #svm-page .svm-card__name,
body.page-membresias-sv #svm-page .svm-card__name *,
body.page-membresias-sv #svm-page .svm-card__top h3,
body.page-membresias-sv #svm-page .svm-card__top h3 *{
  color: rgba(255,255,255,.98) !important;
  -webkit-text-fill-color: rgba(255,255,255,.98) !important;
  background: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Descripciones */
body.page-membresias-sv #svm-page .svm-card__desc,
body.page-membresias-sv #svm-page .svm-card__desc *{
  color: rgba(255,255,255,.84) !important;
  -webkit-text-fill-color: rgba(255,255,255,.84) !important;
  background: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Precio (Desde / monto / /meses) */
body.page-membresias-sv #svm-page .svm-price,
body.page-membresias-sv #svm-page .svm-price *{
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
  background: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}
body.page-membresias-sv #svm-page .svm-price__num{
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 2px 0 rgba(0,0,0,.6) !important;
}

/* Lista de beneficios */
body.page-membresias-sv #svm-page .svm-list,
body.page-membresias-sv #svm-page .svm-list li,
body.page-membresias-sv #svm-page .svm-list li *{
  color: rgba(255,255,255,.90) !important;
  -webkit-text-fill-color: rgba(255,255,255,.90) !important;
  background: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Texto mini al final */
body.page-membresias-sv #svm-page .svm-mini,
body.page-membresias-sv #svm-page .svm-mini *{
  color: rgba(255,255,255,.78) !important;
  -webkit-text-fill-color: rgba(255,255,255,.78) !important;
  background: none !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Segmented: letras SIEMPRE visibles */
body.page-membresias-sv #svm-page .svm-seg__btn{
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
}
body.page-membresias-sv #svm-page .svm-seg__btn.is-active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.65) !important;
}

/* Blindaje anti “texto transparente por diseño” */
body.page-membresias-sv #svm-page .svm-card *{
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
}

/* Por si Kadence/tema aplica color oscuro a todo dentro de card */
body.page-membresias-sv #svm-page .svm-card{
  color: rgba(255,255,255,.88) !important;
}

body.page-membresias-sv #svm-page .svm-card .svm-card__top,
body.page-membresias-sv #svm-page .svm-card .svm-card__top *{
  color: rgba(255,255,255,.92) !important;
}

/* ==========================================================
SV — MEMBRESÍAS /membresias-sv/ — ULTRA PREMIUM (FIX TEXT)
- Corrige letras invisibles (forzando contraste)
- Black glass cards + segmented con thumb
- TODO scoped: body.page-membresias-sv + #svm-page (NO global)
========================================================== */

/* Variables */
body.page-membresias-sv{
  --svm-red:#ff2e2e;
  --svm-red-deep:#b40000;
  --svm-ink:#070708;
  --svm-line:rgba(255,255,255,.10);
  --svm-muted:rgba(255,255,255,.72);
  --svm-muted2:rgba(255,255,255,.58);
}

/* Fondo SOLO landing */
body.page-membresias-sv{
  background:
    radial-gradient(1100px 520px at 18% 0%, rgba(255,46,46,.07), transparent 62%),
    radial-gradient(900px 520px at 85% 8%, rgba(0,0,0,.06), transparent 60%),
    linear-gradient(180deg, #fff7f6 0%, #ffffff 34%, #ffffff 100%) !important;
}

/* Contenedor */
body.page-membresias-sv #svm-page{
  max-width: 1180px;
  margin: 30px auto 80px;
  padding: 0 18px;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
body.page-membresias-sv #svm-page *{ box-sizing:border-box; }

/* Wrap glass */
body.page-membresias-sv #svm-page .svm-wrap{
  width:100%;
  padding: 26px 22px 18px;
  border-radius: 30px;
  border: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(1100px 460px at 18% 0%, rgba(255,46,46,.10), transparent 62%),
    radial-gradient(900px 420px at 85% 0%, rgba(0,0,0,.06), transparent 62%),
    rgba(255,255,255,.74);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow:
    0 40px 120px rgba(0,0,0,.10),
    0 1px 0 rgba(255,255,255,.85) inset,
    0 -1px 0 rgba(0,0,0,.03) inset;
}

/* Header */
body.page-membresias-sv #svm-page .svm-head{
  text-align:center;
  padding: 14px 10px 22px;
}
body.page-membresias-sv #svm-page .svm-pill{
  display:inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(226,11,11,.18);
  background:
    radial-gradient(260px 120px at 30% 0%, rgba(255,255,255,.55), transparent 60%),
    rgba(226,11,11,.06);
  color: rgba(168,0,0,.95);
  font-weight: 950;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  font-size: 10px;
  box-shadow: 0 10px 24px rgba(226,11,11,.08);
}
body.page-membresias-sv #svm-page .svm-title{
  margin: 12px 0 6px;
  font-size: 46px;
  line-height: 1.01;
  letter-spacing: -.8px;
  color: #0b0b0b;
  font-weight: 990;
}
body.page-membresias-sv #svm-page .svm-sub{
  margin: 0 auto;
  max-width: 70ch;
  font-size: 14.5px;
  line-height: 1.7;
  color: rgba(15,23,42,.62);
  font-weight: 650;
}

/* Grid */
body.page-membresias-sv #svm-page .svm-grid{
  margin-top: 20px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
  align-items: stretch;
}

/* CARD black glass */
body.page-membresias-sv #svm-page .svm-card{
  position: relative;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(700px 260px at 18% 0%, rgba(255,46,46,.18), transparent 60%),
    radial-gradient(700px 320px at 85% 15%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg,#0f0f10 0%, #070708 58%, #050506 100%);
  box-shadow: 0 40px 120px rgba(0,0,0,.40);
  overflow:hidden;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, filter .16s ease;
  isolation: isolate; /* FIX stacking */
}
body.page-membresias-sv #svm-page .svm-card:hover{
  transform: translateY(-6px);
  border-color: rgba(255,46,46,.20);
  box-shadow: 0 54px 150px rgba(0,0,0,.48);
  filter: brightness(1.01);
}
body.page-membresias-sv #svm-page .svm-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(520px 220px at 20% 0%, rgba(255,46,46,.22), transparent 62%);
  pointer-events:none;
  z-index:0;
}

/* CONTENIDO ARRIBA + FIX LETRAS INVISIBLES */
body.page-membresias-sv #svm-page .svm-card > *{
  position: relative;
  z-index: 2;
}
body.page-membresias-sv #svm-page .svm-card,
body.page-membresias-sv #svm-page .svm-card *{
  color: rgba(255,255,255,.92) !important;
}

/* Badge recomendado */
body.page-membresias-sv #svm-page .svm-badge{
  position:absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,46,46,.16);
  color: rgba(255,255,255,.92) !important;
  font-weight: 950;
  letter-spacing: 1.4px;
  font-size: 10px;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(255,35,35,.16);
}

/* Top block */
body.page-membresias-sv #svm-page .svm-card__top{
  padding: 22px 20px 10px;
}
body.page-membresias-sv #svm-page .svm-card__name{
  margin: 0 0 6px;
  font-size: 15.5px;
  font-weight: 990;
  letter-spacing: -.2px;
}
body.page-membresias-sv #svm-page .svm-card__desc{
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
  color: var(--svm-muted) !important;
}

/* Segmented (con thumb) */
body.page-membresias-sv #svm-page .svm-seg{
  margin: 14px 18px 12px;
  position: relative;
  display:flex;
  width: calc(100% - 36px);
  padding: 7px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  gap: 7px;
  z-index: 3;
}
body.page-membresias-sv #svm-page .svm-seg__btn{
  position: relative;
  z-index: 2;
  flex:1 1 0;
  border:0;
  background:transparent;
  padding: 12px 10px;
  border-radius: 999px;
  font-weight: 950;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-size: 10.5px;
  cursor:pointer;
  color: rgba(255,255,255,.78) !important;
  -webkit-tap-highlight-color: transparent;
  transition: transform .12s ease, color .12s ease, filter .12s ease;
}
body.page-membresias-sv #svm-page .svm-seg__btn:hover{ transform: translateY(-1px); color:#fff !important; }
body.page-membresias-sv #svm-page .svm-seg__btn.is-active{ color:#fff !important; }

body.page-membresias-sv #svm-page .svm-seg__thumb{
  position:absolute;
  inset:7px auto 7px 7px;
  width: calc((100% - 14px) / 3);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  box-shadow: 0 16px 40px rgba(255,35,35,.22);
  z-index: 1;
  transform: translateX(0);
  transition: transform .22s ease;
  will-change: transform;
  pointer-events:none !important;
}

/* Row: precio + CTA */
body.page-membresias-sv #svm-page .svm-row{
  padding: 10px 20px 0;
}
body.page-membresias-sv #svm-page .svm-price{
  display:flex;
  align-items:baseline;
  gap: 10px;
  margin: 6px 0 12px;
}
body.page-membresias-sv #svm-page .svm-price__from{
  font-size: 11px;
  color: rgba(255,255,255,.62) !important;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
}
body.page-membresias-sv #svm-page .svm-price__num{
  font-size: 30px;
  font-weight: 990;
  color: #fff !important;
}
body.page-membresias-sv #svm-page .svm-price__term{
  font-size: 12px;
  color: rgba(255,255,255,.70) !important;
  font-weight: 850;
}

/* CTA */
body.page-membresias-sv #svm-page .svm-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  width: 100%;
  min-height: 52px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(420px 160px at 22% 0%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  color:#fff !important;
  text-decoration:none;
  font-weight: 990;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  font-size: 11px;
  box-shadow: 0 26px 70px rgba(255,35,35,.18);
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
}
body.page-membresias-sv #svm-page .svm-cta:hover{
  transform: translateY(-2px);
  filter: brightness(1.03);
  box-shadow: 0 34px 95px rgba(255,35,35,.22);
}

/* Lista */
body.page-membresias-sv #svm-page .svm-list{
  list-style: none;
  margin: 14px 0 0;
  padding: 0 20px 18px;
}
body.page-membresias-sv #svm-page .svm-list li{
  padding: 11px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: 12.5px;
  line-height: 1.45;
  color: rgba(255,255,255,.86) !important;
  font-weight: 700;
}
body.page-membresias-sv #svm-page .svm-mini{
  padding: 0 20px 20px;
  margin: 0;
  font-size: 11.5px;
  line-height: 1.55;
  color: rgba(255,255,255,.62) !important;
  font-weight: 650;
}

/* FAQ (claro para lectura) */
body.page-membresias-sv #svm-page .svm-faq{
  margin-top: 16px;
  padding: 18px 18px;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.82);
  box-shadow: 0 26px 85px rgba(0,0,0,.08);
}
body.page-membresias-sv #svm-page .svm-faq,
body.page-membresias-sv #svm-page .svm-faq *{
  color: rgba(15,23,42,.88) !important;
}
body.page-membresias-sv #svm-page .svm-faq__h{
  font-size: 16px;
  font-weight: 990;
  margin: 0 0 10px;
}
body.page-membresias-sv #svm-page .svm-q{
  border-top: 1px solid rgba(15,23,42,.08);
  padding: 10px 0;
}
body.page-membresias-sv #svm-page .svm-q summary{
  cursor:pointer;
  font-weight: 900;
}
body.page-membresias-sv #svm-page .svm-a{
  margin-top: 8px;
  color: rgba(15,23,42,.72) !important;
  line-height: 1.7;
  font-weight: 650;
}

/* Responsive */
@media (max-width: 980px){
  body.page-membresias-sv #svm-page .svm-title{ font-size: 36px; }
  body.page-membresias-sv #svm-page .svm-grid{ grid-template-columns: 1fr; }
  body.page-membresias-sv #svm-page .svm-wrap{ padding: 18px 14px; }
}

body.page-membresias-sv #svm-page ::selection{
  background: rgba(255,46,46,.28);
  color: #fff;
}

/* ========================================
FIX OPACIDAD / OVERLAY OSCURO EN CARDS
======================================== */

/* Asegura que la card NO tenga opacidad */
body.page-membresias-sv #svm-page .svm-card{
  opacity: 1 !important;
  filter: none !important;
}

/* Fuerza el contenido visible */
body.page-membresias-sv #svm-page .svm-card *,
body.page-membresias-sv #svm-page .svm-card h3,
body.page-membresias-sv #svm-page .svm-card p,
body.page-membresias-sv #svm-page .svm-card li{
  opacity: 1 !important;
  filter: none !important;
}

/* Mata overlays de Kadence si existen */
body.page-membresias-sv #svm-page .svm-card .kt-overlay,
body.page-membresias-sv #svm-page .svm-card .kb-background-overlay{
  display: none !important;
}

/* ==========================================================
SV MEMBRESÍAS — PATCH FINAL (VISIBILIDAD + CAPAS) v3.0
PEGAR AL FINAL ABSOLUTO
- Mata overlays encima del texto
- Fuerza stacking limpio y contenido arriba
- Fuerza texto blanco real + sombra (sin blend raros)
========================================================== */

body.page-membresias-sv #svm-page .svm-card{
  position: relative !important;
  isolation: isolate !important;   /* crea stacking context limpio */
  opacity: 1 !important;
  filter: none !important;
  transform: none;
}

/* 1) Cualquier overlay típico de Kadence/Kadence Blocks */
body.page-membresias-sv #svm-page .svm-card .kt-overlay,
body.page-membresias-sv #svm-page .svm-card .kb-background-overlay,
body.page-membresias-sv #svm-page .svm-card .kb-section-overlay,
body.page-membresias-sv #svm-page .svm-card .kadence-blocks-overlay,
body.page-membresias-sv #svm-page .svm-card [class*="overlay"],
body.page-membresias-sv #svm-page .svm-card [class*="Overlay"]{
  display: none !important;
}

/* 2) Tu ::before y cualquier pseudo-elemento SIEMPRE atrás */
body.page-membresias-sv #svm-page .svm-card::before,
body.page-membresias-sv #svm-page .svm-card::after{
  z-index: 0 !important;
  pointer-events: none !important;
}

/* 3) Todo el contenido arriba */
body.page-membresias-sv #svm-page .svm-card > *{
  position: relative !important;
  z-index: 2 !important;
}

/* 4) Blindaje anti “texto transparente / clip / blend” */
body.page-membresias-sv #svm-page .svm-card,
body.page-membresias-sv #svm-page .svm-card *{
  color: rgba(255,255,255,.92) !important;
  -webkit-text-fill-color: rgba(255,255,255,.92) !important;
  background: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

/* 5) Jerarquía + contraste real */
body.page-membresias-sv #svm-page .svm-card__name{
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 2px 0 rgba(0,0,0,.55) !important;
}
body.page-membresias-sv #svm-page .svm-card__desc{
  color: rgba(255,255,255,.74) !important;
  -webkit-text-fill-color: rgba(255,255,255,.74) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
}

body.page-membresias-sv #svm-page .svm-list li{
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
}

body.page-membresias-sv #svm-page .svm-price__num{
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: 0 2px 0 rgba(0,0,0,.65) !important;
}

/* 6) Segmented siempre clickeable arriba */
body.page-membresias-sv #svm-page .svm-seg,
body.page-membresias-sv #svm-page .svm-seg__btn,
body.page-membresias-sv #svm-page .svm-seg__thumb,
body.page-membresias-sv #svm-page .svm-cta{
  position: relative !important;
  z-index: 5 !important;
  pointer-events: auto !important;
}
body.page-membresias-sv #svm-page .svm-seg__thumb{
  z-index: 1 !important;
  pointer-events: none !important;
}
body.page-membresias-sv #svm-page .svm-seg__btn{
  z-index: 2 !important;
}

/* 7) (Opcional) Suaviza el “apagado” del fondo inferior de la card
   Si quieres que se lea MÁS, subimos un poco el fondo */
body.page-membresias-sv #svm-page .svm-card{
  background:
    radial-gradient(700px 260px at 18% 0%, rgba(255,46,46,.18), transparent 60%),
    radial-gradient(700px 320px at 85% 15%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg,#141416 0%, #0a0a0b 58%, #070708 100%) !important;
}

/* ==========================================================
SV — MEMBRESÍAS /membresias-sv/ — 3 NIVELES (PRO) v1.1 FIX
- No depende de body.page-membresias-sv
- Resetea colores heredados que te estaban apagando el texto
========================================================== */

#svm-page{
  --svm-red:#ff2e2e;
  --svm-red-deep:#b40000;
  --svm-ink:#070708;
  --svm-line:rgba(255,255,255,.12);
  --svm-muted:rgba(255,255,255,.78);
  --svm-muted2:rgba(255,255,255,.60);

  max-width: 1180px;
  margin: 30px auto 80px;
  padding: 0 18px;
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
#svm-page, #svm-page *{ box-sizing:border-box; }

/* Fondo SOLO del bloque (no toca tu header rojo del theme) */
#svm-page .svm-wrap{
  width:100%;
  padding: 26px 22px 18px;
  border-radius: 30px;
  border: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(1100px 460px at 18% 0%, rgba(255,46,46,.10), transparent 62%),
    radial-gradient(900px 420px at 85% 0%, rgba(0,0,0,.06), transparent 62%),
    rgba(255,255,255,.74);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow:
    0 40px 120px rgba(0,0,0,.10),
    0 1px 0 rgba(255,255,255,.85) inset,
    0 -1px 0 rgba(0,0,0,.03) inset;
}

/* Header del bloque */
#svm-page .svm-head{ text-align:center; padding: 14px 10px 22px; }
#svm-page .svm-pill{
  display:inline-flex;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(226,11,11,.18);
  background:
    radial-gradient(260px 120px at 30% 0%, rgba(255,255,255,.55), transparent 60%),
    rgba(226,11,11,.06);
  color: rgba(168,0,0,.95) !important;
  font-weight: 950;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  font-size: 10px;
  box-shadow: 0 10px 24px rgba(226,11,11,.08);
}
#svm-page .svm-title{
  margin: 12px 0 6px;
  font-size: 46px;
  line-height: 1.01;
  letter-spacing: -.8px;
  color: #0b0b0b !important;
  font-weight: 990;
}
#svm-page .svm-sub{
  margin: 0 auto;
  max-width: 70ch;
  font-size: 14.5px;
  line-height: 1.7;
  color: rgba(15,23,42,.62) !important;
  font-weight: 650;
}

/* Grid */
#svm-page .svm-grid{
  margin-top: 20px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 22px;
  align-items: stretch;
}

/* CARD (glass negro) */
#svm-page .svm-card{
  position: relative;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(700px 260px at 18% 0%, rgba(255,46,46,.20), transparent 60%),
    radial-gradient(700px 320px at 85% 15%, rgba(255,255,255,.06), transparent 60%),
    linear-gradient(180deg,#121214 0%, #070708 58%, #050506 100%);
  box-shadow: 0 40px 120px rgba(0,0,0,.40);
  overflow:hidden;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

/* 🔥 FIX CRÍTICO: fuerza texto blanco dentro de la card (evita herencias del theme) */
#svm-page .svm-card,
#svm-page .svm-card *{
  color: rgba(255,255,255,.92) !important;
}
#svm-page .svm-card a{ text-decoration:none !important; }

#svm-page .svm-card:hover{
  transform: translateY(-6px);
  border-color: rgba(255,46,46,.22);
  box-shadow: 0 54px 150px rgba(0,0,0,.48);
}
#svm-page .svm-card--mid{
  border-color: rgba(255,46,46,.22);
  box-shadow: 0 60px 170px rgba(0,0,0,.52);
}

/* Badge recomendado */
#svm-page .svm-badge{
  position:absolute;
  top: 12px;
  right: 12px;
  z-index: 4;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,46,46,.16);
  font-weight: 950;
  letter-spacing: 1.4px;
  font-size: 10px;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(255,35,35,.16);
}

/* NIVEL 1 */
#svm-page .svm-card__top{ padding: 20px 20px 10px; }
#svm-page .svm-card__name{
  margin: 0 0 6px;
  font-size: 22px;
  font-weight: 990;
  letter-spacing: -.2px;
}
#svm-page .svm-card__desc{
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
  font-weight: 650;
  color: var(--svm-muted) !important;
}

/* NIVEL 2 (segmented) */
#svm-page .svm-seg{
  margin: 10px 18px 12px;
  position: relative;
  display:flex;
  width: calc(100% - 36px);
  padding: 7px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.05);
  gap: 7px;
  z-index: 3;
}
#svm-page .svm-seg__btn{
  position: relative;
  z-index: 2;
  flex:1 1 0;
  border:0 !important;
  background:transparent !important;
  padding: 12px 10px;
  border-radius: 999px;
  font-weight: 950;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-size: 10.5px;
  cursor:pointer;
  color: rgba(255,255,255,.78) !important;
  transition: transform .12s ease, color .12s ease;
}
#svm-page .svm-seg__btn:hover{ transform: translateY(-1px); color:#fff !important; }
#svm-page .svm-seg__btn.is-active{ color:#fff !important; }

#svm-page .svm-seg__thumb{
  position:absolute;
  inset:7px auto 7px 7px;
  width: calc((100% - 14px) / 3);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  box-shadow: 0 16px 40px rgba(255,35,35,.22);
  z-index: 1;
  transform: translateX(0);
  transition: transform .22s ease;
  pointer-events:none !important;
}

/* Precio + CTA */
#svm-page .svm-row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 20px 12px;
}
#svm-page .svm-price{ display:flex; align-items:baseline; gap: 8px; }
#svm-page .svm-price__from{ font-size: 12px; font-weight: 800; color: rgba(255,255,255,.62) !important; }
#svm-page .svm-price__num{ font-size: 32px; font-weight: 990; color:#fff !important; }
#svm-page .svm-price__term{ font-size: 12px; font-weight: 850; color: rgba(255,255,255,.70) !important; }

#svm-page .svm-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 0 14px;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(260px 120px at 22% 0%, rgba(255,255,255,.16), transparent 60%),
    linear-gradient(135deg, var(--svm-red-deep) 0%, var(--svm-red) 100%);
  font-weight: 990;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-size: 10.5px;
  box-shadow: 0 18px 44px rgba(255,35,35,.18);
  transition: transform .14s ease, filter .14s ease;
  white-space: nowrap;
}
#svm-page .svm-cta:hover{ transform: translateY(-2px); filter: brightness(1.03); }

/* NIVEL 3 */
#svm-page .svm-list{
  list-style:none;
  margin: 0;
  padding: 10px 20px 0;
}
#svm-page .svm-list li{
  padding: 9px 0;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: 13px;
  font-weight: 650;
  color: rgba(255,255,255,.86) !important;
}
#svm-page .svm-list li:first-child{ border-top: 0; padding-top: 0; }

#svm-page .svm-mini{
  margin: 10px 20px 18px;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 650;
  color: rgba(255,255,255,.62) !important;
}

/* FAQ */
#svm-page .svm-faq{
  margin-top: 16px;
  padding: 18px 18px;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: rgba(255,255,255,.82);
  box-shadow: 0 26px 85px rgba(0,0,0,.08);
}
#svm-page .svm-faq, #svm-page .svm-faq *{ color: rgba(15,23,42,.88) !important; }
#svm-page .svm-faq__h{ font-size: 16px; font-weight: 990; margin: 0 0 10px; }
#svm-page .svm-q{ border-top: 1px solid rgba(15,23,42,.08); padding: 10px 0; }
#svm-page .svm-q summary{ cursor:pointer; font-weight: 900; }
#svm-page .svm-a{ margin-top: 8px; color: rgba(15,23,42,.72) !important; line-height: 1.7; font-weight: 650; }

/* Responsive */
@media (max-width: 980px){
  #svm-page .svm-title{ font-size: 36px; }
  #svm-page .svm-grid{ grid-template-columns: 1fr; }
  #svm-page .svm-wrap{ padding: 18px 14px; }
}

/* ==========================================================
SV — MEMBRESÍAS — PATCH LAYOUT (anti-choques) v1.0
Pegar al FINAL del CSS para que sobreescriba lo anterior
========================================================== */

/* 1) Estructura interna por “zonas” */
#svm-page .svm-card{
  display:flex;
  flex-direction: column;
  min-height: 520px;              /* iguala altura base */
}

/* Top fijo */
#svm-page .svm-card__top{ padding-bottom: 6px; }

/* Segmented fijo */
#svm-page .svm-seg{ flex: 0 0 auto; }

/* 2) Precio + CTA: evitar que se compriman y se rompan */
#svm-page .svm-row{
  flex: 0 0 auto;
  display:grid !important;
  grid-template-columns: 1fr;
  gap: 12px;
  padding-top: 6px;
  padding-bottom: 12px;
}

/* Precio alineado limpio */
#svm-page .svm-price{
  display:flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  flex-wrap: wrap;                /* si es muy estrecho, baja ordenado */
}

/* Evita que “Desde” y “/ 3 meses” se partan feo */
#svm-page .svm-price__from,
#svm-page .svm-price__term{
  white-space: nowrap;
  opacity: .85;
}

/* Número grande sin romper */
#svm-page .svm-price__num{
  line-height: 1;
  white-space: nowrap;
}

/* CTA full width para que no choque */
#svm-page .svm-cta{
  width: 100% !important;
  min-height: 46px;
  border-radius: 16px;
}

/* 3) Lista crece pero con límites visuales */
#svm-page .svm-list{
  flex: 1 1 auto;                 /* ocupa el espacio “medio” */
  margin-top: 6px;
}

/* 4) Nota mini siempre abajo, separada */
#svm-page .svm-mini{
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,.08);
  flex: 0 0 auto;
}

/* 5) Ajuste tipografías para que no se encimen en cards */
#svm-page .svm-card__name{ font-size: 20px; }
#svm-page .svm-card__desc{ font-size: 12.5px; }

/* 6) Grilla: evita que se “aprieten” demasiado antes de romper */
@media (max-width: 1100px){
  #svm-page .svm-grid{ grid-template-columns: 1fr; }
  #svm-page .svm-card{ min-height: auto; }
}

/* 7) El selector: botones iguales (no se montan) */
#svm-page .svm-seg__btn{
  padding: 11px 8px !important;
  font-size: 10px !important;
}

/* ====== PATCH v13.1 (alineación + 4 dígitos + badge opcional) ====== */

/* Header: opcional pero recomendado */
.svp-header { text-align:center; margin-bottom:70px; }
.svp-badge{
  display:inline-block;
  margin-bottom:18px;
  padding:6px 14px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--r);
  border:1px solid rgba(255,43,43,.55);
  background:rgba(255,43,43,.08);
}

/* Precio: baseline real + números fluidos */
.svp-price-row{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-bottom:8px;
  white-space:nowrap;
}

.svp-symbol{
  font-size:clamp(20px, 2vw, 26px);
  opacity:.8;
  font-weight:800;
  transform:none;            /* <- clave */
  line-height:1;
}

.svp-val{
  font-size:clamp(64px, 5.2vw, 86px); /* <- blindaje 4 dígitos */
  font-weight:800;
  letter-spacing:-.06em;
  line-height:.95;
}

/* =========================================
   SV CHECKOUT VISUAL SIN CAMBIAR POSICIONES
   PEGAR AL FINAL DE TODO EL CSS ACTUAL
   ========================================= */

body.woocommerce-checkout{
  background:
    radial-gradient(circle at top right, rgba(225,37,27,.045), transparent 28%),
    linear-gradient(180deg,#f5f3f0 0%, #f3f1ee 100%) !important;
}

body.woocommerce-checkout .site,
body.woocommerce-checkout .site-content,
body.woocommerce-checkout .content-area,
body.woocommerce-checkout .site-main{
  background:transparent !important;
}

/* contenedor general */
body.woocommerce-checkout .woocommerce{
  max-width:1120px !important;
  margin:0 auto !important;
  padding:26px 18px 60px !important;
}

/* aviso cupón */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{
  margin-bottom:20px !important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
  background:#efeae3 !important;
  border:1px solid #dfd7cc !important;
  border-left:4px solid #d92c1f !important;
  border-radius:16px !important;
  padding:16px 18px !important;
  color:#252525 !important;
  box-shadow:0 8px 20px rgba(0,0,0,.04) !important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a{
  color:#d92c1f !important;
  font-weight:900 !important;
}

/* mantener layout actual y solo dar aire */
body.woocommerce-checkout form.checkout{
  gap:28px !important;
}

/* títulos */
body.woocommerce-checkout h3,
body.woocommerce-checkout #order_review_heading{
  font-size:24px !important;
  line-height:1.02 !important;
  font-weight:900 !important;
  letter-spacing:-.03em !important;
  color:#111 !important;
  margin:0 0 18px !important;
}

/* labels */
body.woocommerce-checkout label{
  display:block !important;
  margin-bottom:8px !important;
  font-size:12px !important;
  font-weight:800 !important;
  color:#1b1b1b !important;
}

/* campos */
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select{
  min-height:46px !important;
  border-radius:12px !important;
  border:1px solid #d8dde6 !important;
  background:#fcfcfd !important;
  color:#111827 !important;
  padding:0 14px !important;
  font-size:14px !important;
  box-shadow:none !important;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

body.woocommerce-checkout textarea{
  min-height:92px !important;
  padding:12px 14px !important;
  resize:vertical !important;
}

body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus{
  background:#fff !important;
  border-color:#e1251b !important;
  box-shadow:0 0 0 4px rgba(225,37,27,.08) !important;
  outline:none !important;
}

/* Select2 */
body.woocommerce-checkout .select2-container{
  width:100% !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single{
  height:46px !important;
  border-radius:12px !important;
  border:1px solid #d8dde6 !important;
  background:#fcfcfd !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:44px !important;
  padding-left:14px !important;
  color:#111827 !important;
}

body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
  height:44px !important;
}

/* panel derecho */
body.woocommerce-checkout #order_review{
  background:#fbfbfc !important;
  border:1px solid #e5e7ec !important;
  border-radius:22px !important;
  padding:14px 14px 16px !important;
  box-shadow:0 16px 34px rgba(20,20,26,.05) !important;
}

/* tabla pedido */
body.woocommerce-checkout table.shop_table{
  border:none !important;
  background:transparent !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  margin:0 !important;
}

body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td{
  border-top:1px solid #ececf1 !important;
  padding:12px 8px !important;
  font-size:13px !important;
  color:#151515 !important;
  vertical-align:middle !important;
}

body.woocommerce-checkout table.shop_table thead th{
  border-top:none !important;
  font-size:10px !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  color:#747887 !important;
  font-weight:900 !important;
}

body.woocommerce-checkout table.shop_table tbody tr:first-child td{
  border-top:none !important;
}

body.woocommerce-checkout .product-name{
  font-weight:900 !important;
  line-height:1.4 !important;
}

body.woocommerce-checkout .cart-subtotal th,
body.woocommerce-checkout .order-total th{
  font-weight:800 !important;
}

body.woocommerce-checkout .order-total td,
body.woocommerce-checkout .order-total .amount{
  font-weight:900 !important;
  color:#111 !important;
}

/* chip BCV */
body.woocommerce-checkout .product-total .amount{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}

body.woocommerce-checkout .product-total .amount *{
  white-space:nowrap !important;
}

/* métodos de pago */
body.woocommerce-checkout #payment{
  background:#f6f6f8 !important;
  border:1px solid #e9e9ee !important;
  border-radius:18px !important;
  overflow:hidden !important;
  margin-top:14px !important;
}

body.woocommerce-checkout #payment ul.payment_methods{
  padding:10px 12px !important;
  border-bottom:1px solid #e9e9ee !important;
}

body.woocommerce-checkout #payment ul.payment_methods li{
  padding:8px 0 !important;
  margin:0 !important;
}

body.woocommerce-checkout #payment div.payment_box{
  background:#fff !important;
  border:1px solid #ececf1 !important;
  border-radius:12px !important;
  margin:8px 0 0 !important;
}

body.woocommerce-checkout #payment div.payment_box::before{
  display:none !important;
}

/* botón final */
body.woocommerce-checkout #place_order,
body.woocommerce-checkout .button.alt{
  width:100% !important;
  min-height:54px !important;
  border:none !important;
  border-radius:14px !important;
  background:linear-gradient(180deg,#ffc12e 0%, #f4ab00 100%) !important;
  color:#111 !important;
  font-size:12px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  box-shadow:0 12px 24px rgba(244,171,0,.22) !important;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout .button.alt:hover{
  transform:translateY(-1px) !important;
  filter:brightness(1.02) !important;
}

/* texto legal */
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .place-order p{
  color:#616673 !important;
  font-size:12px !important;
  line-height:1.7 !important;
}

/* nota adicional */
body.woocommerce-checkout #order_comments{
  min-height:92px !important;
}

#masthead .main-navigation ul.menu > li > a,
.site-header .main-navigation ul.menu > li > a{
  font-family:'Plus Jakarta Sans', sans-serif !important;
  font-size:14px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  line-height:1 !important;
  text-transform:none !important;
}

/* =========================================================
   SV — FACTURACIÓN REAL DEL CHECKOUT
   Selector correcto: .sv-billing-intro + campos clásicos Woo
   ========================================================= */

body.woocommerce-checkout .sv-billing-intro{
  background: linear-gradient(180deg,#fbfaf8 0%, #f3efe9 100%) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  border-radius: 28px !important;
  padding: 28px 28px 22px !important;
  margin: 18px 0 18px !important;
  box-shadow:
    0 18px 44px rgba(15,23,42,.06),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
  position: relative !important;
  overflow: hidden !important;
}

body.woocommerce-checkout .sv-billing-intro::before{
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 20px !important;
  right: 20px !important;
  height: 4px !important;
  border-radius: 999px !important;
  background: linear-gradient(
    90deg,
    rgba(225,37,27,0) 0%,
    rgba(225,37,27,.55) 22%,
    rgba(244,171,0,.34) 50%,
    rgba(225,37,27,.55) 78%,
    rgba(225,37,27,0) 100%
  ) !important;
}

body.woocommerce-checkout .sv-billing-intro > *{
  position: relative !important;
  z-index: 1 !important;
}

body.woocommerce-checkout .sv-billing-intro .sv-billing-kicker{
  display: block !important;
  font-size: 30px !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
  letter-spacing: -.03em !important;
  color: #111827 !important;
  margin: 0 0 12px !important;
}

body.woocommerce-checkout .sv-billing-intro p{
  margin: 0 !important;
  color: #4b5563 !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
  max-width: 62ch !important;
}

/* contenedor de campos */
body.woocommerce-checkout .woocommerce-billing-fields{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3{
  display: none !important;
}

/* filas */
body.woocommerce-checkout .woocommerce-billing-fields .form-row{
  margin-bottom: 16px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields label{
  display: block !important;
  margin-bottom: 7px !important;
  color: #1f2937 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .01em !important;
}

body.woocommerce-checkout .woocommerce-billing-fields .required{
  color: #d14c31 !important;
  font-weight: 900 !important;
}

/* inputs reales */
body.woocommerce-checkout .woocommerce-billing-fields input.input-text,
body.woocommerce-checkout .woocommerce-billing-fields select,
body.woocommerce-checkout .woocommerce-billing-fields textarea{
  background: #fcfcfd !important;
  border: 1.5px solid #d7dde7 !important;
  border-radius: 18px !important;
  min-height: 58px !important;
  padding: 14px 16px !important;
  font-size: 16px !important;
  color: #111827 !important;
  box-shadow:
    0 2px 8px rgba(15,23,42,.03),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
  transition:
    border-color .2s ease,
    box-shadow .2s ease,
    background .2s ease !important;
}

body.woocommerce-checkout .woocommerce-billing-fields textarea{
  min-height: 110px !important;
  padding-top: 14px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields input.input-text:hover,
body.woocommerce-checkout .woocommerce-billing-fields select:hover,
body.woocommerce-checkout .woocommerce-billing-fields textarea:hover{
  border-color: #c8ced8 !important;
  background: #fff !important;
}

body.woocommerce-checkout .woocommerce-billing-fields input.input-text:focus,
body.woocommerce-checkout .woocommerce-billing-fields select:focus,
body.woocommerce-checkout .woocommerce-billing-fields textarea:focus{
  border-color: #e1251b !important;
  box-shadow: 0 0 0 5px rgba(225,37,27,.09) !important;
  background: #fff !important;
  outline: none !important;
}

/* select2 de país/estado */
body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single{
  height: 58px !important;
  border: 1.5px solid #d7dde7 !important;
  border-radius: 18px !important;
  background: #fcfcfd !important;
  box-shadow:
    0 2px 8px rgba(15,23,42,.03),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
}

body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height: 56px !important;
  padding-left: 16px !important;
  color: #111827 !important;
  font-size: 16px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single .select2-selection__arrow{
  height: 56px !important;
  right: 12px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default.select2-container--open .select2-selection--single{
  border-color: #e1251b !important;
  box-shadow: 0 0 0 5px rgba(225,37,27,.09) !important;
  background: #fff !important;
}

/* móvil */
@media (max-width: 768px){
  body.woocommerce-checkout .sv-billing-intro{
    border-radius: 22px !important;
    padding: 22px 16px 18px !important;
    margin: 14px 0 16px !important;
  }

  body.woocommerce-checkout .sv-billing-intro .sv-billing-kicker{
    font-size: 22px !important;
  }

  body.woocommerce-checkout .sv-billing-intro p{
    font-size: 15px !important;
    line-height: 1.66 !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields input.input-text,
  body.woocommerce-checkout .woocommerce-billing-fields select,
  body.woocommerce-checkout .woocommerce-billing-fields textarea{
    min-height: 54px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single{
    height: 54px !important;
    border-radius: 16px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: 52px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields .select2-container--default .select2-selection--single .select2-selection__arrow{
    height: 52px !important;
  }
}

/* ==========================================================
   SV — CARRITO FOTO VISIBLE + AJUSTE SIN DESBORDE
   PEGAR AL FINAL ABSOLUTO
   ========================================================== */

/* 1) La tabla no debe cortar la miniatura */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .woocommerce-cart-form table.shop_table,
body.woocommerce-cart .woocommerce-cart-form table.shop_table tbody,
body.woocommerce-cart .woocommerce-cart-form table.shop_table tr,
body.woocommerce-cart .woocommerce-cart-form table.shop_table td{
  overflow:visible !important;
}

/* 2) Forzar que WooCommerce muestre la columna de imagen */
body.woocommerce-cart table.shop_table th.product-thumbnail,
body.woocommerce-cart table.shop_table td.product-thumbnail{
  display:table-cell !important;
  visibility:visible !important;
  opacity:1 !important;
  width:86px !important;
  min-width:86px !important;
  max-width:86px !important;
  padding:14px 8px !important;
  text-align:center !important;
  vertical-align:middle !important;
}

/* 3) Miniatura visible y contenida */
body.woocommerce-cart table.shop_table td.product-thumbnail a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:64px !important;
  height:64px !important;
  margin:0 auto !important;
  border-radius:14px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:0 8px 18px rgba(15,23,42,.12) !important;
}

body.woocommerce-cart table.shop_table td.product-thumbnail img{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  width:58px !important;
  height:58px !important;
  max-width:58px !important;
  max-height:58px !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:10px !important;
  transform:none !important;
}

/* 4) Reordenar el espacio de la tabla en MacBook / laptop */
@media (min-width:1200px){

  body.woocommerce-cart .woocommerce-cart-form table.shop_table{
    table-layout:fixed !important;
    width:100% !important;
  }

  body.woocommerce-cart table.shop_table th.product-remove,
  body.woocommerce-cart table.shop_table td.product-remove{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    padding-left:8px !important;
    padding-right:8px !important;
    text-align:center !important;
  }

  body.woocommerce-cart table.shop_table th.product-thumbnail,
  body.woocommerce-cart table.shop_table td.product-thumbnail{
    width:86px !important;
    min-width:86px !important;
    max-width:86px !important;
  }

  body.woocommerce-cart table.shop_table th.product-name,
  body.woocommerce-cart table.shop_table td.product-name{
    width:150px !important;
    min-width:150px !important;
    max-width:150px !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  body.woocommerce-cart table.shop_table th.product-price,
  body.woocommerce-cart table.shop_table td.product-price{
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
    text-align:center !important;
  }

  body.woocommerce-cart table.shop_table th.product-quantity,
  body.woocommerce-cart table.shop_table td.product-quantity{
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
    text-align:center !important;
  }

  body.woocommerce-cart table.shop_table th.product-subtotal,
  body.woocommerce-cart table.shop_table td.product-subtotal{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    text-align:right !important;
    padding-left:8px !important;
    padding-right:16px !important;
  }
}

/* 5) Nombre del producto compacto */
body.woocommerce-cart td.product-name a{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:4 !important;
  overflow:hidden !important;
  max-width:100% !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:850 !important;
  color:#111827 !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}

/* 6) Subtotal compacto para que no salga del recuadro */
body.woocommerce-cart{
  --sv-cart-usd-w:112px !important;
  --sv-cart-bs-w:158px !important;
  --sv-cart-sub-h:44px !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal{
  font-size:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-align:right !important;
}

/* Oculta extras entre USD y Bs */
body.woocommerce-cart table.shop_table td.product-subtotal > *:not(:first-child):not(:last-child){
  display:none !important;
}

body.woocommerce-cart table.shop_table td.product-subtotal > :first-child,
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:var(--sv-cart-sub-h) !important;
  min-height:var(--sv-cart-sub-h) !important;
  margin:0 !important;
  vertical-align:middle !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  line-height:1 !important;
  background:#fff !important;
  border:2px solid rgba(15,23,42,.12) !important;
  box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
}

/* USD */
body.woocommerce-cart table.shop_table td.product-subtotal > :first-child{
  width:var(--sv-cart-usd-w) !important;
  min-width:var(--sv-cart-usd-w) !important;
  max-width:var(--sv-cart-usd-w) !important;
  padding:0 10px !important;
  border-right:0 !important;
  border-radius:999px 0 0 999px !important;
  color:#111827 !important;
  font-size:13.5px !important;
  font-weight:950 !important;
}

/* Bs */
body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
  width:var(--sv-cart-bs-w) !important;
  min-width:var(--sv-cart-bs-w) !important;
  max-width:var(--sv-cart-bs-w) !important;
  padding:0 8px !important;
  border-left:1px solid rgba(15,23,42,.14) !important;
  border-radius:0 999px 999px 0 !important;
  color:#6b7280 !important;
  font-size:11.5px !important;
  font-weight:850 !important;
  text-overflow:ellipsis !important;
}

/* Quita BCV EURO dentro de la pastilla de la tabla para que quepa */
body.woocommerce-cart table.shop_table td.product-subtotal .sv-bcv-tag{
  display:none !important;
}

/* 7) Total derecho por encima, sin tapar la tabla de forma rara */
@media (min-width:1200px){
  body.woocommerce-cart .woocommerce{
    grid-template-columns:minmax(0, 1fr) 390px !important;
    gap:30px !important;
  }

  body.woocommerce-cart .cart-collaterals{
    width:390px !important;
    min-width:390px !important;
    max-width:390px !important;
    margin-top:48px !important;
  }
}

/* 8) En desktop grande, mejora la foto un poco */
@media (min-width:1440px){
  body.woocommerce-cart table.shop_table th.product-thumbnail,
  body.woocommerce-cart table.shop_table td.product-thumbnail{
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
  }

  body.woocommerce-cart table.shop_table td.product-thumbnail a{
    width:70px !important;
    height:70px !important;
  }

  body.woocommerce-cart table.shop_table td.product-thumbnail img{
    width:64px !important;
    height:64px !important;
    max-width:64px !important;
    max-height:64px !important;
  }

  body.woocommerce-cart{
    --sv-cart-usd-w:126px !important;
    --sv-cart-bs-w:178px !important;
    --sv-cart-sub-h:46px !important;
  }
}

/* 9) Móvil/tablet: que no se rompa */
@media (max-width:991px){
  body.woocommerce-cart table.shop_table th.product-thumbnail,
  body.woocommerce-cart table.shop_table td.product-thumbnail{
    display:table-cell !important;
    width:72px !important;
    min-width:72px !important;
    max-width:72px !important;
  }

  body.woocommerce-cart table.shop_table td.product-thumbnail a{
    width:58px !important;
    height:58px !important;
  }

  body.woocommerce-cart table.shop_table td.product-thumbnail img{
    width:52px !important;
    height:52px !important;
    max-width:52px !important;
    max-height:52px !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal{
    text-align:left !important;
    font-size:0 !important;
  }

  body.woocommerce-cart table.shop_table td.product-subtotal > :first-child,
  body.woocommerce-cart table.shop_table td.product-subtotal > :last-child{
    width:auto !important;
    min-width:120px !important;
    max-width:100% !important;
    border-radius:999px !important;
    border:2px solid rgba(15,23,42,.12) !important;
    margin:0 6px 6px 0 !important;
    padding:0 14px !important;
  }
}

/* SV - Ordenar tabla de descuentos por cantidad en producto */
.single-product div.product form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

/* Cantidad */
.single-product div.product form.cart .quantity {
  order: 1;
  margin: 0 !important;
  flex: 0 0 auto;
}

/* Botón añadir al carrito */
.single-product div.product form.cart .single_add_to_cart_button {
  order: 2;
  flex: 1 1 260px;
  min-width: 220px;
  max-width: 420px;
  margin: 0 !important;
  white-space: normal;
  line-height: 1.25;
}

/* Tabla de descuento por cantidad */
.single-product div.product form.cart table:not(.variations) {
  order: 3;
  flex: 0 0 100%;
  width: 100% !important;
  max-width: 520px;
  margin: 12px auto 0 !important;
  border-collapse: collapse;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
}

/* Celdas de la tabla */
.single-product div.product form.cart table:not(.variations) th,
.single-product div.product form.cart table:not(.variations) td {
  text-align: center;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.35;
  border-bottom: 1px solid #e5e5e5;
}

/* Encabezados */
.single-product div.product form.cart table:not(.variations) th {
  font-weight: 800;
  color: #111111;
}

/* Botones de PayPal / pagos debajo */
.single-product div.product form.cart .paypal-button-container,
.single-product div.product form.cart .ppc-button-wrapper,
.single-product div.product form.cart .wc-stripe-payment-request-wrapper,
.single-product div.product form.cart .express-payment-methods {
  order: 4;
  flex: 0 0 100%;
  width: 100%;
}

/* Móvil */
@media (max-width: 767px) {
  .single-product div.product form.cart {
    gap: 10px;
  }

  .single-product div.product form.cart .quantity {
    flex: 0 0 100%;
    display: flex;
    justify-content: center;
  }

  .single-product div.product form.cart .single_add_to_cart_button {
    flex: 0 0 100%;
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
  }

  .single-product div.product form.cart table:not(.variations) {
    max-width: 100%;
    font-size: 13px;
  }

  .single-product div.product form.cart table:not(.variations) th,
  .single-product div.product form.cart table:not(.variations) td {
    padding: 9px 8px;
    font-size: 13px;
  }
}

/* SV - Ordenar y traducir tabla de descuentos por cantidad */
.single-product div.product form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.single-product div.product form.cart .quantity {
  order: 1;
  margin: 0 !important;
  flex: 0 0 auto;
}

.single-product div.product form.cart .single_add_to_cart_button {
  order: 2;
  flex: 1 1 260px;
  min-width: 220px;
  max-width: 420px;
  margin: 0 !important;
  white-space: normal;
  line-height: 1.25;
}

.single-product div.product form.cart table:not(.variations) {
  order: 3;
  flex: 0 0 100%;
  width: 100% !important;
  max-width: 520px;
  margin: 12px auto 0 !important;
  border-collapse: collapse;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
}

.single-product div.product form.cart table:not(.variations) th,
.single-product div.product form.cart table:not(.variations) td {
  text-align: center;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.35;
  border-bottom: 1px solid #e5e5e5;
}

.single-product div.product form.cart table:not(.variations) th {
  font-size: 0 !important;
  font-weight: 800;
  color: #111111;
}

.single-product div.product form.cart table:not(.variations) th:nth-child(1)::before {
  content: "Cantidad";
  font-size: 14px;
  font-weight: 800;
  color: #111111;
}

.single-product div.product form.cart table:not(.variations) th:nth-child(2)::before {
  content: "Precio unitario";
  font-size: 14px;
  font-weight: 800;
  color: #111111;
}

.single-product div.product form.cart .paypal-button-container,
.single-product div.product form.cart .ppc-button-wrapper,
.single-product div.product form.cart .wc-stripe-payment-request-wrapper,
.single-product div.product form.cart .express-payment-methods {
  order: 4;
  flex: 0 0 100%;
  width: 100%;
}

@media (max-width: 767px) {
  .single-product div.product form.cart {
    gap: 10px;
  }

  .single-product div.product form.cart .quantity {
    flex: 0 0 100%;
    display: flex;
    justify-content: center;
  }

  .single-product div.product form.cart .single_add_to_cart_button {
    flex: 0 0 100%;
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
  }

  .single-product div.product form.cart table:not(.variations) {
    max-width: 100%;
  }

  .single-product div.product form.cart table:not(.variations) th,
  .single-product div.product form.cart table:not(.variations) td {
    padding: 9px 8px;
    font-size: 13px;
  }

  .single-product div.product form.cart table:not(.variations) th:nth-child(1)::before,
  .single-product div.product form.cart table:not(.variations) th:nth-child(2)::before {
    font-size: 13px;
  }
}

/* ==========================================================
   SV — EFECTO HOVER TARJETAS DE VEHÍCULOS
   Toyota / Ford / GM / futuros productos
   Pegar al FINAL absoluto del CSS
   ========================================================== */

@media (hover:hover){

  a:hover .sv-vehiculo-card{
    transform: translateY(-6px) scale(1.025) !important;
    box-shadow: 0 18px 34px rgba(225,37,27,.18) !important;
    border-color: #ffb9af !important;
  }

  a:hover .sv-vehiculo-img{
    transform: scale(1.08) !important;
  }

  a:hover .sv-vehiculo-link{
    color: #e1251b !important;
    text-decoration: underline !important;
    text-underline-offset: 5px !important;
  }

}

/* SV GLOBAL + MONTERO: VERSIONES EN 2 COLUMNAS ESCRITORIO / 1 COLUMNA MÓVIL */

html body #sv-montero-2din-arriba-desc .sv-version-desktop-grid,
html body .sv-product-versions-grid{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:22px !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
}

html body #sv-montero-2din-arriba-desc .sv-version-desktop-grid > .sv-version-independent,
html body .sv-product-versions-grid > .sv-product-version-card{
  display:block !important;
  flex:0 0 calc(50% - 11px) !important;
  width:calc(50% - 11px) !important;
  max-width:calc(50% - 11px) !important;
  min-width:0 !important;
  float:none !important;
  clear:none !important;
  background:#fff !important;
  border:1px solid #ececec !important;
  border-radius:18px !important;
  padding:30px 24px !important;
  box-shadow:0 6px 18px rgba(0,0,0,.03) !important;
}


/* SV GLOBAL: 3 VERSIONES EN UNA FILA ESCRITORIO / 1 COLUMNA MÓVIL */

html body .sv-product-three-grid{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:18px !important;
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
}

html body .sv-product-three-grid > .sv-product-three-card{
  display:block !important;
  flex:0 0 calc(33.333% - 12px) !important;
  width:calc(33.333% - 12px) !important;
  max-width:calc(33.333% - 12px) !important;
  min-width:0 !important;
  float:none !important;
  clear:none !important;
  background:#fff !important;
  border:1px solid #ececec !important;
  border-radius:18px !important;
  padding:26px 18px !important;
  box-shadow:0 6px 18px rgba(0,0,0,.03) !important;
}


/* MÓVIL GENERAL: tarjetas una debajo de la otra */

@media(max-width:760px){
  html body #sv-montero-2din-arriba-desc .sv-version-desktop-grid,
  html body .sv-product-versions-grid,
  html body .sv-product-three-grid{
    flex-direction:column !important;
    flex-wrap:nowrap !important;
    gap:22px !important;
  }

  html body #sv-montero-2din-arriba-desc .sv-version-desktop-grid > .sv-version-independent,
  html body .sv-product-versions-grid > .sv-product-version-card,
  html body .sv-product-three-grid > .sv-product-three-card{
    flex:0 0 auto !important;
    width:100% !important;
    max-width:100% !important;
  }
}


/* MÓVIL DEFINITIVO OREJITAS TOYOTA:
   escritorio mantiene [Vehículo] [Instalación]
   móvil invierte a [Instalación] [Vehículo]
*/

@media(max-width:760px){

  html body #sv-orejitas-toyota-desc{
    max-width:100% !important;
    padding-left:4px !important;
    padding-right:4px !important;
    overflow-x:hidden !important;
  }

  html body #sv-orejitas-toyota-desc details div[style*="overflow-x: auto"]{
    overflow-x:visible !important;
    width:100% !important;
    max-width:100% !important;
    padding:16px 8px 20px !important;
    -webkit-overflow-scrolling:auto !important;
  }

  html body #sv-orejitas-toyota-desc details table,
  html body #sv-orejitas-toyota-desc details table[style],
  html body #sv-orejitas-toyota-desc details tbody{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    table-layout:auto !important;
    border-spacing:0 !important;
    border-collapse:separate !important;
    margin:0 auto !important;
  }

  html body #sv-orejitas-toyota-desc details tr,
  html body #sv-orejitas-toyota-desc details tr[style]{
    display:flex !important;
    flex-direction:column-reverse !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    gap:16px !important;
    margin:0 !important;
  }

  html body #sv-orejitas-toyota-desc details td,
  html body #sv-orejitas-toyota-desc details td[style]{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    border:0 !important;
    vertical-align:top !important;
    background:transparent !important;
    margin:0 !important;
  }

  html body #sv-orejitas-toyota-desc details td > a,
  html body #sv-orejitas-toyota-desc details td > a > span{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
  }

  html body #sv-orejitas-toyota-desc details span[style*="height: 245px"]{
    height:auto !important;
    min-height:220px !important;
    width:100% !important;
    max-width:100% !important;
    padding:10px !important;
  }

  html body #sv-orejitas-toyota-desc details td img{
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    max-height:260px !important;
    object-fit:contain !important;
    margin:0 auto !important;
  }

  html body #sv-orejitas-toyota-desc a:hover .sv-vehiculo-card,
  html body #sv-orejitas-toyota-desc a:focus-visible .sv-vehiculo-card,
  html body #sv-orejitas-toyota-desc a:active .sv-vehiculo-card,
  html body #sv-orejitas-toyota-desc a:hover .sv-install-card,
  html body #sv-orejitas-toyota-desc a:focus-visible .sv-install-card,
  html body #sv-orejitas-toyota-desc a:active .sv-install-card{
    transform:none !important;
    box-shadow:0 12px 24px rgba(225,37,27,.12) !important;
  }

  html body #sv-orejitas-toyota-desc a:hover .sv-vehiculo-img,
  html body #sv-orejitas-toyota-desc a:focus-visible .sv-vehiculo-img{
    transform:none !important;
  }
}

/* ==========================================================
   SV FIX — CENTRADO MOVIL DESCRIPCION PRODUCTO V1
   Mantiene la descripción centrada respecto al viewport móvil
   aunque WooCommerce/Kadence desplace el contenedor padre.
   ========================================================== */
@media (max-width:700px){

  body.single-product{
    overflow-x:hidden !important;
  }

  .single-product .woocommerce-tabs,
  .single-product .woocommerce-Tabs-panel,
  .single-product .woocommerce-Tabs-panel--description,
  .single-product .entry-content{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .single-product .sv-descripcion-producto{
    display:block !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;

    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-width:0 !important;

    margin-left:calc(50% - 50vw + 10px) !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .single-product .sv-descripcion-producto .sv-grid,
  .single-product .sv-descripcion-producto .sv-seccion,
  .single-product .sv-descripcion-producto .sv-encabezado,
  .single-product .sv-descripcion-producto .sv-imagen-producto,
  .single-product .sv-descripcion-producto .sv-alerta,
  .single-product .sv-descripcion-producto .sv-nota,
  .single-product .sv-descripcion-producto .sv-vehiculos,
  .single-product .sv-descripcion-producto .sv-reputacion{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
}

