@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");

.carousel .carousel-inner {
  height: auto;
}

/* Color base de marca para reemplazar el azul de Classic (#24b9d7) */
:root {
  --brand-primary: #1a4620;
  --brand-primary-dark: #123318;
  --brand-primary-rgb: 26, 70, 32;
  --font-family-base: "Roboto", sans-serif;
  --page-bg: #f6f6f6;
  --surface-bg: #f6f6f6;
  --card-bg: #fff;
  --footer-bg: #dce8dd;
  --footer-border: #b5ccb7;
}

html,
body {
  font-family: var(--font-family-base) !important;
  background-color: var(--page-bg) !important;
}

#wrapper {
  background-color: var(--page-bg) !important;
}

#header {
  background-color: #fff !important;
}

button,
input,
select,
textarea,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family-base) !important;
}

.material-icons {
  font-family: "Material Icons" !important;
}

/* Header: enlaces de navegación */
#header .header-nav a,
#header .top-menu a,
#header .header-top a,
#header .menu a {
  font-weight: 500 !important;
}

/* Enlaces y texto primario */
a,
.btn-link,
.page-link,
.text-primary,
.product-price,
.pagination .current a,
.tabs .nav-tabs .nav-link.active,
.product-miniature .highlighted-informations .quick-view:hover {
  color: var(--brand-primary) !important;
}

a:hover,
a:focus,
.page-link:hover,
.page-link:focus {
  color: var(--brand-primary-dark) !important;
}

a:focus,
a:focus-visible,
a:active {
  outline: none !important;
  box-shadow: none !important;
}

/* Ficha producto: línea activa de pestañas (Detalles del producto) */
.tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
  border-bottom: 3px solid var(--brand-primary) !important;
}

/* Botones y estados activos */
.btn-primary,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.ajax_add_to_cart_button,
#add_to_cart .btn-primary,
.dropdown-item.active,
.dropdown-item.active:focus,
.dropdown-item.active:hover,
.nav-pills .nav-link.active,
.nav-pills .nav-link.active:focus,
.nav-pills .nav-link.active:hover,
.page-item.active .page-link,
.page-item.active .page-link:focus,
.page-item.active .page-link:hover,
.list-group-item.active,
.list-group-item.active:focus,
.list-group-item.active:hover,
.tag-primary,
.card-primary,
.bg-primary,
.brands-sort .select-list:hover,
.products-sort-order .select-list:hover,
.suppliers-sort .select-list:hover,
.facet-dropdown .select-list:hover,
.group-span-filestyle .btn-default {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  color: #fff !important;
}

.btn-primary:hover,
.ajax_add_to_cart_button:hover,
.tag-primary[href]:hover,
a.bg-primary:hover {
  background-color: var(--brand-primary-dark) !important;
  border-color: var(--brand-primary-dark) !important;
  color: #fff !important;
}

/* Variante outline */
.btn-outline-primary,
.card-outline-primary {
  color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
  background-color: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary.active,
.open > .btn-outline-primary.dropdown-toggle {
  color: #fff !important;
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* Header / carrito */
#header .header-nav .blockcart.cart-preview.active {
  background-color: var(--brand-primary) !important;
}

#header .header-nav .blockcart.cart-preview.active a,
#header .header-nav .blockcart.cart-preview.active a:hover,
#header .header-nav .blockcart.cart-preview.active a:focus,
#header .header-nav .blockcart.cart-preview.active i,
#header .header-nav .blockcart.cart-preview.active .cart-products-count {
  color: #fff !important;
}

#header .header-nav .blockcart:not(.active) a:hover {
  color: var(--brand-primary) !important;
}

/* Selectores idioma/moneda y orden por precio */
.dropdown:hover .expand-more,
#header .header-nav .language-selector .dropdown:hover .expand-more,
#header .header-nav .currency-selector .dropdown:hover .expand-more {
  color: var(--brand-primary) !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
  color: var(--brand-primary) !important;
  background: none !important;
}

.brands-sort .select-list:hover,
.products-sort-order .select-list:hover,
.suppliers-sort .select-list:hover,
.facet-dropdown .select-list:hover {
  color: #fff !important;
  background: var(--brand-primary) !important;
  background-color: var(--brand-primary) !important;
}

/* Formularios */
.form-control:focus,
.custom-select:focus,
.input-group.focus,
.search-widget form input[type="text"]:focus {
  border-color: var(--brand-primary) !important;
  outline-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(var(--brand-primary-rgb), 0.25) !important;
}

