/** Shopify CDN: Minification failed

Line 768:0 Unexpected "}"

**/
/* N de Nube - ajustes propios (cargado por snippets/theme-globals.liquid con useCustomCSS = true) */

/* Ficha de producto: etiqueta de rebajas mas grande (el tema la fija en body-20) */
.product--main .product-badges {
  --font-size-product-badge: var(--font-size-body-150);
}

/* Tarjetas de producto: el marco solo se ve al pasar el raton (usuario, 2026-10-16); el margen interior
   se mantiene siempre para que la tarjeta no se mueva al aparecer el borde */
.product-item .product-item__inner {
  border: 1px solid transparent;
  border-radius: calc(var(--corner-radius-cards-and-images) * 1.4);
  padding: var(--spacing-calc);
  transition: border-color var(--duration-fast, 300ms) var(--easing, ease);
}
.product-item:hover .product-item__inner,
.product-item:focus-within .product-item__inner {
  border-color: var(--color-text);
}

/* Ficha de producto: mismo borde fino en cada foto de la galeria */
.product--main .product__media-item .media {
  border: 1px solid var(--color-text);
  border-radius: var(--corner-radius-cards-and-images);
  overflow: hidden;
  box-sizing: border-box;
}

/* Producto agotado: ocultar el boton de compra desactivado (gris "Agotado") en la ficha, la barra fija y la vista rapida.
   El tema solo pone [disabled] cuando la variante no esta disponible, nunca durante la carga. */
.product-form__cart-submit[disabled] {
  display: none;
}


/* Ficha de producto: linea separadora despues de la descripcion, igual que la del precio
   (el bloque no se pinta si no hay descripcion, asi que no queda una linea suelta) */
.product--main .product__description {
  padding-bottom: var(--spacing-5);
  border-bottom: 1px solid var(--color-lines-and-borders);
}

/* Ficha de producto: migas de pan dentro de la columna de detalles, justo encima del titulo */
.product--main .product__breadcrumbs--in-details {
  margin-top: 0;
  margin-bottom: var(--spacing-7);
  padding: 0;
}

/* Sin animacion de carga en las imagenes: el tema aplica un "brillo" (shimmer) y oculta la imagen
   hasta que carga (html.do-anim .animation--lazy-load). Lo desactivamos en toda la tienda. */
