/* ==========================================================================
   nv-base.css — base del tema La Novedad (T0). Replica el lenguaje de la tienda Nitro de
   lanovedad.com: valores medidos en la especificación (§1, §2.1, §2.14, §2.21), nunca su CSS.
   Se imprime DESPUÉS de Blocksy (depende de ct-main-styles): a igual especificidad gana esta hoja.
   Todas las demás hojas nv-*.css consumen solo estas variables; ninguna repite un hex de marca.
   ========================================================================== */

/* ── Fuentes: Jost (Owen Earl, SIL OFL — ver fuentes/OFL.txt), autoalojada ──────────────────
   Archivo variable completo (el mismo que trae el tema por defecto de WordPress). El rango 300–800
   limita el eje: el hero pide 900 y en Shopify se ve 800 porque solo se cargan 300–800. */
@font-face{font-family:"Jost";font-style:normal;font-weight:300 800;font-display:swap;src:url("../fuentes/jost-latin.woff2") format("woff2")}
/* La cursiva NO se declara aquí: los dos únicos usos del sitio están en la portada (.nv-hero__subtitulo y
   .nv-banner15__sub), y declarada en esta hoja —que va en todas las páginas— el navegador se bajaba sus 60,8 KB en
   cuanto algo pedía cursiva. Vive en nv-portada.css, que solo se encola en la portada (medido el 2026-09-13: la
   cursiva se descargaba en la portada y no en colección ni en ficha). En el resto del sitio, si algún texto pide
   cursiva, el navegador inclina la normal. */