/* Checks y radios */
.custom-checkbox input[type="checkbox"]:checked + span,
.custom-radio input[type="radio"]:checked + span {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* Etiquetas (flags/badges) y bordes de estados activos */
.product-flags li.product-flag,
body#checkout section.checkout-step .address-item.selected,
.facet-dropdown.open > .select-title,
#subcategories ul li:hover .subcategory-image a,
#product-modal .modal-content .modal-body .product-images img:hover,
.product-images > li.thumb-container .thumb.selected,
.product-images > li.thumb-container .thumb:hover {
  background-color: var(--brand-primary) !important;
  border-color: var(--brand-primary) !important;
}

/* Home custom: menú categorías a la izquierda y productos a la derecha */
#index .home-products-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
}

#index .home-products-layout__sidebar .block-categories {
  margin-bottom: 0;
}

/* Ocultar título raíz "INICIO" del módulo ps_categorytree */
#index .home-products-layout__sidebar .block-categories .category-top-menu > li:first-child,
#left-column .block-categories .category-top-menu > li:first-child {
  display: none;
}

#index .home-products-layout__sidebar .block-categories .category-top-menu .category-sub-menu,
#left-column .block-categories .category-top-menu .category-sub-menu {
  margin-top: 0;
}

/* Árbol categorías: tipografía, espacio al "+" y hover iconos */
#index .home-products-layout__sidebar .block-categories .category-sub-menu > li[data-depth="0"],
#left-column .block-categories .category-sub-menu > li[data-depth="0"] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 14px;
  column-gap: 0.25rem;
  align-items: start;
  margin-bottom: 0.5rem;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="0"] > a,
#left-column .block-categories .category-sub-menu li[data-depth="0"] > a {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  display: block;
  padding-right: 0;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35;
  margin-top: 0.375rem;
  margin-bottom: 0.375rem;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="0"] > .collapse,
#left-column .block-categories .category-sub-menu li[data-depth="0"] > .collapse {
  grid-column: 1 / -1;
  grid-row: 2;
  width: 100%;
  transition: none !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="0"] > .collapse > .category-sub-menu,
#left-column .block-categories .category-sub-menu li[data-depth="0"] > .collapse > .category-sub-menu {
  margin-top: 0 !important;
  padding-left: 0 !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu .category-sub-link,
#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="1"] > a,
#left-column .block-categories .category-sub-menu .category-sub-link,
#left-column .block-categories .category-sub-menu li[data-depth="1"] > a,
#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="0"] > .collapse li:not([data-depth="0"]) > a,
#left-column .block-categories .category-sub-menu li[data-depth="0"] > .collapse li:not([data-depth="0"]) > a {
  font-size: 14px !important;
  font-weight: 300 !important;
  padding-left: 0 !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu li:not([data-depth="0"]),
#left-column .block-categories .category-sub-menu li:not([data-depth="0"]) {
  padding-left: 0 !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu a,
#left-column .block-categories .category-sub-menu a {
  color: var(--brand-primary) !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu a:hover,
#index .home-products-layout__sidebar .block-categories .category-sub-menu a:focus,
#left-column .block-categories .category-sub-menu a:hover,
#left-column .block-categories .category-sub-menu a:focus {
  color: var(--brand-primary-dark) !important;
}

#index .home-products-layout__sidebar .block-categories .category-sub-menu li[data-depth="0"] > .collapse-icons,
#left-column .block-categories .category-sub-menu li[data-depth="0"] > .collapse-icons {
  position: static;
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  margin-top: 0.375rem;
  padding: 0;
  width: 14px;
  height: calc(14px * 1.35);
  display: flex;
  align-items: center;
  justify-content: center;
}

#index .home-products-layout__sidebar .block-categories .collapse-icons .add,
#index .home-products-layout__sidebar .block-categories .collapse-icons .remove,
#left-column .block-categories .collapse-icons .add,
#left-column .block-categories .collapse-icons .remove {
  font-size: 14px;
  width: 14px;
  height: 14px;
  line-height: 1;
}

/* Solo un icono visible según estado abierto/cerrado */
#index .home-products-layout__sidebar .block-categories .collapse-icons .remove,
#index .home-products-layout__sidebar .block-categories .collapse-icons[aria-expanded="true"] .add,
#left-column .block-categories .collapse-icons .remove,
#left-column .block-categories .collapse-icons[aria-expanded="true"] .add {
  display: none !important;
}

#index .home-products-layout__sidebar .block-categories .collapse-icons[aria-expanded="true"] .remove,
#left-column .block-categories .collapse-icons[aria-expanded="true"] .remove {
  display: block !important;
}