html.do-anim .animation--lazy-load:not(.loaded) > * {
  visibility: visible;
}
html.do-anim .animation--lazy-load:not(.loaded)::before,
html.do-anim .animation--lazy-load:not(.loaded)::after {
  display: none;
  animation: none;
}
/* Ficha de producto: sin efecto de entrada en las fotos de la galeria */
.product--main .product__media-item,
.product--main .product__media-item .media {
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Sin animaciones de aparicion en toda la tienda (ajuste general enable_section_animations = false).
   Red de seguridad: las tarjetas de producto llevan la clase "animation" fija en su propio markup,
   asi que forzamos el estado visible de todo lo que el tema oculta hasta "revelar". */
html.do-anim .animation .image--animate .image__img,
html.do-anim .animation .image--animate .video,
html.do-anim .animation .video-wrapper--animate .image__img,
html.do-anim .animation .animation--item,
html.do-anim .animation .animation--section-blocks > *,
html.do-anim .animation .animation--section-introduction > *,
html.do-anim .animation .init-reveal,
html:not(.no-js) .animation.animation--apps .animation--item {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Tarjetas: al pasar el raton el tema muestra una caja de fondo (hover-container) mas grande que la
   tarjeta que tapaba nuestro borde permanente. La dejamos transparente y sin borde propio. */
.product-item__inner .product-item__hover-container {
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Flechas de carrusel: mismo negro y mismo blanco que el boton principal (el ajuste "dark" del tema
   usa el color del texto, un gris algo mas claro) */
.carousel__navigation-button.button-color--dark {
  background-color: var(--color-solid-button-background);
  color: var(--color-solid-button-text);
  border: 1px solid var(--color-solid-button-background);
}
.carousel__navigation-button.button-color--dark:hover {
  background-color: var(--color-solid-button-background-hover);
}

/* Ficha de producto: barra de stock en negro (color del texto) y mensaje en el color normal del texto,
   en lugar de los colores naranja/verde de "stock bajo" / "en stock" del tema */
.product--main .inventory-counter__bar-progress,
.product--main .inventory-counter[data-stock-category="low"] .inventory-counter__bar-progress {
  background-color: var(--color-text);
}
.product--main .inventory-counter__message,
.product--main .inventory-counter[data-stock-category="low"] .inventory-counter__message {
  color: var(--color-text);
}

/* Stock: solo se muestra el bloque cuando quedan 5 unidades o menos (categoria "low") o esta agotado ("empty").
   Con stock de sobra ("sufficient") o antes de que el JS lo calcule, queda oculto. */
.product--main .inventory-counter:not([data-stock-category="low"]):not([data-stock-category="empty"]) {
  display: none;
}

/* Newsletter del pie: casilla obligatoria de aceptacion de la politica de privacidad */
.newsletter-form__privacy {
  display: flex;
  align-items: flex-start;
  gap: 0.5em;
  margin-bottom: var(--spacing-3);
  cursor: pointer;
}
.newsletter-form__privacy-checkbox {
  margin-top: 0.2em;
  accent-color: currentColor;
}
.newsletter-form__privacy a {
  text-decoration: underline;
}

/* Newsletter del pie: titulo en mayusculas, boton de flecha como bloque solido dentro del campo,
   nota legal y casilla debajo del campo */
.footer__heading {
  text-transform: uppercase;
}
.footer__newsletter .footer__newsletter-input {
  padding-right: 64px;
}
.footer__newsletter .footer__newsletter-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  padding: 0;
  background-color: var(--color-text);
  color: var(--color-background);
}
.footer__newsletter .footer__newsletter-button:hover {
  color: var(--color-background);
  opacity: 0.85;
}
.footer__newsletter .footer__newsletter-button .icon {
  width: 22px;
  height: 22px;
}
.newsletter-form__note {
  margin: var(--spacing-3) 0 var(--spacing-3);
  opacity: 0.8;
}
.newsletter-form__privacy-checkbox {
  width: 1.15em;
  height: 1.15em;
}

/* Pie: linea separadora encima de la fila de "Informacion de la tienda" (el grupo de texto de las tiendas, a todo el ancho);
   el bloque del boton de contacto va pegado debajo, sin linea */
.footer .footer__groups > .footer__group--text:has(+ .footer__group--liquid),
.footer .footer__groups > .footer__group:last-child:not(.footer__group--liquid) {
  border-top: 1px solid var(--color-lines-and-borders);
  margin-top: var(--spacing-5);
  padding-top: var(--spacing-6);
}

/* Pie: copyright y "Tecnologia de Shopify" centrados en la ultima linea */
.footer .footer__bottom {
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.footer .footer__bottom-left,
.footer .footer__bottom-right {
  width: 100%;
  justify-content: center;
  text-align: center;
}
.footer .footer__credits p {
  margin-left: auto;
  margin-right: auto;
}

/* Pie (escritorio, breakpoint del tema 960px):
   - los titulos de columna son <h2> (antes <h4>); el tema solo mostraba h4.footer__header en escritorio
   - separadores verticales a la izquierda de cada grupo de enlaces y de la newsletter */
@media (min-width: 960px) {
  .footer h2.footer__header {
    display: block;
    pointer-events: all;
    cursor: auto;
  }
  .footer .footer__group--links,
  .footer .footer__group--newsletter {
    box-sizing: border-box;
    border-left: 1px solid var(--color-lines-and-borders);
    padding-left: var(--spacing-6);
  }
}

/* Pie: el logo (negro sobre transparente) se invierte a blanco sobre el fondo negro */
.footer .footer__group--text .footer__image img {
  filter: invert(1);
}

/* Pie: logo y redes sociales centrados en su columna (movil y escritorio) */
.footer .footer__group--1 .footer__group-content {
  text-align: center;
}
.footer .footer__group--1 .footer__image {
  margin-left: auto;
  margin-right: auto;
}
.footer .footer__group--1 .social-icons,
.footer .footer__group--1 .social-icons--left {
  justify-content: center;
}

/* Migas de pan en mayusculas */
.breadcrumbs {
  text-transform: uppercase;
}

/* Ficha de producto: mas aire dentro de la etiqueta de rebajas */
.product--main .product-badge {
  padding: 0.5em 0.9em;
}

/* Colecciones: sin animaciones en filtros, barra de filtros ni tarjetas (estado final forzado) */
html.do-anim .animation .animation--filter-bar,
html.do-anim .animation .animation--mobile-filters,
html.do-anim .animation .animation--filter-drawer .animation--filter-drawer-item,
html.do-anim .animation [data-filter-sidebar] .animation--filter-drawer-item,
html.do-anim .animation.animation--collection .animation--item,
html.do-anim .animation.animation--search .animation--item {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Tarjetas de producto: etiqueta de rebajas mas grande y con aire (el tema la fija en body-20) */
.product-item .product-badges {
  --font-size-product-badge: var(--font-size-body-75);
}
.product-item .product-badge {
  padding: 0.45em 0.8em;
}

/* Cabecera de coleccion: titulo y descripcion a la izquierda. Las descripciones de algunas colecciones
   llevan estilos incrustados (text-align:center, enlaces azules) que se anulan aqui. */
.collection-banner__text-container,
.collection-banner__text-container-inner {
  text-align: left;
  align-items: flex-start;
  margin-left: 0;
}
.collection-banner__text-container-text,
.collection-banner__text-container-text p {
  text-align: left !important;
}
.collection-banner__text-container-text a {
  color: inherit !important;
}

/* Cabecera de coleccion: linea separadora negra bajo el titulo y la descripcion */
.collection-banner__text-container-inner {
  width: 100%;
  max-width: none;
  padding-bottom: var(--spacing-5);
  border-bottom: 1px solid var(--color-text);
}

/* Filtros: valores de Color y Tipo de producto a dos columnas (panel lateral, desplegable movil y barra) */
[id$="filter-p-m-custom-color"] .filter-drawer__list,
[id$="filter-p-product_type"] .filter-drawer__list,
[id$="filter-p-m-custom-color"] .filter-group__list,
[id$="filter-p-product_type"] .filter-group__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--spacing-4);
  row-gap: var(--spacing-3);
  align-items: start;
}
/* El tema separa los valores con margin-top en todos menos el primero, lo que desalinea las dos columnas;
   aqui la separacion la pone la rejilla (row-gap) y todos los valores parten de la misma linea */
[id$="filter-p-m-custom-color"] .filter-item,
[id$="filter-p-product_type"] .filter-item {
  margin-top: 0 !important;
  min-width: 0;
}
[id$="filter-p-m-custom-color"] .filter-item__content,
[id$="filter-p-product_type"] .filter-item__content {
  display: flex;
  align-items: center;
  width: 100%;
}

/* Panel lateral de filtros mas ancho (el tema lo fija en 280px) y textos de los valores a dos columnas
   que pueden partirse en dos lineas en vez de cortarse con puntos suspensivos */
.filter-sidebar {
  --sidebar-width: 340px;
  width: 340px;
}
[id$="filter-p-m-custom-color"] .filter-item__label,
[id$="filter-p-product_type"] .filter-item__label {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  line-height: 1.25;
}

/* Boton "Ordenar" de la barra de filtros con borde (escritorio y movil) */
.filter-bar__button--sort,
.mobile-filters__button[data-sort-dropdown] {
  border: 1px solid var(--color-text);
  padding: var(--spacing-2) var(--spacing-4);
}

/* Desplegable "Ordenar": separado del boton, con sombra, aire interior y filas con hover */
.filter-bar__sort-group .filter-group__values {
  top: calc(100% + 8px);
  min-width: 100%;
  padding: var(--spacing-2) 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
}
.filter-group__list--sort .filter-item + .filter-item:not(.filter-item--chip) {
  margin-top: 0;
}
.filter-group__list--sort .filter-item__content {
  display: block;
  padding: var(--spacing-3) var(--spacing-5);
}
.filter-group__list--sort .filter-item__content:hover {
  background-color: var(--color-text-alpha-05);
}

/* Tarjetas de producto: todas las de una fila con la misma altura (el recuadro se estira) y dos lineas
   reservadas para el titulo, para que los precios queden alineados */
.collection__products .product-item,
.featured-collection-grid__product.product-item,
.recommended-products .product-item,
.search__products .product-item {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.collection__products .product-item .product-item__inner,
.featured-collection-grid__product.product-item .product-item__inner,
.recommended-products .product-item .product-item__inner,
.search__products .product-item .product-item__inner {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  height: 100%;
}
.product-item .product-item__product-title {
  min-height: calc(2 * 1.35em);
  line-height: 1.35;
}

/* Desplegable "Ordenar": sin scroll interno, se ven todas las opciones */
.filter-bar__sort-group .filter-group__values {
  max-height: none;
  overflow: visible;
}

/* ===== Modal "Añadido al carrito" (sustituye al aviso pequeño del tema) ===== */
.purchase-confirmation-popup {
  position: fixed;
  inset: 0;
  z-index: 2400;
  display: none;
  background: rgba(0, 0, 0, 0.55);
  overflow-y: auto;            /* si en una pantalla muy baja no cabe, se desplaza la capa, no el modal */
  padding: 16px;
}
.purchase-confirmation-popup.active {
  display: flex;
  align-items: center;
  justify-content: center;
}
.purchase-confirmation-popup .purchase-confirmation-popup__inner {
  position: static;
  width: 100%;
  max-width: 1120px;
  margin: auto;
}
.purchase-confirmation-popup .purchase-confirmation-popup__container,
.purchase-confirmation-popup .purchase-confirmation-popup__container.fixed {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  transform: none !important;
  width: 100%;
  max-height: none;
  overflow: visible;
  margin: 0;
  padding: var(--spacing-7) var(--spacing-8);
  border-radius: 0;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}
html.nn-popup-open {
  overflow: hidden;
}
.nn-added__heading {
  display: flex;
  align-items: center;
  gap: var(--spacing-3);
  margin: 0 0 var(--spacing-6);
  text-transform: uppercase;
}
.nn-added__check .icon {
  width: 28px;
  height: 28px;
}
.nn-added__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--spacing-8);
}
.nn-added__product {
  display: flex;
  gap: var(--spacing-5);
  padding-right: var(--spacing-8);
  border-right: 1px solid var(--color-lines-and-borders);
}
.nn-added__image {
  flex: 0 0 200px;
  max-width: 200px;
}
.nn-added__image .image {
  background: var(--color-text-alpha-05);
}
.nn-added__image .image__img {
  object-fit: contain;
  padding: var(--spacing-2);
}
.nn-added__title {
  margin: 0 0 var(--spacing-2);
}
.nn-added__meta {
  margin: 0 0 var(--spacing-2);
}
.nn-added__price {
  margin: 0 0 var(--spacing-4);
}
.nn-added__options {
  margin: 0;
}
.nn-added__option {
  display: flex;
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-1);
}
.nn-added__option dt {
  min-width: 90px;
  opacity: 0.6;
}
.nn-added__option dd {
  margin: 0;
}
.nn-added__summary {
  display: flex;
  flex-direction: column;
}
.nn-added__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--spacing-4);
  padding: var(--spacing-2) 0;
}
.nn-added__row--head {
  padding-bottom: var(--spacing-3);
}
.nn-added__row--total {
  margin-top: var(--spacing-2);
  padding-top: var(--spacing-4);
  border-top: 1px solid var(--color-lines-and-borders);
}
.nn-added__button.btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: var(--spacing-4);
  text-transform: uppercase;
}
.nn-added__button.btn > span {
  flex: 1 1 auto;
  text-align: center;
}
.nn-added__button.btn .icon {
  flex: 0 0 auto;
  margin-left: var(--spacing-3);
}
.nn-added__button .icon {
  width: 20px;
  height: 20px;
}
.nn-added__recs {
  margin-top: var(--spacing-8);
  padding-top: var(--spacing-6);
  border-top: 1px solid var(--color-lines-and-borders);
}
.nn-added__recs-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-5);
}
.nn-added__recs-heading {
  margin: 0;
  text-transform: uppercase;
}
.nn-added__recs-all {
  text-decoration: underline;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.nn-added__recs-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: var(--spacing-4);
}
.nn-added__recs-grid .product-item .product-item__inner {
  padding: var(--spacing-2);
}
.nn-added__recs-grid .product-item__text {
  margin-top: var(--spacing-2);
  margin-bottom: 0;
}
.nn-added__recs-grid .product-item__product-title {
  min-height: 0;
  font-size: 11px;
  letter-spacing: 0.04em;
}
.nn-added__recs-grid .product-item__price {
  font-size: 12px;
}
.nn-added__recs-grid .product-badges {
  display: none;
}
.nn-added__recs {
  margin-top: var(--spacing-6);
  padding-top: var(--spacing-5);
}
@media (max-width: 959px) {
  .purchase-confirmation-popup .purchase-confirmation-popup__container,
  .purchase-confirmation-popup .purchase-confirmation-popup__container.fixed {
    padding: var(--spacing-6) var(--spacing-4);
  }
  .nn-added__grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-6);
  }
  .nn-added__product {
    padding-right: 0;
    border-right: 0;
    padding-bottom: var(--spacing-6);
    border-bottom: 1px solid var(--color-lines-and-borders);
  }
  .nn-added__image {
    flex-basis: 120px;
    max-width: 120px;
  }
  .nn-added__recs-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Modal: barra de envio gratuito encima de los botones */