/* ── Tokens (§1.1, definitivos; contrato con T1–T9) ─────────────────────────────────────── */
:root{
  /* Color de marca */
  --nv-ink:#151515; --nv-accent:#a1923d; --nv-accent-dark:#6a6028; --nv-gold-alt:#a27b2f;
  --nv-dark:#222222; --nv-link:#222222; --nv-link-hover:#a1923d;
  --nv-hover-alt:#a1923d;      /* D1: Nitro trae #544179, resto de su demo */
  --nv-bg:#ffffff; --nv-light:#ffffff; --nv-border:#e5e5e5; --nv-border-strong:#151515;
  --nv-muted:#878787; --nv-soft-bg:#f6f6f8; --nv-placeholder:#f5f5f5; --nv-card-title:#27262c;
  --nv-footer-text:#f8f7fc; --nv-success:#428445; --nv-warning:#e0b252; --nv-error:#eb001b;
  --nv-highlight:#d24242; --nv-tooltip-bg:#383838; --nv-tooltip-fg:#ffffff;
  /* Precios (D2: tres contextos) */
  --nv-price:#4c4b51; --nv-price-compare:#bfbec8; --nv-price-sale:#f52c2c; --nv-price-sale-card:#e33131;
  --nv-price-pdp:#000000; --nv-price-compare-pdp:#868686; --nv-price-sale-pdp:#fa0000;
  /* Badges (texto siempre #fff) */
  --nv-badge-sale:#ff4e00; --nv-badge-new:#151515; --nv-badge-soldout:#999999; --nv-badge-preorder:#0774d7; --nv-badge-custom:#645a83;
  /* Portada */
  --nv-stars:#fec42d; --nv-testimonial-bg:#f9f9f9; --nv-testimonial-border:#e6e6eb;
  --nv-testimonial-grad:linear-gradient(46deg,rgb(165,125,53) 13%,rgb(178,137,62) 25%,rgb(227,180,59) 39%,rgb(162,123,47) 59%,rgb(249,235,180) 88%);
  --nv-textura-oro:url("../img/textura-oro-1200.webp");
  /* Oro estático (2026-09-16, pedido del dueño): la barra de anuncios servía un WebP animado de 45 KB
     —el mismo brillo que corre en Shopify— y los botones dorados iban en plano. Ahora ambos salen de
     estos degradados: ni imagen ni animación, cero peticiones. Los tonos están MEDIDOS sobre aquella
     imagen (columna a columna): #a87d2c en los extremos, #be9443 en el cuerpo, destello #f3e0a8.
     Encima va tinta #151515, no blanco: en el tramo más claro el blanco queda en 1,8:1 y la tinta no
     baja de 4,6:1 en ningún punto del degradado (AA para texto normal). --nv-oro-vivo es el mismo oro
     encendido para el hover: sube el brillo en vez de apagarlo, que es lo que rompía el contraste. */
  --nv-oro:linear-gradient(120deg,#9a7d33 0%,#b08d3f 22%,#d0b268 45%,#efe0aa 53%,#c39d4b 70%,#a0812f 100%);
  --nv-oro-vivo:linear-gradient(120deg,#a8893a 0%,#c3a04c 22%,#e0c67e 45%,#f8efc6 53%,#d0aa58 70%,#ad8a37 100%);
  --nv-oro-barra:linear-gradient(90deg,#a87d2c 0%,#b78d3e 14%,#be9443 34%,#c69d4b 55%,#bb9040 70%,#f3e0a8 82%,#c39a44 90%,#b3862f 96%,#a87d2c 100%);
  --nv-oro-borde:#9a7d33;
  /* Barrido de oro (2026-09-16). El dueño pidió «el color dorado, de un efecto de gradiente hacia
     afuera algo así bonito cuando se seleccione o se pase el cursor por encima». Hace un rato pidió lo
     contrario para el reposo: le quitamos el WebP animado de la barra porque el oro no debía moverse
     solo. Las dos cosas caben si el movimiento NO EXISTE hasta que llega el puntero o el foco: en
     reposo la máscara de la capa de luz mide 0 de ancho, así que esa capa no está en pantalla. No es
     una animación en pausa; es que no hay nada que animar.
     La luz es ORO (--nv-oro-vivo), nunca un velo blanco: un velo blanco es justo el «glossy» que el
     dueño rechazó, y además subiría el punto más claro. Así el techo sigue siendo #f8efc6 (15,79:1
     contra la tinta) y el suelo #9a7d33 (4,66:1), los mismos de antes. */
  /* 2026-09-16, segunda vuelta: el dueño dijo que el efecto «no es tan fuerte, quiero que se note
     más». Reutilizaba --nv-oro-vivo, que apenas se separa de --nv-oro (su punto claro #f8efc6 contra
     #efe0aa: casi el mismo), así que la lámina pasaba casi inadvertida. --nv-oro-luz sube el recorrido
     entero: el núcleo llega a #fffbe8 y hasta el tono más oscuro de la lámina (#b08d3f) es más claro
     que el más oscuro del oro en reposo (#9a7d33). Resultado: el botón encendido se distingue del
     apagado de un vistazo. Contraste contra la tinta #151515 medido con la fórmula WCAG: el punto más
     claro 17,6:1 y el más oscuro DE LA LÁMINA 5,84:1, los dos por encima del 4,5:1 de AA; el suelo
     real del botón sigue siendo el #9a7d33 del oro en reposo, 4,66:1, y la lámina solo lo aclara. */
  --nv-oro-luz:linear-gradient(115deg,#b08d3f 0%,#d3b264 16%,#f3e3ab 36%,#fffbe8 50%,#f0dc9f 64%,#cba951 82%,#b08d3f 100%);
  --nv-barrido-luz:var(--nv-oro-luz);
  /* Lo único que se mueve. Núcleo opaco del 26 % al 74 % y dos plumas hasta los extremos: sin ellas se
     vería una línea vertical cruzando el botón, que parece un barrido de videojuego y no una lámina. */
  --nv-barrido-mascara:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.25) 6%,#000 22%,#000 78%,rgba(0,0,0,.25) 94%,rgba(0,0,0,0) 100%);
  /* Con el núcleo opaco en 22–78 % la máscara deja de recortar a partir del 179 % —(100−W)/2 +
     0,22·W ≤ 0—. A 240 % sobra de más y el botón acaba encendido ENTERO. Las plumas son más
     estrechas que en la primera versión (6 % y 94 %, antes 9 % y 91 %) para que el frente de luz se
     vea viajar: con la pluma ancha el borde se difuminaba tanto que no se percibía el movimiento. */
  --nv-barrido-abierto:240%;
  /* Entra frenando (la luz llega a los bordes y se posa) y sale más rápido, para que al retirar el
     ratón el botón no se quede pensando. Los tres se ponen a 0s en movimiento reducido. */
  /* Medio segundo largo, no cuatro décimas: a .42s el ojo llegaba tarde al recorrido. */
  --nv-barrido-entra:.55s cubic-bezier(.22,.61,.36,1);
  --nv-barrido-sale:.3s cubic-bezier(.33,0,.67,1);
  --nv-barrido-op:.12s;
  /* Tipografía */
  --nv-font:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --nv-fs-body:14px; --nv-lh-body:1.7; --nv-fw-body:400; --nv-fw-heading:600; --nv-lh-heading:1.4;
  --nv-fs-h1:37px; --nv-fs-h2:29px; --nv-fs-h3:23px; --nv-fs-h4:18px; --nv-fs-h5:17px; --nv-fs-h6:15.5px;
  --nv-fs-section:36px; --nv-fw-section:500; --nv-section-title-color:#222222; --nv-section-title-mb:30px;
  --nv-fs-nav:16px; --nv-fw-nav:500; --nv-nav-gap:48px;
  /* Forma (.nv-btn base: radio 0; no aplicar 4 px a todos los botones) */
  --nv-radius:4px; --nv-radius-pill:40px; --nv-radius-atc:5px; --nv-radius-badge:2px; --nv-radius-sw:4px;
  /* Layout */
  --nv-container:1600px; --nv-pad:15px; --nv-gutter:30px; --nv-section-mb:50px;
  --nv-hd-h:129px; --nv-toolbar-h:0px; --nv-sticky-atc-h:0px;
  /* Sombras (el tema casi no usa) */
  --nv-shadow-drop:0 0 3px rgba(0,0,0,.15); --nv-shadow-bar:0 0 9px rgba(0,0,0,.12);
  --nv-shadow-float:0 0 5px rgba(0,0,0,.09); --nv-shadow-badge:1px 1px 1px rgba(0,0,0,.1); --nv-shadow-stuck:0 1px 3px rgba(0,0,0,.1);
  /* Movimiento y capas */
  --nv-ease:.3s ease-in-out; --nv-t-link:.25s;
  --nv-z-toolbar:190; --nv-z-sticky-atc:410; --nv-z-header:460; --nv-z-float:998; --nv-z-drawer:1000;

  /* ── Blocksy: paleta, tipografía y contenedor de La Novedad (sin esto se filtra el azul de fábrica
     #2872fa y el azul marino #192a3d en migas, títulos y enlaces; auditoría §2.3) ── */
  --theme-palette-color-1:#222222; --theme-palette-color-2:#a1923d; --theme-palette-color-3:#151515;
  --theme-palette-color-4:#151515; --theme-palette-color-5:#e5e5e5; --theme-palette-color-6:#f6f6f8;
  --theme-palette-color-7:#f5f5f5; --theme-palette-color-8:#ffffff;
  --theme-text-color:#151515; --theme-headings-color:#151515;
  --theme-link-initial-color:#222222; --theme-link-hover-color:#a1923d;
  --theme-font-family:var(--nv-font); --theme-font-size:14px; --theme-line-height:1.7; --theme-font-weight:400;
  --theme-normal-container-max-width:1600px;
  /* A 1440 el contenido va de x=15 a x=1425 (medido en Shopify): 15 px por lado a cualquier ancho. */
  --theme-container-edge-spacing:calc(100% - 30px);
  /* Cada zona pinta su propio encabezado (antes lemon-margen-superior dejaba 10 px). */
  --theme-content-vertical-spacing:0px; --theme-content-spacing:20px;
  --theme-button-background-initial-color:#222222; --theme-button-background-hover-color:#a1923d;
  --theme-button-text-initial-color:#ffffff; --theme-button-text-hover-color:#ffffff;
  --theme-button-border-radius:0px; --theme-button-min-height:40px; --theme-button-padding:11px 15px;
  --theme-button-font-size:14px; --theme-button-line-height:18px; --theme-button-font-weight:400;
  --theme-button-shadow:none; --theme-button-transform:none;
  --theme-form-field-border-initial-color:#e5e5e5; --theme-form-field-border-focus-color:#151515;
  --theme-form-field-border-radius:0px; --theme-form-selection-field-active-color:#151515;

  /* ── Compatibilidad: variables de lemon-glass (retirado) que aún leen lemon-shop-filters,
     lemon-shop-swatches y lemon-variation-stock hasta que T3/T5 los adapten. Sin cristal:
     ningún desenfoque, fondo blanco, líneas finas. ── */
  --paper:#ffffff; --paper-2:#f6f6f8; --ink:#151515; --ink-soft:#878787; --lemon:#a1923d; --lemon-deep:#a1923d;
  --line:#e5e5e5; --body:var(--nv-font); --display:var(--nv-font); --mono:var(--nv-font);
  --g-fill:#ffffff; --g-fill-strong:#ffffff; --g-fill-soft:#ffffff; --g-stroke:#e5e5e5; --g-hairline:#e5e5e5;
  --g-blur:none; --g-blur-lite:none; --g-shadow:none; --g-inset:none;
}
@media (max-width:1024px){ :root{ --nv-fs-section:30px; --nv-toolbar-h:55px; } }
@media (max-width:767px){ :root{ --nv-fs-section:24px; --nv-section-title-mb:25px; --nv-section-mb:30px; } }

/* ── Tipografía base (§1.3) ─────────────────────────────────────────────────────────────── */
html{font-size:100%;-webkit-text-size-adjust:100%}
body{font-family:var(--nv-font);font-size:var(--nv-fs-body);line-height:var(--nv-lh-body);font-weight:var(--nv-fw-body);
  color:var(--nv-ink);background:var(--nv-bg);-webkit-font-smoothing:auto;letter-spacing:0}
p{margin:0 0 20px}
/* Los títulos se dimensionan por las VARIABLES de Blocksy, no por la propiedad: sus componentes fijan
   su propio --theme-font-size con más especificidad (p. ej. el título de tarjeta a 17 px). Con
   font-size:29px directo, la primera captura mostró el nombre de cada tarjeta a 29 px. */
h1,h2,h3,h4,h5,h6{--theme-font-weight:var(--nv-fw-heading);--theme-line-height:var(--nv-lh-heading);
  font-family:var(--theme-font-family,var(--nv-font));font-size:var(--theme-font-size);font-weight:var(--theme-font-weight);
  line-height:var(--theme-line-height);letter-spacing:0}
h1{--theme-font-size:var(--nv-fs-h1)}
h2{--theme-font-size:var(--nv-fs-h2)}
h3{--theme-font-size:var(--nv-fs-h3)}
h4{--theme-font-size:var(--nv-fs-h4)}
h5{--theme-font-size:var(--nv-fs-h5)}
h6{--theme-font-size:var(--nv-fs-h6)}
a{color:var(--nv-link);transition:color var(--nv-t-link)}
a:hover{color:var(--nv-link-hover)}
strong,b{font-weight:600}
img{max-width:100%;height:auto}
.nv-oculto,.screen-reader-text:not(:focus){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}

/* ── Contenedor y ritmo (§2.1) ──────────────────────────────────────────────────────────── */
.nv-contenedor{width:100%;max-width:var(--nv-container);margin-inline:auto;padding-inline:var(--nv-pad);box-sizing:border-box}
.nv-seccion{margin-bottom:var(--nv-section-mb)}
main#main [data-vertical-spacing]{padding-top:0;padding-bottom:0}
/* La portada va a ancho completo (antes en el <style> de novedad-storefront). */
body.home main#main>.ct-container,body.home main#main>.ct-container-full{max-width:none;width:100%;padding:0}
body.home .entry-content{max-width:none;margin:0}
body.home .entry-content>*{max-width:none}

.nv-titulo-seccion{font-family:var(--nv-font);font-size:var(--nv-fs-section);font-weight:var(--nv-fw-section);line-height:1;
  color:var(--nv-section-title-color);text-align:center;margin:0 0 var(--nv-section-title-mb);text-transform:none;letter-spacing:0}
.nv-titulo-seccion--izq{text-align:left}
.nv-titulo-seccion--blanco{color:#fff}

/* ── Iconos ─────────────────────────────────────────────────────────────────────────────── */
.nv-i{display:inline-block;width:1em;height:1em;vertical-align:middle;flex-shrink:0;overflow:visible;
  fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* ── Botones (§1.3): radio 0; nunca brillo, pastilla translúcida ni sombra ─────────────── */
button,input[type=submit],input[type=button],.button,.nv-btn{font-family:var(--nv-font);font-size:14px;line-height:18px;font-weight:400;
  padding:11px 15px;border:1px solid var(--nv-dark);border-radius:0;background:var(--nv-dark);color:#fff;box-shadow:none;text-shadow:none;
  cursor:pointer;transition:color var(--nv-ease),background-color var(--nv-ease),border-color var(--nv-ease),box-shadow var(--nv-ease),opacity var(--nv-ease)}
button:hover,input[type=submit]:hover,input[type=button]:hover,.button:hover,.nv-btn:hover{background:var(--nv-oro);border-color:var(--nv-oro-borde);color:#151515}
.nv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;text-align:center}
.nv-btn--base{font-size:15px;font-weight:500;min-height:40px;padding:0 40px;line-height:1}
@media (max-width:1024px){.nv-btn--base{font-size:14px;padding:0 25px}}
@media (max-width:767px){.nv-btn--base{font-size:13px}}
.nv-btn--oscuro{background:var(--nv-dark);border-color:var(--nv-dark);color:#fff}
.nv-btn--claro{background:#fff;border-color:#fff;color:var(--nv-dark)}
.nv-btn--claro:hover{background:var(--nv-oro);border-color:var(--nv-oro-borde);color:#151515}
.nv-btn--dorado{background:var(--nv-oro);border-color:var(--nv-oro-borde);color:#151515}
.nv-btn--dorado:hover{background:var(--nv-oro-vivo);border-color:var(--nv-oro-borde);color:#151515}
.nv-btn--contorno{background:transparent;border:2px solid currentColor;color:var(--nv-dark)}
.nv-btn--contorno:hover{background:var(--nv-dark);border-color:var(--nv-dark);color:#fff}
button:disabled,.button:disabled,.button.disabled{opacity:.5;cursor:not-allowed}

/* ── Campos subrayados de Nitro: sin caja, línea 2px #e5e5e5 y, al enfocar, una línea #151515 que
   crece de 0 a 100 % (.5s). Dos capas de fondo: no necesita envoltorio ni pseudo-elementos.
   La cantidad (.qty) y los campos con piel propia (pie, cabecera) los define su dueño. ── */
.nv-campo,input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=url],input[type=date],
input[type=number]:not(.qty),textarea,select{font-family:var(--nv-font);font-size:14px;line-height:1.4;color:var(--nv-ink);
  border:0;border-radius:0;box-shadow:none;outline:0;padding:10px 0;min-height:40px;height:auto;width:100%;max-width:100%;box-sizing:border-box;
  background-color:transparent;background-image:linear-gradient(var(--nv-ink),var(--nv-ink)),linear-gradient(var(--nv-border),var(--nv-border));
  background-size:0 2px,100% 2px;background-position:0 100%,0 100%;background-repeat:no-repeat;transition:background-size .5s}
.nv-campo:focus,input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=password]:focus,input[type=search]:focus,
input[type=url]:focus,input[type=date]:focus,input[type=number]:not(.qty):focus,textarea:focus,select:focus{background-size:100% 2px,100% 2px;box-shadow:none;outline:0}
select{-webkit-appearance:none;appearance:none;padding-right:22px;cursor:pointer;
  background-image:linear-gradient(var(--nv-ink),var(--nv-ink)),linear-gradient(var(--nv-border),var(--nv-border)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23aaa'/%3E%3C/svg%3E");
  background-size:0 2px,100% 2px,10px 6px;background-position:0 100%,0 100%,right 4px center}
select:focus{background-size:100% 2px,100% 2px,10px 6px}
textarea{min-height:90px;resize:vertical}
::placeholder{color:#a1a1a1;opacity:1}
/* iOS Safari amplía la página sola al enfocar un campo de menos de 16 px y NO la devuelve al salir (el viewport de
   T0 permite maximum-scale=5 a propósito, por accesibilidad; Shopify lo evita bloqueando el zoom, que es peor). El
   select de orden de la colección ya estaba a 16 px por esto (nv-coleccion.css); aquí van los demás campos: medido el
   2026-09-13 en /pages/contact/ a 390 (nv_nombre, nv_correo y nv_mensaje a 15 px; el correo del boletín del pie a
   14). Solo sube el tamaño del texto que se escribe: etiquetas y textos de ayuda quedan como están. */
@media (max-width:767px){
  .nv-campo,input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=url],input[type=date],
  input[type=number]:not(.qty),textarea,select{font-size:16px}
}

/* ── Avisos de WooCommerce: lenguaje de bordes finos de Nitro (sin equivalente medido) ──── */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{background:#fff;color:var(--nv-ink);border:1px solid var(--nv-border);
  border-left:3px solid var(--nv-success);border-radius:0;box-shadow:none;font-size:14px;line-height:1.6;padding:14px 20px}
.woocommerce-info,.woocommerce-notice{border-left-color:var(--nv-accent)}
.woocommerce-error{border-left-color:var(--nv-error)}
.woocommerce-message a.button,.woocommerce-info a.button{background:var(--nv-dark);color:#fff}
/* Sin el icono de Woo/Blocksy: con el relleno de 20 px tapaba la primera palabra («🔔 carrito está vacío»
   en la captura de /cart/ a 390). Los avisos de Nitro no llevan icono; el filete de color basta. */
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before,.woocommerce-notice::before{content:none!important;display:none!important}

/* ── Badges (§2.13): «- 10 %» naranja, «Agotado» gris; T3 y T7 solo los posicionan ──────── */
.nv-badges{display:flex;flex-direction:column;align-items:flex-start;gap:5px;pointer-events:none}
.nv-badges--tarjeta{position:absolute;top:15px;left:15px;z-index:2}
.nv-badges--ficha{position:absolute;top:15px;right:15px;z-index:3;align-items:flex-end}
@media (max-width:1024px){.nv-badges--tarjeta{top:12px;left:12px}}
@media (max-width:767px){.nv-badges--tarjeta{top:8px;left:8px}}
@media (max-width:575px){.nv-badges--tarjeta{top:5px;left:5px}}
.nv-badge{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;padding:3px 8px;
  font:700 10px/17px var(--nv-font);text-transform:uppercase;letter-spacing:0;color:#fff;border-radius:var(--nv-radius-badge);
  box-shadow:var(--nv-shadow-badge);white-space:nowrap}
.nv-badge--oferta{background:var(--nv-badge-sale)}
.nv-badge--agotado{background:var(--nv-badge-soldout)}
.nv-badge--nuevo{background:var(--nv-badge-new)}

/* ── Cajones y velo (contrato: ids nv-menu-movil, nv-buscar, nv-minicarrito, nv-filtros, nv-zoom) ── */
.nv-cajon{position:fixed;top:0;bottom:0;z-index:var(--nv-z-drawer);width:var(--nv-cajon-w,400px);max-width:100%;background:#fff;color:var(--nv-ink);
  display:flex;flex-direction:column;overflow:hidden;visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s;box-sizing:border-box}
.nv-cajon--izq{left:0;transform:translateX(-100%)}
.nv-cajon--der{right:0;transform:translateX(100%)}
.nv-cajon.is-abierto{transform:none;visibility:visible;transition:transform .3s ease,visibility 0s}
.nv-cajon__cerrar{position:absolute;top:0;right:0;width:50px;height:50px;display:inline-flex;align-items:center;justify-content:center;
  padding:0;border:0;background:transparent;color:var(--nv-ink);font-size:22px;cursor:pointer}
.nv-cajon__cerrar:hover{background:transparent;color:var(--nv-accent)}
.nv-velo{position:fixed;inset:0;z-index:calc(var(--nv-z-drawer) - 1);background:rgba(0,0,0,.7);opacity:0;visibility:hidden;
  transition:opacity .3s,visibility 0s linear .3s;cursor:pointer}
.nv-velo.is-visible{opacity:1;visibility:visible;transition:opacity .3s,visibility 0s}
body.nv-lock{overflow:hidden}

/* ── Carrusel (§2.14): pista con scroll-snap; columnas por variables y punto de corte ──── */
.nv-carrusel{position:relative;--nv-car-cols:var(--nv-car-cols-e,4);--nv-car-gap:var(--nv-car-gap-e,30px)}
@media (max-width:1024px){.nv-carrusel{--nv-car-cols:var(--nv-car-cols-t,3);--nv-car-gap:var(--nv-car-gap-t,15px)}}
@media (max-width:767px){.nv-carrusel{--nv-car-cols:var(--nv-car-cols-m,2);--nv-car-gap:var(--nv-car-gap-m,15px)}}
.nv-carrusel__pista{display:flex;gap:var(--nv-car-gap);margin:0;padding:0;list-style:none;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.nv-carrusel__pista::-webkit-scrollbar{display:none}
.nv-carrusel__pista>*{flex:0 0 calc((100% - (var(--nv-car-cols) - 1) * var(--nv-car-gap)) / var(--nv-car-cols));min-width:0;margin:0;scroll-snap-align:start}
.nv-carrusel--centro.nv-carrusel--sin-desborde .nv-carrusel__pista{justify-content:center}
.nv-carrusel .nv-carrusel__flecha{position:absolute;top:var(--nv-car-flecha-top,50%);z-index:3;transform:translateY(-50%);box-sizing:border-box;
  width:40px;height:40px;min-height:0;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:0;
  background:var(--nv-dark);color:#fff;box-shadow:4px 10px 32px rgba(0,0,0,.1);cursor:pointer;
  transition:opacity var(--nv-ease),visibility var(--nv-ease),background-color var(--nv-ease),color var(--nv-ease),box-shadow var(--nv-ease)}
.nv-carrusel .nv-carrusel__flecha .nv-i{width:12px;height:12px;stroke-width:2.5}
.nv-carrusel .nv-carrusel__flecha:hover{background:var(--nv-oro);color:#151515;box-shadow:0 2px 4px rgba(0,0,0,.07)}
.nv-carrusel__flecha--ant{left:15px}
.nv-carrusel__flecha--sig{right:15px}
.nv-carrusel--flechas-claras .nv-carrusel__flecha{border-radius:50%;background:#fff;color:var(--nv-dark)}
.nv-carrusel--flecha-mediana .nv-carrusel__flecha{width:44px;height:44px}
.nv-carrusel--flecha-mediana .nv-carrusel__flecha .nv-i{width:13px;height:13px}
@media (max-width:767px){
  .nv-carrusel .nv-carrusel__flecha{width:36px;height:36px}
  .nv-carrusel--flecha-mediana .nv-carrusel__flecha{width:40px;height:40px}
}
.nv-carrusel[data-flechas=hover] .nv-carrusel__flecha{opacity:0;visibility:hidden}
@media (hover:hover){.nv-carrusel[data-flechas=hover]:hover .nv-carrusel__flecha,.nv-carrusel[data-flechas=hover]:focus-within .nv-carrusel__flecha{opacity:1;visibility:visible}}
.nv-carrusel .nv-carrusel__flecha:disabled{opacity:.35;cursor:default}
.nv-carrusel--sin-desborde .nv-carrusel__flecha,.nv-carrusel--sin-desborde .nv-carrusel__puntos{display:none}
.nv-carrusel__puntos{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.nv-carrusel .nv-carrusel__punto{width:10px;height:10px;min-height:0;padding:0;border:0;border-radius:50%;background:var(--nv-border);cursor:pointer}
.nv-carrusel .nv-carrusel__punto:hover{background:var(--nv-muted)}
.nv-carrusel .nv-carrusel__punto.is-activo{background:var(--nv-ink)}

/* ── Banda de título (§2.21): líneas a todo el ancho de la ventana sin desbordar la página:
   el border-image con «outset» lateral pinta fuera de la caja sin crear desplazamiento horizontal. ── */
.nv-banda{box-sizing:border-box;padding:75px 0;margin:0 0 50px;text-align:center;border-style:solid;border-width:1px 0;
  border-image:linear-gradient(var(--nv-border),var(--nv-border)) 1 / 1px 0 / 0 100vw}
.nv-banda .nv-contenedor{padding-inline:0}
.nv-banda__titulo{margin:0;font-family:var(--nv-font);color:#000;letter-spacing:0}
/* lh 1: así la banda mide 206 px a 1440, lo mismo que Shopify (líneas en y=208 e y=414, título en 288–318). */
.nv-banda--pagina .nv-banda__titulo,.nv-banda--pagina-pegada .nv-banda__titulo{font-size:40px;font-weight:400;line-height:1;text-transform:uppercase;
  text-shadow:0 0 4px rgba(0,0,0,.4);margin-bottom:15px}
.nv-banda--pagina-pegada{padding:100px 0 0}
.nv-banda--colecciones{padding:75px 0 0}
.nv-banda--colecciones .nv-banda__titulo{font-size:40px;font-weight:600;line-height:1;color:var(--nv-price);text-transform:uppercase;
  text-shadow:0 0 4px rgba(0,0,0,.4);margin-bottom:15px}
.nv-banda--carrito .nv-banda__titulo{font-size:40px;font-weight:300;line-height:56px;text-transform:none}
.nv-banda--busqueda .nv-banda__titulo{font-size:40px;font-weight:300;line-height:56px;margin:0}
.nv-banda--cuenta .nv-banda__titulo{font-size:35px;font-weight:400;line-height:1.3}
@media (max-width:1024px){
  .nv-banda{padding:50px 0}
  .nv-banda--pagina-pegada{padding:50px 0}
  .nv-banda--colecciones{padding:50px 0 0}
  .nv-banda--pagina .nv-banda__titulo,.nv-banda--pagina-pegada .nv-banda__titulo,.nv-banda--colecciones .nv-banda__titulo{font-size:30px;margin-bottom:10px}
  .nv-banda--carrito .nv-banda__titulo,.nv-banda--busqueda .nv-banda__titulo{font-size:35px;line-height:46px}
  .nv-banda--cuenta .nv-banda__titulo{font-size:30px}
}
@media (max-width:767px){
  .nv-banda--pagina-pegada{padding:65px 0 0}
  .nv-banda--colecciones{padding:60px 0 0}
  .nv-banda--busqueda .nv-banda__titulo{font-size:30px}
}

/* ── Migas «Inicio ▸ X» (base de la colección; T6 ajusta tamaño y color en la ficha) ──── */
.nv-migas{font-size:14px;line-height:18px;color:var(--nv-price)}
.nv-migas__lista{display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none}
.nv-migas__item{margin:0;display:inline-flex;align-items:center}
.nv-migas__item a{color:#817f8a;text-decoration:none}
.nv-migas__item a:hover{color:var(--nv-ink)}
/* Medido en la captura de Shopify a 1440: triángulo de 4×6 px, #a2a2a5, 14 px tras «Hogar» y 11 antes de «Tenis». */
.nv-migas__item+.nv-migas__item::before{content:"";display:inline-block;width:0;height:0;margin:0 11px 0 14px;
  border-top:3px solid transparent;border-bottom:3px solid transparent;border-left:4px solid #a2a2a5}
.nv-migas__item--actual{color:var(--nv-price);font-weight:500}

/* ── Franja de campaña «FLASH SALE» (colección §2.15, ficha §2.17) ────────────────────── */
.nv-franja-campana{position:relative;overflow:hidden;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;box-sizing:border-box}
.nv-franja-campana__fondo{position:absolute;inset:0;background:var(--nv-textura-oro) center/cover no-repeat;transition:transform 6s ease}
.nv-franja-campana:hover .nv-franja-campana__fondo{transform:scale(1.08)}
.nv-franja-campana__caja{position:relative;z-index:1;width:100%;max-width:1000px;padding:2px 15px;box-sizing:border-box}
.nv-franja-campana__titulo,.nv-franja-campana__sub{margin:0;color:#fff;text-shadow:0 0 4px rgba(0,0,0,.4)}
.nv-franja-campana--coleccion{background-color:#151515;min-height:156px}
.nv-franja-campana--coleccion .nv-franja-campana__fondo{background-position:left center}
.nv-franja-campana--coleccion .nv-franja-campana__titulo{font-size:40px;font-weight:700;line-height:1.2;letter-spacing:3.4px}
.nv-franja-campana--coleccion .nv-franja-campana__sub{font-size:10px;line-height:1.6}
/* Shopify a 1440: título a 21 px del borde superior y subtítulo a 102 (el hueco es el de su contador
   vencido). Sin estas dos reglas quedaban a 54 y 98. Con contador vigente, este va en medio. */
.nv-franja-campana--coleccion .nv-franja-campana__caja{padding-bottom:29px}
.nv-franja-campana--coleccion .nv-franja-campana__titulo+.nv-franja-campana__sub{margin-top:37px}
.nv-franja-campana--ficha{background-color:var(--nv-accent);min-height:122px}
.nv-franja-campana--ficha .nv-franja-campana__titulo{font-size:52px;font-weight:800;line-height:1.2;letter-spacing:9px}
.nv-franja-campana--ficha .nv-franja-campana__sub{font-size:23px;font-weight:400;line-height:1.3;letter-spacing:2.8px}
.nv-franja-campana__cuenta{margin:6px 0}
/* Con el contador vigente, el hueco que Shopify dejaba para SU contador vencido sobra: lo ocupa el
   contador. Se neutraliza con :has() en vez de borrar la regla porque el dueño puede volver a dejar
   vacío el campo «Franja: fin» y entonces hay que recuperar el encuadre de Shopify. */
.nv-franja-campana--coleccion:has(.nv-franja-campana__cuenta) .nv-franja-campana__caja{padding-bottom:2px}
@media (max-width:1024px){
  .nv-franja-campana--coleccion{min-height:150px}
  .nv-franja-campana--coleccion .nv-franja-campana__titulo{font-size:27px;letter-spacing:10px}
  .nv-franja-campana--coleccion .nv-franja-campana__sub{font-size:16px}
  .nv-franja-campana--ficha .nv-franja-campana__caja{padding:60px 15px}
  .nv-franja-campana--ficha .nv-franja-campana__titulo{font-size:18px}
  .nv-franja-campana--ficha .nv-franja-campana__sub{font-size:35px}
}
@media (max-width:767px){
  .nv-franja-campana--coleccion{min-height:120px}
  /* Shopify a 390: el título de campaña en dos líneas de 17 px (y 28 y 45) y el subtítulo a 102 px del borde. */
  .nv-franja-campana--coleccion .nv-franja-campana__titulo{font-size:17px;line-height:17px;letter-spacing:10px;max-width:200px;margin-inline:auto}
  .nv-franja-campana--coleccion .nv-franja-campana__caja{padding:17px 15px 0}
  .nv-franja-campana--coleccion .nv-franja-campana__titulo+.nv-franja-campana__sub{margin-top:38px}
  .nv-franja-campana--coleccion .nv-franja-campana__sub{font-size:10px}
  .nv-franja-campana--ficha{min-height:90px}
  .nv-franja-campana--ficha .nv-franja-campana__caja{padding:3px 15px}
  .nv-franja-campana--ficha .nv-franja-campana__titulo{font-size:29px;line-height:28px;letter-spacing:6.1px}
  .nv-franja-campana--ficha .nv-franja-campana__sub{font-size:18px;letter-spacing:.7px}
}

/* ── Cuenta regresiva (el HTML llega oculto; nv-base.js la muestra o la retira) ───────── */
.nv-cuenta-atras--bloques{display:inline-flex;gap:15px;justify-content:center}
.nv-cuenta-atras__b{display:inline-flex;flex-direction:column;align-items:center;min-width:48px}
.nv-cuenta-atras__n{font-size:50px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.nv-cuenta-atras__l{font-size:19px;font-weight:800;line-height:1.3}
.nv-cuenta-atras--linea{display:inline-block;margin:0 5px;padding:1px 15px;border-radius:25px;background:#fff;color:var(--nv-price);font-variant-numeric:tabular-nums}
.nv-franja-campana .nv-cuenta-atras__n{font-size:32px}
.nv-franja-campana .nv-cuenta-atras__l{font-size:12px}
/* En un teléfono de 390 los cuatro bloques a 32 px miden 237 px y aprietan la franja contra el título:
   se bajan aquí, DESPUÉS de las dos reglas de arriba, que si no ganan por orden. */
@media (max-width:767px){
  .nv-franja-campana .nv-cuenta-atras--bloques{gap:10px}
  .nv-franja-campana .nv-cuenta-atras__b{min-width:38px}
  .nv-franja-campana .nv-cuenta-atras__n{font-size:22px}
  .nv-franja-campana .nv-cuenta-atras__l{font-size:10px}
  .nv-franja-campana--coleccion:has(.nv-franja-campana__cuenta) .nv-franja-campana__caja{padding:14px 15px}
}

/* ── Logos de pago (pie 40 px, ficha 50 px) ───────────────────────────────────────────── */
.nv-pagos{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none}
.nv-pagos li{margin:0;line-height:0}
.nv-pagos img{display:block;height:var(--nv-pago-h,40px);width:auto;max-width:none}
.nv-pagos--pie{justify-content:center;--nv-pago-h:40px}
.nv-pagos--ficha{justify-content:flex-start;--nv-pago-h:50px}
@media (max-width:767px){.nv-pagos--ficha{justify-content:center}}

/* ── Lista de deseos de TI (D7: apagada en Nitro). El PHP ya no la imprime; esto cubre restos. ── */
.tinvwl_add_to_wishlist_button,.tinv-wraper,.tinvwl-shortcode-add-to-cart{display:none!important}

/* ── Accesibilidad y movimiento ───────────────────────────────────────────────────────── */
:focus-visible{outline:2px solid var(--nv-accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  .nv-cajon,.nv-velo,.nv-franja-campana__fondo,.nv-carrusel__flecha{transition:none!important}
  .nv-carrusel__pista{scroll-behavior:auto}
  /* El barrido de oro se apaga por token y no repitiendo sus cinco selectores: los tres tokens salen
     en las tres declaraciones de transition, así que ponerlos a 0 las apaga todas. El botón se
     enciende de golpe, que es lo que hacía antes de esta tarea. */
  :root{--nv-barrido-entra:0s;--nv-barrido-sale:0s;--nv-barrido-op:0s}
  /* La sacudida de «Agregar al carrito» (nv-ficha.css, copia del bee-ani-shake de Nitro) se repite
     cada 6 s para siempre y no tenía guarda: a quien pida menos movimiento el sistema operativo hay
     que hacerle caso. Quien no lo pida la sigue viendo igual que en Shopify. */
  .single_add_to_cart_button,.nv-sticky-atc__boton{animation:none!important}
}

/* ── Barrido de oro: TODOS los controles que llevan el oro de marca ────────────────────────
   El dueño, 2026-09-16: «quiero que ese efecto lo tenga todas las páginas que manejan ese color».
   Dos familias, un solo mecanismo:
     A) Dorados EN REPOSO — botón del hero, .nv-btn--dorado de las landings, píldora de la top bar,
        WhatsApp de «Visítanos», «Limpiar» de los filtros y los cuadros de redes del pie. Al pasar el
        cursor el fondo NO cambia (se queda en --nv-oro) y quien enciende es la lámina.
     B) Oscuros o claros que SE PONEN dorados al pasar — pagar, finalizar compra, añadir al carrito,
        comprar ahora, la barra fija de la ficha, «cargar más», el filtro de precio y las flechas del
        carrusel, la galería y el zoom. Ahí el fondo sí salta a --nv-oro en el fotograma 0 (con el
        texto ya en tinta, así que el contraste es correcto desde el primer instante) y la lámina pasa
        por encima: el salto seco que tenían se convierte en un destello.
   .nv-hero__boton--2 queda fuera a propósito: ése es el blanco con tinta, no lleva oro.
   2026-09-22: se suma el globo flotante de WhatsApp (.nv-flotante-wa), que pasó de negro a dorado por pedido del dueño.
   isolation:isolate crea contexto de apilamiento propio para que el ::before con z-index:-1 se pinte
   ENCIMA del fondo del botón y DEBAJO de su texto. Es la única manera de meter una capa sin tocar el
   HTML: no hay un <span> donde envolver la etiqueta y no se va a añadir en ocho archivos PHP. ── */
.nv-btn--dorado,
.nv-hero__boton:not(.nv-hero__boton--2),
.nv-topbar__btn,
.nv-visita__wa,
.nv-activos__limpiar,
.nv-pie__red,
.nv-btn--claro,
.nv-precio__btn,
.nv-cargar__btn,
.nv-carrito__btn--pagar,
#place_order,
.nv-mc__btn--pagar,
.nv-comprar-ahora,
.single_add_to_cart_button,
.nv-sticky-atc__boton{position:relative;isolation:isolate}
/* Éstas ya van con position:absolute y colocadas a mano —la del carrusel además con transform—: si se
   les pone position:relative se descolocan. Solo necesitan el contexto de apilamiento. */
.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa{isolation:isolate}
/* PESO (2026-09-16, hallazgo de la verificación): Blocksy declara en su hoja
   «.button::before, .ct-button::before, [type="submit"]::before, .woocommerce button.button::before
   { display: var(--theme-button-shadow, block) }» dentro de @media (hover:hover), y nv-base.css:116
   fija --theme-button-shadow:none. Resultado medido con CSS.getMatchedStylesForNode: en «Agregar al
   carrito», «Comprar ahora» y «Finalizar compra» el ::before del barrido computaba display:none y la
   lámina no existía —el usuario seguía viendo el salto seco—. Por eso aquí se declara display:block
   explícitamente Y la lista va dentro de :is(): como uno de sus argumentos es #place_order, :is()
   toma su especificidad (1,0,0), de modo que estas reglas pesan (1,0,1) y ganan a la de Blocksy
   (.woocommerce button.button::before, 0,2,2), que además le ganaba a la nuestra en inset, background
   y transition. Sin el :is() no hay orden de hojas que lo arregle. */
:is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-btn--claro,.nv-precio__btn,.nv-cargar__btn,.nv-carrito__btn--pagar,#place_order,.nv-mc__btn--pagar,.nv-comprar-ahora,.single_add_to_cart_button,.nv-sticky-atc__boton,.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa)::before{
  content:"";display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;
  /* inherit y no un valor fijo: «Limpiar» es una píldora, la de la top bar lleva 4 px y las flechas son círculos. */
  border-radius:inherit;
  background:var(--nv-barrido-luz);
  -webkit-mask-image:var(--nv-barrido-mascara);mask-image:var(--nv-barrido-mascara);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:50% 50%;mask-position:50% 50%;
  -webkit-mask-size:0% 100%;mask-size:0% 100%;
  /* La opacidad es el cinturón de seguridad: en un navegador sin mask-*, mask-size se ignora y esta
     capa se vería entera. Con opacity 0 en reposo y 1 al pasar, ese navegador recibe exactamente el
     comportamiento anterior (el botón entero se enciende). Degrada, no se rompe. */
  opacity:0;
  transition:opacity var(--nv-barrido-sale),-webkit-mask-size var(--nv-barrido-sale),mask-size var(--nv-barrido-sale)}
/* Sólo donde hay puntero de verdad: en táctil el :hover se queda PEGADO después de tocar y el botón
   se quedaría encendido hasta tocar otra cosa. Eso no es un barrido, es un botón averiado. */
@media (hover:hover) and (pointer:fine){
  :is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-btn--claro,.nv-precio__btn,.nv-cargar__btn,.nv-carrito__btn--pagar,#place_order,.nv-mc__btn--pagar,.nv-comprar-ahora,.single_add_to_cart_button,.nv-sticky-atc__boton,.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa):hover::before{display:block;opacity:1;-webkit-mask-size:var(--nv-barrido-abierto) 100%;mask-size:var(--nv-barrido-abierto) 100%;
    transition:opacity var(--nv-barrido-op) linear,-webkit-mask-size var(--nv-barrido-entra),mask-size var(--nv-barrido-entra)}
}
/* El teclado ve lo mismo que el ratón: el dueño dijo «cuando se seleccione O se pase el cursor». El
   outline de :focus-visible se dibuja FUERA de la caja y esta capa vive dentro: no se pisan. */
:is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-btn--claro,.nv-precio__btn,.nv-cargar__btn,.nv-carrito__btn--pagar,#place_order,.nv-mc__btn--pagar,.nv-comprar-ahora,.single_add_to_cart_button,.nv-sticky-atc__boton,.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa):focus-visible::before{display:block;opacity:1;-webkit-mask-size:var(--nv-barrido-abierto) 100%;mask-size:var(--nv-barrido-abierto) 100%;
  transition:opacity var(--nv-barrido-op) linear,-webkit-mask-size var(--nv-barrido-entra),mask-size var(--nv-barrido-entra)}
/* Al pulsar, la lámina se abre de golpe: un clic no debe esperar a que acabe una animación y en
   táctil —donde el bloque de :hover no aplica— éste es el único acuse de recibo que recibe el dedo. */
:is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-btn--claro,.nv-precio__btn,.nv-cargar__btn,.nv-carrito__btn--pagar,#place_order,.nv-mc__btn--pagar,.nv-comprar-ahora,.single_add_to_cart_button,.nv-sticky-atc__boton,.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa):active::before{display:block;opacity:1;-webkit-mask-size:var(--nv-barrido-abierto) 100%;mask-size:var(--nv-barrido-abierto) 100%;transition-duration:0s}
/* FAMILIA A: el fondo deja de cambiar al pasar, se queda en --nv-oro y quien enciende es la lámina. Si
   saltara a --nv-oro-vivo, el barrido llegaría a una superficie YA iluminada y no se vería. Se anula
   desde aquí en vez de editar cinco hojas de cinco secciones: :is() hereda la especificidad de su
   argumento más pesado —:not(.nv-hero__boton--2) la sube a (0,2,0)— así que estas reglas pesan (0,3,0)
   y ganan a las (0,2,0) de las otras hojas aunque se encolen después. Sólo se toca background: el
   color del texto, el borde y el opacity de la top bar siguen donde estaban. */
:is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-flotante-wa):hover,:is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-flotante-wa):focus-visible{background:var(--nv-oro)}
/* Los cuadros de redes del pie pasaban a negro al pasar el cursor (era lo que hacía Nitro). Con la
   lámina encima, ese negro tapaba el efecto justo en los únicos botones dorados del pie. */
.nv-pie__red:hover,.nv-pie__red:focus-visible{color:#151515}
/* Alto contraste de Windows: ahí manda la paleta del sistema y una capa extra sólo puede tapar la
   etiqueta. Se retira entera. */
@media (forced-colors:active){
  :is(.nv-btn--dorado,.nv-hero__boton:not(.nv-hero__boton--2),.nv-topbar__btn,.nv-visita__wa,.nv-activos__limpiar,.nv-pie__red,.nv-btn--claro,.nv-precio__btn,.nv-cargar__btn,.nv-carrito__btn--pagar,#place_order,.nv-mc__btn--pagar,.nv-comprar-ahora,.single_add_to_cart_button,.nv-sticky-atc__boton,.nv-carrusel__flecha,.nv-galeria__flecha,.nv-zoom__flecha,.nv-zoom__cerrar,.nv-flotante-wa)::before{display:none}
}