#index .home-products-layout__sidebar .block-categories .collapse-icons .add,
#index .home-products-layout__sidebar .block-categories .collapse-icons .remove,
#index .home-products-layout__sidebar .block-categories .arrows .arrow-down,
#index .home-products-layout__sidebar .block-categories .arrows .arrow-right,
#left-column .block-categories .collapse-icons .add,
#left-column .block-categories .collapse-icons .remove,
#left-column .block-categories .arrows .arrow-down,
#left-column .block-categories .arrows .arrow-right {
  color: var(--brand-primary) !important;
}

#index .home-products-layout__sidebar .block-categories .collapse-icons .add:hover,
#index .home-products-layout__sidebar .block-categories .collapse-icons .remove:hover,
#index .home-products-layout__sidebar .block-categories .arrows .arrow-down:hover,
#index .home-products-layout__sidebar .block-categories .arrows .arrow-right:hover,
#left-column .block-categories .collapse-icons .add:hover,
#left-column .block-categories .collapse-icons .remove:hover,
#left-column .block-categories .arrows .arrow-down:hover,
#left-column .block-categories .arrows .arrow-right:hover {
  color: var(--brand-primary-dark) !important;
}

#index .home-products-layout__content .new-products,
#index .home-products-layout__content .featured-products {
  margin-top: 0 !important;
}

/* Fondos: página en gris claro, cards y menú lateral en blanco, NL en gris */
#index .home-products-layout__content,
#content-wrapper {
  background-color: var(--surface-bg) !important;
}

#index .home-products-layout__sidebar .block-categories,
#left-column .block-categories {
  background-color: var(--card-bg) !important;
}

#left-column #search_filters,
#left-column #search_filters_brands,
#left-column #search_filters_suppliers,
#left-column .block_newsletter {
  background-color: var(--surface-bg) !important;
}

.product-miniature .thumbnail-container,
.product-miniature .product-description,
.product-miniature .variant-links {
  background-color: var(--card-bg) !important;
}

#products .pagination .page-list {
  background-color: var(--surface-bg) !important;
}

@media (max-width: 991.98px) {
  #index .home-products-layout {
    grid-template-columns: 1fr;
  }
}

.home-products-layout {

    @media screen and (min-width: 992px) {
        margin-top: 3em;
    }
}

/* Home: ocultar el título del listado de productos ("Novedades") */
#index .products-section-title {
  display: none;
}

.container {

    @media screen and (min-width: 992px) {
        width: 100%;  
        max-width: 90%;
    }

    @media screen and (min-width: 1500px) {
        max-width: 1300px;
    }
}

/* Listado categoría: grid Bootstrap 3 cols — sin gap (rompe el ancho) */
#js-product-list .products,
#products .products {
  justify-content: flex-start !important;
  gap: 0 !important;
  margin-left: -0.25rem !important;
  margin-right: -0.25rem !important;
}

#js-product-list .products > .product,
#products .products > .product {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Home/accesorios: flex sin clases col — gap + anchos explícitos */
.new-products .products,
.product-accessories .products {
  justify-content: flex-start !important;
  gap: 0.5rem;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.new-products .products > .product,
.product-accessories .products > .product {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

.products > .product .product-miniature,
.product-miniature {
  width: 100% !important;
  max-width: 100% !important;
  justify-content: flex-start !important;
}

.product-miniature .thumbnail-container {
  width: 100%;
  margin-bottom: 0.875rem !important;
}

.product-miniature .product-description {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (min-width: 1200px) {
  .new-products .products > .product,
  .product-accessories .products > .product {
    flex: 0 0 calc(33.333% - 0.334rem);
    max-width: calc(33.333% - 0.334rem);
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .new-products .products > .product,
  .product-accessories .products > .product {
    flex: 0 0 calc(50% - 0.25rem);
    max-width: calc(50% - 0.25rem);
  }
}

/* Cabecera categoría: solo título visible, sin fondo */
.block-category.card.card-block {
  background: none !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  min-height: 0 !important;
  margin-bottom: 1rem;
  padding: 0 !important;
}

.block-category.card.card-block .block-category-inner {
  display: none !important;
}

.block-category.card.card-block > .h1 {
  margin-bottom: 0;
}

/* Logos debajo del menú lateral de categorías */
.sidebar-logos {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.25rem;
  background-color: white;
  margin-top: 1.5rem;
}

.sidebar-logos img {
  display: block;
  max-width: 200px;
  width: auto;
  height: auto;
}

#header .logo {
    max-width: 360px;
}

@media (max-width: 575.98px) {
  #header .top-logo img {
    max-height: 3rem !important;
  }
}

/* Ficha producto: ocultar selector de cantidad y aviso de últimas unidades */
#product .product-add-to-cart .control-label,
#product .product-add-to-cart .product-quantity .qty {
  display: none !important;
}

#product #product-availability .alert-warning {
  display: none !important;
}