.nn-added__shipping-bar {
  margin-top: var(--spacing-4);
}
.nn-added__shipping-bar .free-shipping-bar {
  margin-top: 0;
}

/* Tarjetas: tallas disponibles siempre visibles bajo el precio */
.product-item__chips-static {
  margin-top: var(--spacing-2);
}
.product-item__chips-static .product-chips-options {
  pointer-events: auto;
  opacity: 1;
}
.product-item__chips-static .product-chips-options__list {
  padding: 0;
}

/* Modal: la tarjeta de coleccion del producto añadido, centrada en su columna */
.nn-added__card {
  padding-right: var(--spacing-8);
  border-right: 1px solid var(--color-lines-and-borders);
}
/* Modal "Añadido": la fila del articulo en pequeño (misma estructura que el carrito) */
.nn-cart__item--compact {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: var(--spacing-5);
  align-items: start;
}
/* Animacion al abrir el modal: el articulo entra deslizandose y el check "salta" */
@keyframes nn-added-in {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: none; }
}
@keyframes nn-added-check {
  0% { transform: scale(0.3); opacity: 0; }
  60% { transform: scale(1.2); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}
.nn-added__item:not(.hidden) .nn-cart__item--compact { animation: nn-added-in 0.55s cubic-bezier(0.2, 0.7, 0.2, 1) both; }
.nn-added__item:not(.hidden) .nn-cart__item--compact .nn-cart__item-image { animation: nn-added-in 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 0.08s both; }
.nn-added__item:not(.hidden) .nn-added__summary { animation: nn-added-in 0.55s cubic-bezier(0.2, 0.7, 0.2, 1) 0.18s both; }
.nn-added__check .icon { animation: nn-added-check 0.6s cubic-bezier(0.2, 0.7, 0.2, 1) both; }
@media (prefers-reduced-motion: reduce) {
  .nn-added__item:not(.hidden) .nn-cart__item--compact,
  .nn-added__item:not(.hidden) .nn-cart__item--compact .nn-cart__item-image,
  .nn-added__item:not(.hidden) .nn-added__summary,
  .nn-added__check .icon { animation: none; }
}
.nn-cart__item--compact .nn-cart__item-props { margin-top: var(--spacing-2); }
.nn-cart__item--compact .nn-cart__item-prop { grid-template-columns: 80px minmax(0, 1fr); margin-bottom: 2px; }
.nn-cart__item--compact .nn-cart__item-availability { margin-top: var(--spacing-1); }
.nn-added__qty {
  margin: var(--spacing-3) 0 0;
  text-align: center;
}
@media (max-width: 959px) {
  .nn-added__card {
    padding-right: 0;
    border-right: 0;
  }
}

/* ===== Pagina del carrito ===== */
.cart .cart__form-header {
  padding-bottom: var(--spacing-4);
  border-bottom: 1px solid var(--color-text);
  margin-bottom: 0;
}
.cart .cart__form-item {
  padding-top: var(--spacing-6);
  padding-bottom: var(--spacing-6);
}
.cart .cart__form-item:first-of-type {
  border-top: 0;
}
.cart .cart__form-item-image {
  width: 140px;
}
.cart .cart__form-item-image .image {
  background: var(--color-text-alpha-05);
  border-radius: 0;
}
.cart .cart__form-item-image .image__img {
  object-fit: contain;
  padding: var(--spacing-2);
}
.cart .cart__form-item-quantity-wrapper {
  margin-top: var(--spacing-4);
  align-items: center;
  gap: var(--spacing-4);
}
.cart .cart__footer-inner {
  border: 1px solid var(--color-text);
  border-radius: 0;
}
.nn-cart__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--spacing-4);
  padding: var(--spacing-2) 0;
}
.nn-cart__row--total {
  margin-top: var(--spacing-2);
  padding-top: var(--spacing-4);
  border-top: 1px solid var(--color-lines-and-borders);
}
.cart .cart__footer-subtotal h3 {
  margin: 0;
}
html:not(.no-js) .cart .cart__update {
  display: none;
}
.cart .cart__continue {
  margin-top: var(--spacing-3);
}
.cart .cart__empty-message {
  padding: var(--spacing-10) 0;
}

/* ===== Carrito: cada articulo en dos columnas (foto | informacion) y resumen del pedido fijo a la derecha ===== */
.cart .cart__form-items { display: block; }
.cart .cart__form-header { align-items: flex-end; gap: var(--spacing-4); }
.cart .cart__form-header .cart__form-item-count { margin-right: auto; }
.nn-cart__continue-link { text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.cart .cart__form-items > .nn-cart__item {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: var(--spacing-6);
  align-items: start;
  padding: var(--spacing-6) 0;
  border: 0;
  border-bottom: 1px solid var(--color-lines-and-borders);
}
.nn-cart__item-image { display: block; }
.nn-cart__item-image .image { background: var(--color-text-alpha-05); }
.nn-cart__item-info { min-width: 0; }
.nn-cart__item-head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--spacing-4); }
.nn-cart__item-title { margin: 0; }
.nn-cart__item-title a { text-decoration: none; }
.nn-cart__item-meta { margin: var(--spacing-1) 0 0; }
.nn-cart__item-price { text-align: right; white-space: nowrap; }
.nn-cart__item-price-final { display: block; font-weight: var(--font-weight-body-bold); }
.nn-cart__item-price-final--sale { color: var(--color-products-sale); }
.nn-cart__item-price-original { display: block; margin-top: 2px; }
.nn-cart__item-props { margin: var(--spacing-4) 0 0; }
.nn-cart__item-prop { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: var(--spacing-2); margin: 0 0 var(--spacing-1); }
.nn-cart__item-prop dt { opacity: 0.6; }
.nn-cart__item-prop dd { margin: 0; }
.nn-cart__item-availability { display: flex; align-items: center; gap: var(--spacing-1); margin: var(--spacing-2) 0 0; text-transform: uppercase; letter-spacing: 0.05em; }
.nn-cart__item-availability .icon { width: 1em; height: 1em; }
.nn-cart__item-actions { display: flex; align-items: center; flex-wrap: wrap; gap: var(--spacing-6); margin-top: var(--spacing-5); }
.cart .nn-cart__item .cart__form-item-quantity-wrapper { margin-top: 0; }
.cart .nn-cart__item .cart__form-item-remove-wrapper { margin: 0; text-align: left; }
.nn-cart__item-remove { display: inline-flex; align-items: center; gap: var(--spacing-2); text-transform: uppercase; letter-spacing: 0.05em; text-decoration: underline; text-underline-offset: 3px; }
.nn-cart__item-remove .icon { width: 0.9em; height: 0.9em; }
.cart .cart__footer-inner { position: sticky; top: calc(var(--height-header, 100px) + var(--spacing-5)); padding: var(--spacing-6); }
.nn-cart__summary-title { margin: 0 0 var(--spacing-3); }
.cart .nn-cart__pay.btn { display: flex; justify-content: space-between; align-items: center; gap: var(--spacing-4); text-align: left; }
.nn-cart__pay .icon { width: 1.2em; height: 1.2em; }
.nn-cart__express { margin-top: var(--spacing-3); }
.nn-cart__notes { list-style: none; margin: var(--spacing-5) 0 0; padding: 0; }
.nn-cart__notes li { display: flex; align-items: center; gap: var(--spacing-2); margin: 0 0 var(--spacing-2); }
.nn-cart__notes .icon, .nn-cart__notes svg { width: 1.3em; height: 1.3em; flex: 0 0 auto; }
.cart .cart__footer-tax-note { display: none; }
@media (max-width: 719px) {
  .cart .cart__form-items > .nn-cart__item { grid-template-columns: 36vw minmax(0, 1fr); gap: var(--spacing-4); }
  .nn-cart__item--compact { grid-template-columns: 120px minmax(0, 1fr); gap: var(--spacing-4); }
  .nn-cart__item-head { flex-direction: column; gap: var(--spacing-1); }
  .nn-cart__item-price { text-align: left; }
  .nn-cart__item-prop { grid-template-columns: 80px minmax(0, 1fr); }
  .cart .cart__footer-inner { position: static; }
}
}