.alert-danger {
  display: none!important;
}

.new-products h2 {
  margin-bottom: 1rem;
}

.block_newsletter {
  background-color: transparent !important;
}

#footer .block_newsletter p {
  padding-top: .25rem!important;
}

/* Acercar la etiqueta "Boletín de noticias" al campo del formulario (por defecto usa col-md-5, dejando mucho hueco).
   La rejilla de este tema usa columnas flotantes (float:left + width en %), no flexbox, así que se ajusta
   reduciendo el ancho en el mismo sistema en vez de con flex. */
@media (min-width: 768px) {
  #footer #block-newsletter-label {
    width: 30%;
  }

  #footer .block_newsletter .row > .col-md-7 {
    width: 70%;
  }
}

/* Modal añadir al carrito: fondo claro y textos legibles */
#blockcart-modal {
  color: #232323 !important;
}

#blockcart-modal .modal-content,
#blockcart-modal .modal-header,
#blockcart-modal .modal-body {
  background-color: #fff !important;
}

#blockcart-modal .modal-title {
  color: #353943 !important;
}

#blockcart-modal .modal-title i.material-icons {
  color: #4cbb6c !important;
}

#blockcart-modal .close .material-icons {
  color: #363a42 !important;
}

#blockcart-modal .product-name {
  color: var(--brand-primary) !important;
}

#blockcart-modal .product-price,
#blockcart-modal .product-quantity,
#blockcart-modal .divide-right span,
#blockcart-modal .cart-content p,
#blockcart-modal .cart-content .label,
#blockcart-modal .cart-content .value,
#blockcart-modal .cart-content .subtotal,
#blockcart-modal .cart-content .shipping {
  color: #232323 !important;
}

#blockcart-modal .cart-content p.cart-products-count {
  background-color: transparent !important;
  color: #232323 !important;
}

#blockcart-modal .cart-content p.product-total {
  background-color: var(--surface-bg) !important;
}

#blockcart-modal .cart-content-btn .btn-primary,
#blockcart-modal .cart-content-btn .btn-primary:hover,
#blockcart-modal .cart-content-btn .btn-primary:focus,
#blockcart-modal .cart-content-btn .btn-primary:active {
  color: #fff !important;
}

/* Footer: separación visual respecto al contenido principal */
#footer {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  padding-bottom: 1.5rem;
  background-color: var(--footer-bg) !important;
  border-top: 1px solid var(--footer-border);
}

#footer .footer-container {
  background-color: transparent !important;
  box-shadow: none !important;
}

#footer,
#footer a,
#footer p,
#footer li,
#footer .h3,
#footer .h4,
#footer .block-contact,
#footer .block-contact-title,
#footer .blockcms-title,
#footer .blockcms-title a,
#footer .myaccount-title,
#footer .myaccount-title a,
#footer .links .title,
#footer .links .title .h3 {
  color: #1B1B1B !important;
}

#footer a:hover,
#footer a:focus {
  color: #000 !important;
}

/* Footer INFORMACIÓN: mismos estilos de texto y ritmo que el resto de columnas */
#footer .block-contact .hidden-sm-down {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: calc(1.25em + 0.3125rem);
}

#footer .block-contact .hidden-sm-down a {
  font-size: 0.875rem;
  font-weight: 400;
}

#footer .block-contact .block-contact-title {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25em;
  margin-bottom: 1rem;
}

/* Medios de pago aceptados: inyectado por JS junto al copyright del footer (assets/js/custom.js) */
.payment-icons {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}

.payment-icons img {
  max-width: 320px;
  width: 100%;
  height: auto;
}

/* Footer: "Contáctenos" siempre primero en el bloque de enlaces (el módulo pone las páginas CMS antes que las estáticas y no es configurable) */
#footer ul:has(> li > a[id^="link-static-page-contact-"]) {
  display: flex;
  flex-direction: column;
}

#footer li:has(> a[id^="link-static-page-contact-"]) {
  order: -1;
}

/* Footer: primera columna (categorías) en mayúsculas */
#footer .links > .row > .wrapper:first-child,
#footer .links > .row > .wrapper:first-child a {
  text-transform: uppercase;
}



/* Switcher vista lista/cuadrícula del listado de productos */
.sort-by-row .sort-by {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.view-mode-switch {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  margin-left: 0.5rem;
}

.view-mode-switch .view-mode-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 2px;
  color: #7a7a7a;
  cursor: pointer;
}

.view-mode-switch .view-mode-btn .material-icons {
  font-size: 20px;
}