/* Carrito: cantidad en una linea y el total de la linea debajo, dentro de la tarjeta */
.cart .nn-cart__item .nn-cart__item-quantity {
  justify-content: center;
}
.cart .nn-cart__item .nn-cart__item-total {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--spacing-3);
  margin-top: var(--spacing-3);
  padding-top: var(--spacing-3);
  border-top: 1px solid var(--color-lines-and-borders);
}

/* ===== Barra de busqueda a todo el ancho bajo la cabecera ===== */
.nn-search-bar {
  border-bottom: 1px solid var(--color-text);
  background: var(--color-background);
}
.nn-search-bar .section-inner {
  padding-top: var(--spacing-3);
  padding-bottom: var(--spacing-3);
}
.nn-search-bar__form {
  display: flex;
  align-items: stretch;
  width: 100%;
  margin: 0;
}
.nn-search-bar__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 48px;
  border: 1px solid var(--color-text);
  border-right: 0;
  border-radius: 0;
  padding: 0 var(--spacing-4);
}
.nn-search-bar__input::-webkit-search-decoration,
.nn-search-bar__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.nn-search-bar__submit.btn {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  height: 48px;
  min-height: 0;
  padding: 0 var(--spacing-5);
  border-radius: 0;
}
.nn-search-bar__submit .icon {
  width: 20px;
  height: 20px;
}
@media (max-width: 959px) {
  .nn-search-bar__submit-text {
    display: none;
  }
  .nn-search-bar__submit.btn {
    padding: 0 var(--spacing-4);
  }
}

/* ===== Buscador como panel a todo el ancho bajo la cabecera (estilo zapatosobi.com) =====
   El tema lo abre como un cajon lateral en escritorio; aqui se convierte en un panel superior. */
@media (min-width: 960px) {
  .quick-search {
    top: calc(var(--announcement-height, 0px) + var(--height-header, 0px));
    right: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: auto;
    max-height: calc(100vh - var(--announcement-height, 0px) - var(--height-header, 0px));
  }
  .quick-search .quick-search__container {
    width: 100%;
    max-width: none;
    height: auto;
    max-height: calc(100vh - var(--announcement-height, 0px) - var(--height-header, 0px));
    border-radius: 0;
    border-bottom: 1px solid var(--color-text);
    overflow-y: auto;
    /* cerrado: escondido hacia arriba (asi la transicion termina y el tema lo oculta del todo; antes quedaba un panel blanco vacio tapando el menu) */
    transform: translateY(-110%);
    pointer-events: none;
  }
  .quick-search.quick-search--visible .quick-search__container,
  body.quick-search-position-left .quick-search.quick-search--visible .quick-search__container {
    transform: none;
    pointer-events: auto;
  }
  .quick-search .quick-search__form {
    height: auto;
  }
  .quick-search .quick-search__bar {
    position: static;
    padding: var(--spacing-6) var(--space-outer) var(--spacing-4);
  }
  .quick-search .quick-search__bar-inner {
    max-width: none;
    border: 1px solid var(--color-text);
    padding: 0 var(--spacing-3);
  }
  .quick-search .quick-search__input {
    height: 52px;
    font-size: var(--font-size-body-150);
  }
  .quick-search .quick-search__results-wrapper {
    position: relative;
    min-height: 0;
  }
  .quick-search .quick-search__results,
  .quick-search .quick-search__suggested {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--spacing-8);
    padding: var(--spacing-2) var(--space-outer) var(--spacing-5);
  }
  /* Sin boton 'Ver todo' en el panel (el cliente no lo quiere; con Enter se va a los resultados completos) */
  .quick-search .quick-search__footer {
    display: none;
  }
  .quick-search .quick-search__close {
    top: var(--spacing-5);
    right: var(--space-outer);
  }
}

/* Buscador: resultados de productos como tarjetas de coleccion */
.quick-search__results .quick-search__header,
.quick-search__results .quick-search__suggested-queries-list,
.quick-search__results .quick-search__cards {
  grid-column: 1 / -1;
}
.quick-search__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--spacing-4);
  margin-bottom: var(--spacing-4);
}
@media (max-width: 959px) {
  .quick-search__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--spacing-3);
  }
}

/* Tarjetas del buscador y del carrito: misma altura por fila */
.quick-search__cards .product-item,
.cart .nn-cart__item .product-item {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.quick-search__cards .product-item .product-item__inner,
.cart .nn-cart__item .product-item .product-item__inner {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  height: 100%;
}
.cart .nn-cart__item .nn-cart__item-card {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

/* Carrito en movil: barra fija abajo con fondo blanco: "¿Tienes un cupón?" + boton "Pagar" */
.nn-cart__coupon-link { display: none; }
@media (max-width: 959px) {
  .cart .cart__input-buttons {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--spacing-2);
    margin: 0;
    padding: var(--spacing-3) 16px;
    padding-bottom: max(var(--spacing-3), env(safe-area-inset-bottom));
    background: var(--color-background);
    border-top: 1px solid var(--color-lines-and-borders);
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.08);
  }
  .cart .cart__input-buttons .cart__submit {
    flex: 1 1 auto;
    width: auto;
    margin: 0;
  }
  .nn-cart__coupon-link {
    display: block;
    order: 2;
    text-align: center;
    white-space: nowrap;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .cart .cart__container {
    padding-bottom: 130px;
  }
}

/* Carrusel de coleccion destacada (Novedades): todas las tarjetas de la fila con la misma altura */
.featured-collection-slider__products .swiper-slide,
.featured-collection-slider__product {
  height: auto;
  display: flex;
}
.featured-collection-slider__product .product-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
}
.featured-collection-slider__product .product-item .product-item__inner {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  height: 100%;
}

/* Pagina de tiendas: cada tienda dentro de un recuadro con borde negro */
[id$="__tiendas"] .multi-column__grid-item-inner {
  border: 1px solid var(--color-text);
  padding: var(--spacing-4);
  height: 100%;
  box-sizing: border-box;
}
[id$="__tiendas"] .multi-column__grid-item {
  height: auto;
}

/* Colecciones relacionadas (enlazado interno): carrusel de botones rectangulares con flechas */
.nn-related .section-introduction { margin-bottom: var(--spacing-3); }
.nn-related__btn.btn {
  display: flex; align-items: center; justify-content: center; width: 100%; text-align: center;
  border: 1px solid var(--color-text); color: var(--color-text); background: transparent;
  padding: 1.1em 1em; line-height: 1.25; border-radius: 0; white-space: normal;
}
.nn-related__btn--m.btn { min-height: 60px; font-size: var(--font-size-body-100); padding: .9em 1em; }
.nn-related__btn--l.btn { min-height: 72px; font-size: var(--font-size-body-150); }
.nn-related__btn--xl.btn { min-height: 96px; font-size: var(--font-size-body-200); }
.nn-related__btn.btn:hover, .nn-related__btn.btn[aria-current="page"] { background: var(--color-text); color: var(--color-background); }
.nn-related__meta { display: flex; justify-content: space-between; align-items: center; gap: var(--spacing-4); margin-bottom: var(--spacing-3); }
.nn-related__meta .section-introduction { margin-bottom: 0; }
.nn-related .carousel.swiper { overflow: hidden; }
/* Botones de colecciones relacionadas: todos con la misma altura en la fila (el mas alto manda) */
.nn-related .swiper-slide { height: auto; display: flex; }
.nn-related__btn.btn { height: 100%; }
@media (max-width: 719px) { .nn-related__btn--m.btn { min-height: 64px; padding: .7em .8em; } }

/* Buscador / mega menú abiertos: sin velo oscuro (el cliente no lo quiere). El elemento sigue existiendo, transparente, para que un clic fuera siga cerrando el panel */
.header-overlay__inner, .header-overlay__inner.is-visible { opacity: 0 !important; }
.quick-search__overlay { opacity: 0 !important; }

/* Buscador (escritorio): sugerencias a la izquierda y tarjetas de producto, mas pequeñas, a la derecha en la misma fila */
@media (min-width: 960px) {
  .quick-search .quick-search__results {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    grid-auto-rows: auto;
    column-gap: var(--spacing-8);
    align-items: start;
  }
  .quick-search__results > .quick-search__header { grid-column: 1; grid-row: 1; }
  .quick-search__results > .quick-search__suggested-queries-list { grid-column: 1; grid-row: 2; }
  .quick-search__results > .quick-search__header:has(+ .quick-search__cards) { grid-column: 2; grid-row: 1; }
  .quick-search__results > .quick-search__cards { grid-column: 2; grid-row: 2; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--spacing-3); }
  /* Colecciones / paginas: debajo de las sugerencias, en la columna izquierda */
  .quick-search__results > .quick-search__header:has(+ .quick-search__result) { grid-column: 1; grid-row: 3; margin-top: var(--spacing-4); }
  .quick-search__results > .quick-search__result { grid-column: 1; grid-row: auto; }
}
@media (min-width: 1700px) {
  .quick-search__results > .quick-search__cards { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}

/* Boton "Ver todo" del buscador: fuera tambien en movil */
.quick-search .quick-search__footer { display: none !important; }

/* N de Nube: banner de coleccion con dos versiones de la foto (movil: original, escritorio: recorte 3:2) */
.collection-banner__image--mobile { display: none; }
@media (max-width: 719px) {
  .collection-banner__image--mobile { display: block; }
  .collection-banner__image--desktop { display: none; }
}

/* Tarjetas de producto estilo Zara: texto a la izquierda; lineas "Pocas unidades" / categoria madre / titulo / precio */
.product-item .product-item__text { text-align: left; }
.product-item .product-item__price { justify-content: flex-start; }
.product-item .product-item__chips-static .product-chips-options__list { justify-content: flex-start; }
.product-item .nn-card__stock,
.product-item .nn-card__category { margin: 0; line-height: 1.35; }
.product-item .product-item__product-title { min-height: 0; }

/* Tarjetas: el precio con el mismo tamaño (adaptable) que el titulo; en rebajas, tachado y precio nuevo en la misma linea */
.product-item .product-item__price,
.product-item .product-item__price .displayed-discount,
.product-item .product-item__price .unit-price {
  font-size: var(--font-size-product-listing-title);
  line-height: 1.35;
}
.product-item .product-item__price {
  gap: 0 var(--spacing-2);
  margin-top: var(--spacing-1);
}

/* Todos los textos a 13 px (usuario, 2026-10-16): titulos h1-h6 y todas las escalas del texto general.
   Se deja grande solo el titulo "display" del hero de la home (fs-heading-display-*). */
html:root {
  --font-size-heading-1-base: 13px;
  --font-size-heading-2-base: 13px;
  --font-size-heading-3-base: 13px;
  --font-size-heading-4-base: 13px;
  --font-size-heading-5-base: 13px;
  --font-size-heading-6-base: 13px;
  --font-size-body-400: 13px;
  --font-size-body-350: 13px;
  --font-size-body-300: 13px;
  --font-size-body-250: 13px;
  --font-size-body-200: 13px;
  --font-size-body-150: 13px;
  --font-size-body-100: 13px;
  --font-size-body-75: 13px;
  --font-size-body-60: 13px;
  --font-size-body-50: 13px;
  --font-size-body-25: 13px;
  --font-size-body-20: 13px;
}
/* Titulos con tamaño "display" (ficha de producto, banner de coleccion, articulos...) tambien a 13 px; el hero de la home se mantiene */
.fs-heading-display-1:not(.scrolling-text-banner *),
.fs-heading-display-2:not(.scrolling-text-banner *),
.fs-heading-display-3:not(.scrolling-text-banner *) {
  font-size: 13px;
}
/* Hero de la home: titulo al mismo tamaño que "ULTIMOS DIAS" (28 px en PC, 20 px en movil) */
.scrolling-text-banner .fs-heading-display-1,
.scrolling-text-banner .fs-heading-display-2,
.scrolling-text-banner .fs-heading-display-3 {
  font-size: 28px;
}
@media (max-width: 719px) {
  .scrolling-text-banner .fs-heading-display-1,
  .scrolling-text-banner .fs-heading-display-2,
  .scrolling-text-banner .fs-heading-display-3 {
    font-size: 20px;
  }
}
/* Ficha de producto: el precio mas grande que el resto (20 px) para que destaque; "IVA incluido" se queda a 13 px */
.product__price [data-price],
.product__price [data-compare-price] {
  font-size: 20px;
}
.product__price .product__price-tax-note {
  margin-left: var(--spacing-1);
}

/* Pie: lista de tiendas con icono de tienda y boton de contacto justo debajo (sin linea ni hueco entre bloques) */
.footer__text ul { list-style: none; margin: var(--spacing-1) 0 0; padding: 0; }
.footer__text ul li { position: relative; margin: 0 0 var(--spacing-1); padding-left: 1.6em; }
.footer__text ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1em;
  width: 1.1em;
  height: 1.1em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7'/><path d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/><path d='M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4'/><path d='M2 7h20'/><path d='M22 7v3a2 2 0 0 1-2 2 2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12a2 2 0 0 1-2-2V7'/></svg>") no-repeat center / contain;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7'/><path d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/><path d='M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4'/><path d='M2 7h20'/><path d='M22 7v3a2 2 0 0 1-2 2 2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12a2 2 0 0 1-2-2V7'/></svg>") no-repeat center / contain;
}
.footer__group.footer__group--liquid { border: 0; }
.footer__group:has(+ .footer__group--liquid) { border-bottom: 0; padding-bottom: 0; }
.footer__group:has(+ .footer__group--liquid) .footer__group-content { padding-bottom: 0; }
.footer__group.footer__group--liquid .footer__group-content { padding-top: 0; }
.footer__liquid .nn-footer-contact { display: inline-flex; width: auto; margin-top: var(--spacing-1); }