.view-mode-switch .view-mode-btn.active {
  border-color: var(--brand-primary);
  color: var(--brand-primary);
}

/* Modo lista: cada producto ocupa toda la fila, imagen a la izquierda */
#js-product-list.list-mode .products > .product {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

#js-product-list.list-mode .product-miniature .thumbnail-container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 1rem;
}

#js-product-list.list-mode .product-miniature .thumbnail-top {
  flex: 0 0 180px;
  width: 180px;
}

#js-product-list.list-mode .product-miniature .thumbnail-top img {
  width: 100%;
  height: auto;
}

#js-product-list.list-mode .product-miniature .product-description {
  display: block !important;
  flex: 1 1 auto;
  align-self: flex-start;
  padding-top: 0.5rem;
  text-align: left !important;
}

#js-product-list.list-mode .product-miniature .product-description .product-title,
#js-product-list.list-mode .product-miniature .product-description .product-price-and-shipping,
#js-product-list.list-mode .product-miniature .product-description .price {
  text-align: left !important;
  justify-content: flex-start !important;
}

/* Descripción corta: solo visible en modo lista */
.product-miniature .product-description-short {
  display: none;
}

#js-product-list.list-mode .product-miniature .product-description-short {
  display: block;
  margin-top: 0.5rem;
  color: #7a7a7a;
  font-size: 0.9rem;
  text-align: left;
}

/* Productos sin stock (denegado el pedido): ocultar el botón deshabilitado de "Añadir al carrito" */
.product-add-to-cart .add-to-cart[disabled] {
  display: none;
}

/* Vista rápida: ocultar el selector de cantidad, solo se compra 1 unidad */
#product-modal .product-add-to-cart > .control-label,
#product-modal .product-add-to-cart .qty {
  display: none;
}

#js-product-list.list-mode .product-miniature .wishlist-button-add {
  display: none;
}

#product-availability .alert-content-wrapper {
  align-items: center;
}

#_desktop_contact_link {
  display: none!important;
}

.product-information .product-description {
  padding: .75rem;
  background-color: white;
}

.product-information .product-description p {
  margin: 0!important;
}

/* Vista rápida: ocultar el selector de cantidad (solo en el modal de
   quickview; la ficha de producto normal conserva el selector). El input
   sigue en el formulario aunque esté oculto, así que el "Añadir al
   carrito" sigue funcionando y añade la cantidad mínima/por defecto. */
.quickview .product-add-to-cart .control-label,
.quickview .product-add-to-cart .product-quantity .qty {
  display: none !important;
}

/* Carrito: ocultar selector de cantidad, solo se compra 1 unidad por línea */
.cart-grid-body .product-line-grid-right .qty,
.cart-grid-body .js-cart-line-product-quantity {
  display: none !important;
}

/* Mantener el nombre del producto tal cual está guardado, tanto en el
   listado (el tema base lo capitaliza vía .product-title) como en la
   ficha de producto (el tema base pone todo en mayúsculas vía .h1). */
.product-title,
.js-product-container h1.h1,
.quickview h1.h1 {
  text-transform: none !important;
}

/* Mapa del sitio: el tema base pone el título en mayúscula inicial vía
   .sitemap-title (text-transform: capitalize); se deja tal cual está la
   traducción ("Mapa del sitio"), igual que en el breadcrumb. */
.sitemap-title {
  text-transform: none !important;
}

.product-flags li.product-flag.out_of_stock {
  background-color: #973c49 !important;
  color: #fff !important;
  border-color: #973c49 !important;
}

/* Ficha producto y vista rápida: marco blanco en la imagen */
#product-modal .js-modal-product-cover,
#product-modal .product-cover-modal,
.quickview .js-qv-product-cover,
.quickview .product-cover img {
  border: 3px solid #fff;
  background-color: #fff;
  box-sizing: border-box;
}

/* Modal de imagen: línea blanca y más espacio entre referencia y descripción */
#product-modal .image-caption .product-title {
  margin-bottom: 0;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #fff;
}

/* Vista rápida (quickview): mismo esquema de color que la ficha de producto
   (fondo de página gris, bloque de descripción en blanco) */
.quickview .modal-content {
  background-color: var(--page-bg) !important;
}

.quickview #product-description-short {
  background-color: var(--card-bg) !important;
  padding: .75rem;
  margin-bottom: 1rem;
}

#product-modal .image-caption .product-title + * {
  margin-top: 0.5rem;
}

#content.page-cms-7 > h1:first-child {
  display: none;
}

.cart-item .product-line-grid-body .product-price {
  display: none;
}


.quickview #product-description-short > :last-child {
  margin-bottom: 0 !important;
}