/* Pagina de contacto: dos columnas en escritorio (formulario mas ancho + lista de tiendas); titulo e intro a todo el ancho */
@media (min-width: 960px) {
  .main:has(> [id$="__tiendas_lista"]) {
    display: grid;
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
    align-items: start;
    max-width: var(--max-width);
    margin-left: auto;
    margin-right: auto;
  }
  /* todas las secciones de la pagina comparten el mismo contenedor: el titulo y la intro quedan alineados con la caja */
  .main:has(> [id$="__tiendas_lista"]) > * .section-inner { max-width: none; }
  .main:has(> [id$="__tiendas_lista"]) > [id$="__main"],
  .main:has(> [id$="__tiendas_lista"]) > [id$="__intro"] {
    grid-column: 1 / -1;
  }
  .main:has(> [id$="__tiendas_lista"]) > [id$="__tiendas_lista"] .section-inner {
    padding-left: 0;
  }
}
/* Lista de tiendas de la pagina de contacto: icono de tienda como en el pie */
[id$="__tiendas_lista"] ul { list-style: none; margin: 0; padding: 0; }
[id$="__tiendas_lista"] ul li { position: relative; margin: 0 0 var(--spacing-4); padding-left: 1.8em; }
[id$="__tiendas_lista"] ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1.2em;
  height: 1.2em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7'/><path d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/><path d='M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4'/><path d='M2 7h20'/><path d='M22 7v3a2 2 0 0 1-2 2 2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12a2 2 0 0 1-2-2V7'/></svg>") no-repeat center / contain;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='m2 7 4.41-4.41A2 2 0 0 1 7.83 2h8.34a2 2 0 0 1 1.42.59L22 7'/><path d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/><path d='M15 22v-4a2 2 0 0 0-2-2h-2a2 2 0 0 0-2 2v4'/><path d='M2 7h20'/><path d='M22 7v3a2 2 0 0 1-2 2 2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 16 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 12 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 8 12a2.7 2.7 0 0 1-1.59-.63.7.7 0 0 0-.82 0A2.7 2.7 0 0 1 4 12a2 2 0 0 1-2-2V7'/></svg>") no-repeat center / contain;
}

/* Pagina de contacto: formulario dentro de una caja con borde (como las tarjetas) y columnas alineadas */
[id$="__1655846649e025202f"] .contact-form__inner {
  border: 1px solid var(--color-text);
  padding: var(--spacing-6);
  box-sizing: border-box;
}
@media (max-width: 719px) {
  [id$="__1655846649e025202f"] .contact-form__inner { padding: var(--spacing-4); }
}
@media (min-width: 960px) {
  .main:has(> [id$="__tiendas_lista"]) > [id$="__tiendas_lista"] .section-inner { padding-left: 0; }
  .main:has(> [id$="__tiendas_lista"]) > [id$="__tiendas_lista"] .rich-text__inner { margin-left: 0; }
}

/* Tarjetas de producto: etiqueta de rebaja solo texto ("Rebaja"), abajo a la izquierda de la foto */
.product-item .product-badges.product-badges--position-top {
  top: auto;
  bottom: var(--spacing-2);
}
.product-item .product-badges .product-badge {
  margin-bottom: 0;
}
.product-item .product-badges .product-badge--sale {
  background: var(--color-background);
  border: 0;
  padding: 0.35em 0.6em;
  color: var(--color-products-sale);
}

/* Pantallas pequeñas: las columnas de la cuadricula pueden encoger (minmax(0,1fr)); con 1fr a secas una tarjeta
   con contenido "inencogible" ensanchaba la columna y la segunda tarjeta se salia de la pantalla en moviles de 360-420 px */
.collection__products,
.search__products {
  grid-template-columns: repeat(var(--collection-columns-mobile), minmax(0, 1fr));
}
@media (min-width: 960px) {
  .collection__products,
  .search__products {
    grid-template-columns: repeat(var(--collection-columns-desktop), minmax(0, 1fr));
  }
}
.collection__products .product-item,
.search__products .product-item {
  min-width: 0;
}
.product-item .product-item__inner,
.product-item .product-item__media,
.product-item .product-item__meta {
  min-width: 0;
  max-width: 100%;
}

/* Ficha de producto: guia de tallas visible directamente bajo las tallas */
.product__size-guide { margin-top: var(--spacing-4); }
.product__size-guide-title { margin: 0 0 var(--spacing-2); }
.product__size-guide-content {
  box-sizing: border-box;
  max-width: 380px;
  padding: var(--spacing-3);
  border: 1px solid var(--color-text);
}
.product__size-guide-content p { margin: 0; }
.product__size-guide-content img { display: block; width: 100%; height: auto; cursor: zoom-in; }

/* Acordeones de la ficha: las imagenes de la pagina se amplian al pulsarlas */
.accordion__content img[data-popup-trigger] { cursor: zoom-in; }

/* Ficha: el contador de stock solo muestra el aviso de ultima unidad; sin aviso, el bloque no ocupa sitio */
.inventory-counter:has(.inventory-counter__message:empty) { display: none; }
.inventory-counter .inventory-counter__message { font-size: var(--font-size-body-100); color: var(--color-products-sale); }

/* Ficha: cinta "Si no te convence, te devolvemos el dinero." justo debajo del boton de compra */
.nn-product-marquee {
  overflow: hidden;
  margin-top: var(--spacing-3);
  border-top: 1px solid var(--color-text-alpha-20);
  border-bottom: 1px solid var(--color-text-alpha-20);
}

/* Cabecera: cinta en movimiento bajo el menu (fija junto con la cabecera) */
.nn-header-marquee {
  overflow: hidden;
  background: var(--color-background);
}
/* Cabecera fija en escritorio: el tema sube la cabecera para dejar solo la fila del menu; como la cinta va debajo
   del menu, compensamos su altura para que el menu no quede tapado por la barra de anuncios */
:root { --nn-marquee-height: 33px; }
.nn-header-marquee { height: var(--nn-marquee-height); box-sizing: border-box; }
@media (min-width: 960px) {
  html.sticky-header-enabled .shopify-section.header__outer-wrapper:has(.nn-header-marquee) {
    top: calc(var(--header-desktop-sticky-position, 0px) + var(--nn-marquee-height));
  }
  html.sticky-header-enabled[data-enable-sticky-announcement-bar*="desktop"] .shopify-section.header__outer-wrapper:has(.nn-header-marquee) {
    top: calc(var(--header-desktop-sticky-position, 0px) + var(--announcement-height) + var(--nn-marquee-height));
  }
}
/* La cinta de la cabecera a todo el ancho de la pantalla (la cabecera tiene margen lateral --space-outer) */
.nn-header-marquee {
  width: calc(100% + (var(--space-outer, 3.3vw) * 2));
  margin-left: calc(var(--space-outer, 3.3vw) * -1);
}
/* Carrito: la nota del pedido al final del resumen y la flecha del boton "Pagar" a la derecha */
.cart .cart__footer-inner { display: flex; flex-direction: column; }
.cart .cart__footer-inner > .cart__footer-order-note-wrapper { order: 20; margin-top: var(--spacing-4); }
.cart .cart__footer-inner > .nn-cart__notes { order: 10; }
.nn-cart__pay { width: 100%; }
.nn-cart__pay .icon { margin-left: auto; }

/* Carrito: codigo de descuento en el resumen */
.nn-cart__discount { margin: var(--spacing-3) 0 var(--spacing-4); }
.nn-cart__discount-label { display: block; margin-bottom: var(--spacing-2); }
.nn-cart__discount-row { display: flex; gap: var(--spacing-2); }
.nn-cart__discount-input { flex: 1 1 auto; min-width: 0; height: 44px; margin: 0; }
.nn-cart__discount-apply { flex: 0 0 auto; white-space: nowrap; height: 44px; }
.nn-cart__discount-message { margin: var(--spacing-2) 0 0; color: var(--color-products-sale); }
.nn-cart__discount-codes { list-style: none; margin: var(--spacing-2) 0 0; padding: 0; }
.nn-cart__discount-code { display: flex; justify-content: space-between; align-items: center; gap: var(--spacing-2); padding: var(--spacing-1) var(--spacing-2); background: var(--color-text-alpha-05); text-transform: uppercase; }
.nn-cart__discount-code--inapplicable { opacity: 0.6; text-transform: none; }
.nn-cart__discount-remove { display: inline-flex; padding: var(--spacing-1); }
.nn-cart__discount-remove .icon { width: 0.8em; height: 0.8em; }
.nn-cart__discount-remove { font-size: 1.1em; line-height: 1; }

/* Banner de coleccion: caja con fondo opaco para el titulo, el nº de productos y la descripcion (3 lineas + "Ver mas") */
.collection--has-image .nn-banner-box {
  box-sizing: border-box;
  max-width: 640px;
  padding: var(--spacing-6) var(--spacing-7);
  background: rgba(255, 255, 255, 0.86);
  color: #111;
  backdrop-filter: blur(2px);
}
.collection--has-image .nn-banner-box,
.collection--has-image .nn-banner-box * { color: #111; }
.nn-banner-box__head { display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--spacing-1) var(--spacing-4); }
.nn-banner-box__head > * { margin: 0; }
.nn-banner-box__count { opacity: 0.6; white-space: nowrap; }
.nn-banner-box__desc { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.nn-banner-box__desc.is-open { display: block; -webkit-line-clamp: unset; }
.nn-banner-box__desc p { margin: 0 0 var(--spacing-1); }
.nn-banner-box__more { margin: var(--spacing-2) 0 0; padding: 0; text-transform: uppercase; letter-spacing: 0.05em; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 719px) {
  .collection--has-image .nn-banner-box { max-width: none; padding: var(--spacing-4); }
}
/* Banner de coleccion: las migas de pan van debajo del banner (no sobre la foto) */
.nn-banner-crumbs { padding: var(--spacing-5) var(--space-outer, 3.3vw) 0; }
.nn-banner-crumbs .collection-banner__breadcrumbs { position: static; margin: 0; }

/* Hero de la home: sin cinta de textos (ahora va en la barra negra de anuncios de arriba) */
.scrolling-text-banner .scrolling-text-banner__scrolling-content-wrapper { display: none !important; }

/* Barra de anuncios (fondo negro) como cinta en movimiento */
.nn-announcement-marquee__viewport { overflow: hidden; color: var(--color-text); }
.nn-announcement-marquee__viewport .scrolling-content__text { color: inherit; white-space: nowrap; }
.nn-announcement-marquee__viewport a { color: inherit; text-decoration: none; }
