/**
 * ============================================
 * COMERCIAL AV - Modern Custom Theme CSS 2026
 * ============================================
 * Optimized and unified stylesheet for PrestaShop
 * Using modern CSS features and best practices
 */

/* ==========================================
   CSS CUSTOM PROPERTIES (VARIABLES)
   ========================================== */
:root {
  /* Color Palette - Blue Theme */
  --color-primary: #1e3a76;
  --color-secondary: #4b7bec;
  --color-accent: #6ab9f0;
  --color-light: #a1daf7;
  --color-lightest: #f5f9ff;

  /* Legacy Colors (for gradual migration) */
  --color-brand: #6896cd;
  --color-brand-dark: #2a4b84;
  --color-dark: #232f3e;
  --color-medium: #3b4650;
  --color-gray: #93979c;
  --color-gray-light: #949494;
  --color-gray-lighter: #d2d0d0;
  --color-gray-lightest: #ececec;
  --color-border: #e6e6e6;
  --color-white: #ffffff;
  --color-black: #000000;

  /* Semantic Colors */
  --color-success: #28a745;
  --color-warning: #ffc107;
  --color-danger: #dc3545;
  --color-info: #17a2b8;

  /* Pastel badges (stock, low stock, etc.) — sin borde */
  --color-success-pastel: #e6f4ea;
  --color-success-pastel-text: #287447;
  --color-warning-pastel: #fff8e1;
  --color-warning-pastel-text: #7d6b24;
  --color-brand-pastel: #e8f4fd;
  --color-brand-pastel-text: var(--color-brand-dark);

  /* Special Colors */
  --color-sale: #ff4c4c;
  --color-new: #ff0800;
  --color-online: var(--color-brand);

  /* Typography */
  --font-primary: 'LemonMilk', 'Roboto', 'Open Sans', sans-serif;
  --font-size-base: clamp(12px, 1vw, 12px);
  --font-size-small: clamp(11px, 0.9vw, 11px);
  --font-size-large: clamp(16px, 1.2vw, 16px);
  --font-size-xlarge: clamp(20px, 1.5vw, 20px);
  --line-height-base: 1.5;

  /* Spacing */
  --spacing-xs: clamp(5px, 0.5vw, 8px);
  --spacing-sm: clamp(10px, 1vw, 15px);
  --spacing-md: clamp(15px, 1.5vw, 20px);
  --spacing-lg: clamp(20px, 2vw, 30px);
  --spacing-xl: clamp(30px, 3vw, 50px);

  /* Layout */
  --container-width: min(1220px, 100% - 2rem);
  --border-radius: 8px;
  --border-radius-sm: 4px;
  --border-radius-lg: 12px;

  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.12);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.2);

  /* Transitions */
  --transition-fast: 150ms ease-in-out;
  --transition-base: 300ms ease-in-out;
  --transition-slow: 500ms ease-in-out;

  /* Z-index */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
}

/* ==========================================
   PRODUCT ADD TO CART (INSTANT LIST CART)
   ========================================== */

#product .product-add-to-cart .row {
  align-items: center;
  gap: var(--spacing-sm);
}

#product .product-quantity.normal-style .row {
  display: flex;
  flex-wrap: nowrap;
}

#product .product-quantity.normal-style .row .col-3 {
  flex: 0 0 auto;
  width: auto;
  padding-right: var(--spacing-sm);
}

#product .product-quantity.normal-style .row .col-9 {
  flex: 1 1 auto;
}

#product .product-add-to-cart label.form-control-label {
  font-weight: 600;
  color: var(--color-dark);
  margin-bottom: 0;
  display: flex;
  align-items: center;
  min-height: 44px;
}

#product .product-add-to-cart .col-9 {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
  flex-wrap: nowrap;
  flex: 1 1 auto;
  min-width: 0;
}

#product .product-quantity-touchspin {
  display: flex;
  align-items: center;
}

#product .product-quantity-touchspin .input-group.bootstrap-touchspin {
  display: inline-flex;
  align-items: stretch;
  border: 1px solid #d7dce5;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  background-color: var(--color-white);
  min-height: 44px;
  min-width: 150px;
  transition: border-color var(--transition-base), box-shadow var(--transition-base);
}

#product .product-quantity-touchspin .input-group.bootstrap-touchspin:focus-within {
  border-color: var(--color-secondary);
  box-shadow: 0 0 0 2px rgba(75, 123, 236, 0.15);
}

#product .product-quantity-touchspin .input-group.bootstrap-touchspin>span {
  display: flex;
  align-items: center;
}

#product .product-quantity-touchspin .btn-touchspin {
  background-color: transparent;
  border: 0;
  width: 42px;
  height: 100%;
  color: var(--color-dark);
  font-weight: 600;
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

#product .product-quantity-touchspin .btn-touchspin:hover,
#product .product-quantity-touchspin .btn-touchspin:focus {
  background-color: rgba(0, 0, 0, 0.04);
  color: var(--color-dark);
}

#product .product-quantity-touchspin .btn-touchspin i {
  font-size: 16px;
  margin: 0;
}

#product .product-quantity-touchspin input[type='number'] {
  border: 0;
  box-shadow: none;
  text-align: center;
  font-weight: 600;
  font-size: 15px;
  color: var(--color-dark);
  padding: 0 12px;
  height: 44px;
  line-height: 44px;
}

#product .product-quantity-touchspin input[type='number']:focus {
  outline: none;
  box-shadow: none;
}

#product .product-add-to-cart .add {
  display: flex;
  align-items: center;
}

#product .product-add-to-cart .add .btn.add-to-cart {
  background-color: var(--color-secondary) !important;
  border-color: var(--color-secondary) !important;
  color: var(--color-white) !important;
  font-weight: 600;
  padding: 0.75rem 1.75rem;
  border-radius: 0.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 46px;
  white-space: nowrap;
  box-shadow: 0 6px 16px rgba(75, 123, 236, 0.35);
  transition: transform var(--transition-base), box-shadow var(--transition-base), background-color var(--transition-base);
}

#product .product-add-to-cart .add .btn.add-to-cart:hover {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(30, 58, 118, 0.35);
}

#product .product-add-to-cart .add .btn.add-to-cart:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(30, 58, 118, 0.3);
}

#product .product-add-to-cart .add .btn.add-to-cart i {
  font-size: 18px;
}

/* Reserve Button Styles - Product Page */
#product .product-add-to-cart .add .btn.btn-reserve {
  background-color: var(--color-info) !important;
  border-color: var(--color-info) !important;
  color: var(--color-white) !important;
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  border-radius: 8px;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 12px rgba(23, 162, 184, 0.3);
  cursor: pointer;
}

#product .product-add-to-cart .add .btn.btn-reserve:hover {
  background-color: #138496 !important;
  border-color: #138496 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(23, 162, 184, 0.4);
}

#product .product-add-to-cart .add .btn.btn-reserve:active {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(23, 162, 184, 0.3);
}

#product .product-add-to-cart .add .btn.btn-reserve i {
  font-size: 18px;
}

#product .product-add-to-cart .add .btn.btn-reserve.loading {
  opacity: 0.7;
  pointer-events: none;
}

/* Reservable product availability message */
.product-availability.product-reservable {
  background-color: var(--color-info) !important;
  border-color: var(--color-info) !important;
  color: var(--color-white) !important;
}

.product-availability.product-reservable i {
  color: var(--color-white) !important;
}

/* Reserve feedback message */
.js-reserve-feedback {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 4px;
  font-size: 14px;
}

#sticky-product-block .product-last-items {
  display: none;
}

@media (max-width: 991.98px) {
  #product .product-add-to-cart .col-9 {
    gap: var(--spacing-sm);
  }

  #product .product-quantity-touchspin .input-group.bootstrap-touchspin {
    min-width: 0;
  }

  #product .product-add-to-cart .add .btn.add-to-cart {
    padding-inline: 1.25rem;
  }
}

/* Dark Mode Support (Future) */
@media (prefers-color-scheme: dark) {
  :root {
    --color-background: #1a1a1a;
    --color-text: #f5f5f5;
  }
}

/* ==========================================
   FONT FACE DECLARATIONS
   ========================================== */
@font-face {
  font-family: 'LemonMilk';
  src: url('../fonts/lemon-milk/LEMONMILKProFTR-UltraLight.woff2') format('woff2');
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: 'LemonMilk';
  src: url('../fonts/lemon-milk/LEMONMILKProFTR-Light.woff2') format('woff2');
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'LemonMilk';
  src: url('../fonts/lemon-milk/LEMONMILKProFTR-Regular.woff2') format('woff2');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'LemonMilk';
  src: url('../fonts/lemon-milk/LEMONMILKProFTR-Medium.woff2') format('woff2');
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: 'LemonMilk';
  src: url('../fonts/lemon-milk/LEMONMILKProFTR-Medium.woff2') format('woff2');
  font-weight: 700;
  font-display: swap;
}

/* ==========================================
   BASE & RESET
   ========================================== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  margin: 0;
  font-family: var(--font-primary);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--color-dark);
  background: var(--color-gray-lightest) url('/img/pattern8.png');
  background-attachment: fixed;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.title-block,
.view-all-link,
.product-name,
.card {
  font-family: var(--font-primary);
}

strong {
  color: var(--color-gray-light);
  font-weight: 600;
}

a {
  color: var(--color-dark);
  text-decoration: none;
  transition: all var(--transition-base);
  position: relative;
}

a:hover {
  color: var(--color-brand);
  text-decoration: none;
}

a:focus {
  color: var(--color-brand-dark);
  outline: none;
  text-decoration: none;
}

a:active {
  color: var(--color-brand-dark);
  transform: translateY(1px);
}

/* Enlaces con subrayado animado */
a.underline-hover {
  background-image: linear-gradient(to right,
      var(--color-brand),
      var(--color-brand) 50%,
      var(--color-dark) 50%);
  background-size: 200% 100%;
  background-position: -100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: all var(--transition-base);
}

a.underline-hover:before {
  content: '';
  background: var(--color-brand);
  display: block;
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 0;
  height: 2px;
  transition: all var(--transition-base);
}

a.underline-hover:hover {
  background-position: 0%;
}

a.underline-hover:hover::before {
  width: 100%;
}

/* Enlaces con icono */
a.icon-link {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xs);
}

a.icon-link i,
a.icon-link svg {
  transition: transform var(--transition-base);
}

a.icon-link:hover i,
a.icon-link:hover svg {
  transform: translateX(4px);
}

/* ==========================================
   LAYOUT COMPONENTS
   ========================================== */

/* Bootstrap Grid System - Float Fix */
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12 {
  float: left;
  position: relative;
  min-height: 1px;
}

/* Column widths */
.col-1 {
  width: 8.33333333%;
}

.col-2 {
  width: 16.66666667%;
}

.col-3 {
  width: 25%;
}

.col-4 {
  width: 33.33333333%;
}

.col-5 {
  width: 41.66666667%;
}

.col-6 {
  width: 50%;
}

.col-7 {
  width: 58.33333333%;
}

.col-8 {
  width: 66.66666667%;
}

.col-9 {
  width: 75%;
}

.col-10 {
  width: 83.33333333%;
}

.col-11 {
  width: 91.66666667%;
}

.col-12 {
  width: 100%;
}

@media (min-width: 576px) {
  .col-sm-1 {
    width: 8.33333333%;
  }

  .col-sm-2 {
    width: 16.66666667%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-4 {
    width: 33.33333333%;
  }

  .col-sm-5 {
    width: 41.66666667%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-7 {
    width: 58.33333333%;
  }

  .col-sm-8 {
    width: 66.66666667%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-10 {
    width: 83.33333333%;
  }

  .col-sm-11 {
    width: 91.66666667%;
  }

  .col-sm-12 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .col-md-1 {
    width: 8.33333333%;
  }

  .col-md-2 {
    width: 16.66666667%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-4 {
    width: 33.33333333%;
  }

  .col-md-5 {
    width: 41.66666667%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-7 {
    width: 58.33333333%;
  }

  .col-md-8 {
    width: 66.66666667%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-10 {
    width: 83.33333333%;
  }

  .col-md-11 {
    width: 91.66666667%;
  }

  .col-md-12 {
    width: 100%;
  }
}

@media (min-width: 992px) {
  .col-lg-1 {
    width: 8.33333333%;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-4 {
    width: 33.33333333%;
  }

  .col-lg-5 {
    width: 41.66666667%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-7 {
    width: 58.33333333%;
  }

  .col-lg-8 {
    width: 66.66666667%;
  }

  .col-lg-9 {
    width: 75%;
  }

  .col-lg-10 {
    width: 83.33333333%;
  }

  .col-lg-11 {
    width: 91.66666667%;
  }

  .col-lg-12 {
    width: 100%;
  }
}

@media (min-width: 1200px) {
  .col-xl-1 {
    width: 8.33333333%;
  }

  .col-xl-2 {
    width: 16.66666667%;
  }

  .col-xl-3 {
    width: 25%;
  }

  .col-xl-4 {
    width: 33.33333333%;
  }

  .col-xl-5 {
    width: 41.66666667%;
  }

  .col-xl-6 {
    width: 50%;
  }

  .col-xl-7 {
    width: 58.33333333%;
  }

  .col-xl-8 {
    width: 66.66666667%;
  }

  .col-xl-9 {
    width: 75%;
  }

  .col-xl-10 {
    width: 83.33333333%;
  }

  .col-xl-11 {
    width: 91.66666667%;
  }

  .col-xl-12 {
    width: 100%;
  }
}

/* Clearfix for rows */
.row::after,
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* Container */
.container {
  width: var(--container-width);
  max-width: 1220px;
  margin-inline: auto;
  padding-inline: var(--spacing-md);
}

/* Wrapper */
#wrapper {
  max-width: 1220px;
  margin: 0 auto var(--spacing-md);
  background: transparent;
}

/* Main Content */
main,
#mainProduct {
  background: var(--color-gray-lightest);
  box-shadow: none;
}

/* Boxed Layout */
.boxed-layout {
  max-width: 100%;
  padding: 0;
  margin-top: 0;
}

/* ===================================
   BOTONES PRIMARIOS
   =================================== */

/* Botón primario base */
.btn-primary,
button.btn-primary,
a.btn-primary {
  background-color: var(--color-secondary) !important;
  border-color: var(--color-secondary) !important;
  color: var(--color-white) !important;
  font-weight: 600;
  padding: 0.75rem 1.5rem;
  border-radius: 0.375rem;
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.btn-primary:hover,
button.btn-primary:hover,
a.btn-primary:hover {
  background-color: var(--color-primary) !important;
  border-color: var(--color-brand-dark) !important;
  color: var(--color-white) !important;
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

.btn-primary:focus,
.btn-primary:active {
  background-color: #0a58ca !important;
  border-color: #0a53be !important;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Botón "Categorías" del menú */
.nav-trigger .left-nav-icon.btn-primary,
.left-nav-icon.btn-primary {
  border: none !important;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.875rem 1.5rem;
  color: var(--color-black);
}

.nav-trigger .left-nav-icon.btn-primary:hover,
.left-nav-icon.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: none;
}

.nav-trigger .left-nav-icon.btn-primary .box-icon svg {
  width: 1.25em;
  height: 1.25em;
  fill: currentColor;
}

.nav-trigger .left-nav-icon.btn-primary .box-text {
  font-family: 'Lemon Milk', sans-serif;
  letter-spacing: 0.5px;
}

/* Botones de acción (añadir al carrito, comprar, etc.) */
.add-to-cart,
.btn-add-to-cart,
button[name="add-to-cart"],
button.add-to-cart {
  background-color: #0d6efd !important;
  border-color: #0d6efd !important;
  color: #ffffff !important;
  font-weight: 600;
  padding: 0.875rem 2rem;
  border-radius: 0.5rem;
  transition: all 0.3s ease;
  text-transform: uppercase;
}

.add-to-cart:hover,
.btn-add-to-cart:hover,
button[name="add-to-cart"]:hover,
button.add-to-cart:hover {
  background-color: #0b5ed7 !important;
  border-color: #0a58ca !important;
  transform: scale(1.05);
  box-shadow: 0 6px 20px rgba(13, 110, 253, 0.4);
}

/* Botones secundarios */
.btn-secondary {
  background-color: var(--color-gray) !important;
  border-color: var(--color-gray) !important;
  color: var(--color-white) !important;
}

.btn-secondary:hover {
  background-color: var(--color-medium) !important;
  border-color: var(--color-dark) !important;
}

/* Botones de outline */
.btn-outline-primary {
  color: var(--color-secondary) !important;
  border-color: var(--color-secondary) !important;
  background-color: transparent;
}

.btn-outline-primary:hover {
  background-color: var(--color-secondary) !important;
  border-color: var(--color-secondary) !important;
  color: var(--color-white) !important;
}

/* Botones pequeños */
.btn-sm.btn-primary {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
}

/* Botones grandes */
.btn-lg.btn-primary {
  padding: 1rem 2rem;
  font-size: 1.125rem;
}

/* Botones con íconos */
.btn-primary i,
.btn-primary .material-icons {
  margin-right: 0.5rem;
  vertical-align: middle;
}

/* Estados disabled */
.btn-primary:disabled,
.btn-primary.disabled {
  background-color: var(--color-gray) !important;
  border-color: var(--color-gray) !important;
  opacity: 0.65;
  cursor: not-allowed;
}

/* Botones en el header */
.header-right .btn-primary {
  font-size: 0.875rem;
  padding: 0.5rem 1.25rem;
}

/* Responsive */
@media (max-width: 767px) {
  .btn-primary {
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
  }

  .add-to-cart,
  .btn-add-to-cart {
    padding: 0.75rem 1.5rem;
    font-size: 0.875rem;
  }
}

/* Animación de clic */
.btn-primary:active {
  transform: scale(0.98);
}

/* Grupo de botones */
.btn-group .btn-primary:not(:last-child) {
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}

.cart-preview .cart-header .cart-products-count {
  background: var(--color-brand);
}

/* ==========================================
   MATERIAL ICONS
   ========================================== */
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Tamaños diferentes */
.material-icons.md-18 {
  font-size: 18px;
}

.material-icons.md-24 {
  font-size: 24px;
}

.material-icons.md-36 {
  font-size: 36px;
}

.material-icons.md-48 {
  font-size: 48px;
}

/* Colores usando variables CSS */
.material-icons.text-primary {
  color: var(--color-primary);
}

.material-icons.text-secondary {
  color: var(--color-secondary);
}

.material-icons.text-brand {
  color: var(--color-brand);
}

.material-icons.text-danger {
  color: var(--color-danger);
}

.material-icons.text-success {
  color: var(--color-success);
}

.material-icons.text-warning {
  color: var(--color-warning);
}

.material-icons.text-info {
  color: var(--color-info);
}

.material-icons.text-light {
  color: var(--color-light);
}

.material-icons.text-dark {
  color: var(--color-dark);
}

/* ==========================================
   HEADER
   ========================================== */
#header {
  margin-bottom: var(--spacing-sm);
  position: relative;
  z-index: 1;
}

#header .header-logo {
  z-index: 0;
}

#header .header-logo svg,
#header .header-logo img {
  height: 50px;
  max-height: 73px;
}

/* Header Main Menu */
#header-main-menu {
  background-color: #fafafa;
  border-block: 1px solid var(--color-border);
}

#header-main-menu .container {
  padding: 0;
}

/* Header Navigation */
.header-nav-wrapper {
  justify-content: flex-end;
}

.header-nav {
  min-height: 10px;
}

/* Header Phone */
#header .header-phone .material-icons {
  font-size: 19px;
}

#header .header-phone ul {
  margin: 15px 0;
}

/* Header Links */
#header .header-nav-wrapper li.text-red {
  color: var(--color-danger);
}

#header .header-nav-wrapper li.text-red a:hover {
  color: var(--color-danger);
}

#header .header-nav-wrapper li.text-red a svg {
  font-size: 16px;
  margin-right: 4px;
  position: relative;
  top: -2px;
}

/* Search Widget - modernized styles */
.search-widget {
  width: 100%;
  position: relative;
}

.search-widget form {
  display: flex;
  align-items: center;
}

.search-widget form input[type="text"] {
  width: 100%;
  font-size: var(--font-size-base);
  padding: 10px 14px 10px 44px;
  /* space for search icon */
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background-color: var(--color-white);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
  transition: box-shadow 180ms ease, border-color 120ms ease, transform 120ms ease;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'></circle><line x1='21' y1='21' x2='16.65' y2='16.65'></line></svg>");
  background-repeat: no-repeat;
  background-position: 12px center;
  background-size: 16px 16px;
}

.search-widget form input[type="text"]::placeholder {
  color: #9aa0a6;
  opacity: 1;
}

.search-widget form input[type="text"]:focus {
  border-color: rgba(33, 133, 208, 0.9);
  box-shadow: 0 8px 24px rgba(33, 133, 208, 0.12), 0 2px 6px rgba(0, 0, 0, 0.06);
}

.search-widget form [type="submit"] {
  display: none;
}

.search-widget.ui-front {
  z-index: calc(var(--z-dropdown) + 20);
}

.search-widget.ui-front svg {
  width: 16px;
  height: 100%;
  display: block;
  margin: auto;
  fill: var(--color-white);
}

@media (max-width: 576px) {
  .search-widget form input[type="text"] {
    padding-left: 38px;
  }

  .search-widget form [type="submit"] {
    padding: 8px 10px;
  }
}

/* User Info & Account */
.user-info .account-link>a {
  justify-content: center;
  text-transform: capitalize;
  font-weight: 500;
}

.user-info .account-link,
.user-info .dropdown-customer-account-links .dropdown-menu {
  border: none;
}

.user-info .dropdown-customer-account-links .dropdown-item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.user-info .dropdown-customer-account-links .dropdown-item svg {
  font-size: 15px;
  margin-right: 8px;
  margin-left: 5px;
  width: 15px;
}

.user-info .dropdown-customer-account-links .dropdown-item span {
  margin: 0;
}

span.export-catalog {
  margin: 2px;
}

/* Customer Sign-in Module */
.customer-signin-module {
  margin: 0;
  width: 343px;
}

/* Shopping Cart */
.cart-preview .cart-header .cart-link {
  display: block;
  position: relative;
  padding-left: 55px;
  font-size: var(--font-size-base);
  text-align: left;
  color: var(--color-dark);
  font-weight: 400;
  line-height: 25px;
}

.cart-preview .cart-header .cart-link .icon-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: var(--color-dark);
  position: absolute;
  left: 0;
  width: 47px;
  height: 47px;
  border: 2px solid var(--color-medium);
  border-radius: 50%;
  line-height: 43px;
  top: 8px;
}

.cart-preview .cart-header .cart-link .icon-cart .c-icon {
  font-size: 25px;
  color: var(--color-dark);
}

.cart-preview .cart-header .cart-products-count {
  right: 0;
  color: var(--color-white);
}

.cart-preview .cart-header .cart-link .cart-total-value {
  display: block;
  color: var(--color-gray);
}

/* Sticky Cart Icon */
#header .sticky-icon-cart .cart-link .cart-name {
  display: none;
}

#header .sticky-icon-cart .cart-link .icon-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: var(--color-dark);
  position: absolute;
  left: 0;
  width: 47px;
  height: 47px;
  border: 2px solid var(--color-medium);
  border-radius: 50%;
  line-height: 44px;
}

#header .sticky-icon-cart .cart-link .icon-cart svg {
  font-size: 24px;
  line-height: 43px;
}

/* ==========================================
   NAVIGATION & MENU
   ========================================== */

/* Main Menu Wrapper */
#header .header-main-menu-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 68px;
}

/* Nav Trigger */
.nav-trigger {
  max-width: 200px;
  height: 68px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-inline: 1px solid var(--color-border);
  padding: 0 20px;
}

.nav-trigger .c-icon {
  height: 23px;
  width: 23px;
  color: var(--color-dark);
}

.nav-trigger .txtnw {
  text-transform: capitalize;
  font-size: var(--font-size-base);
  font-weight: 600;
  font-family: var(--font-primary);
}

#header .left-nav-trigger {
  display: flex;
  align-items: center;
}

/* Left nav icon: compact, pill-shaped trigger with icon + label */
#header .header-main-menu-wrapper .left-nav-icon {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: transparent !important;
  border: none;
  padding: 8px 14px;
  border-radius: 40px;
  font-size: 0.95rem;
  height: auto;
}

#header .header-main-menu-wrapper .left-nav-icon .box-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.12);
  width: 34px;
  height: 34px;
  border-radius: 50%;
}

#header .header-main-menu-wrapper .left-nav-icon .box-icon svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}

#header .header-main-menu-wrapper .left-nav-icon .box-text {
  display: inline-block;
  font-weight: 600;
  font-size: 0.95rem;
  line-height: 1;
  color: var(--color-black);
}

/* Ensure trigger does not overlap dropdown content */
.nav-trigger {
  z-index: 5;
}

.header-main-menu-wrapper .amega-menu {
  z-index: 10;
}

/* Mega Menu */
#header .amega-menu {
  width: 86%;
}

#header .amega-menu .anav-top {
  margin: 0;
}

.anav-top .amenu-link {
  position: relative;
  text-transform: capitalize;
  font-weight: 500;
  font-size: var(--font-size-base);
  color: var(--color-dark);
  font-family: var(--font-primary);
  padding: 12px 14px;
  display: inline-flex;
  align-items: center;
}

.anav-top .amenu-link>sup {
  /* small floating badge centered above the link (like the reference image) */
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  padding: 4px 8px;
  background: var(--color-primary);
  color: #fff;
  font-size: 11px;
  line-height: 1;
  border-radius: 999px;
  box-shadow: 0 6px 18px rgba(30, 58, 118, 0.12);
  min-width: 34px;
  text-align: center;
  z-index: calc(var(--z-sticky) + 2);
}

.anav-top .amenu-link::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  background: #cfcfcf;
  height: 50%;
  width: 1px;
}

.anav-top .amenu-link sup {
  /* subtle pulse on badge (low impact) */
  animation: colorchangeinfinite 3s infinite ease-in-out;
}

@keyframes colorchangeinfinite {
  0% {
    background: var(--color-brand);
    transform: scale(1);
  }

  50% {
    background: var(--color-brand-dark);
    transform: scale(1.1);
  }

  100% {
    background: var(--color-brand);
    transform: scale(1);
  }
}

#amegamenu li.amenu-item:last-child .amenu-link::after {
  display: none;
}

.amenu-item sup {
  padding: 4px 8px;
}

.amenu-link img {
  position: relative;
  top: -2px;
}

/* Category Submenu Hover Effect */
.anav-top .category-item .category-subs li a {
  display: block;
  text-decoration: none;
  background-image: linear-gradient(to right,
      var(--color-brand-dark),
      var(--color-brand-dark) 50%,
      #555555 50%);
  background-size: 200% 100%;
  background-position: 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  transition: background-position var(--transition-slow) cubic-bezier(0, 0, 0.23, 1);
}

.anav-top .category-item .category-subs li a span {
  margin-left: 20px;
  display: inline-grid;
}

.anav-top .category-item .category-subs li a span::after {
  content: '';
  display: block;
  width: 0;
  height: 2px;
  background: var(--color-brand-dark);
  transition: width 0.6s;
}

.anav-top .category-item .category-subs li a:hover {
  background-position: 0%;
}

.anav-top .category-item .category-subs li a:hover span::after {
  width: 100%;
}

.drop-center .category-title {
  color: var(--color-brand);
}

/* Sidebar Categories */
.category-tree>ul>li>a::before {
  border: none;
  margin-right: 0;
}

.category-tree>ul>li>a>svg {
  font-size: 27px;
}

.sidebar-categories .category-tree>ul>li>a:hover::before {
  background-color: var(--color-white);
}

.sidebar-categories .category-tree li a svg {
  margin-right: 15px;
  margin-left: -3px;
}

.sidebar-categories .fa-microchip {
  margin-left: -1px;
}

.sidebar-categories .fa-mobile-alt {
  margin-left: 1px;
}

/* Sidebar Category Collapse Icons - Multiple selectors to catch all cases */
.sidebar-categories .js-collapse-trigger .material-icons,
.sidebar-categories .collapse-icon.material-icons,
.sidebar-categories .collapse-sidebar-action .material-icons,
.js-sidebar-categories .js-collapse-trigger .material-icons,
.js-sidebar-categories .collapse-icon.material-icons,
.js-sidebar-categories .collapse-sidebar-action .material-icons,
.js-collapse-trigger .material-icons.add,
.js-collapse-trigger .material-icons.remove,
.collapse-sidebar-action .material-icons.add,
.collapse-sidebar-action .material-icons.remove,
.collapse-icon.add,
.collapse-icon.remove {
  font-size: 12px !important;
  line-height: 1;
  width: 12px;
  height: 12px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
}

/* Smooth collapse animation for category submenu - Multiple selectors */
.sidebar-categories .category-sub-menu,
.sidebar-categories .js-sub-categories,
.sidebar-categories .collapse-sidebar-categories,
.js-sidebar-categories .category-sub-menu,
.js-sidebar-categories .js-sub-categories,
.js-sidebar-categories .collapse-sidebar-categories,
.category-sub-menu.js-sub-categories,
.category-sub-menu.collapse-sidebar-categories {
  max-height: 0 !important;
  overflow: hidden;
  opacity: 0 !important;
  visibility: hidden;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.4s ease-in-out,
    padding 0.4s ease-in-out,
    visibility 0s linear 0.5s;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: block !important;
}

/* When expanded or shown - with higher specificity */
.sidebar-categories .category-sub-menu.expanded,
.sidebar-categories .category-sub-menu.show,
.sidebar-categories .js-sub-categories.expanded,
.sidebar-categories .js-sub-categories.show,
.sidebar-categories .collapse-sidebar-categories.expanded,
.sidebar-categories .collapse-sidebar-categories.show,
.js-sidebar-categories .category-sub-menu.expanded,
.js-sidebar-categories .category-sub-menu.show,
.js-sidebar-categories .js-sub-categories.expanded,
.js-sidebar-categories .js-sub-categories.show,
.js-sidebar-categories .collapse-sidebar-categories.expanded,
.js-sidebar-categories .collapse-sidebar-categories.show,
.category-sub-menu.js-sub-categories.expanded,
.category-sub-menu.js-sub-categories.show,
.category-sub-menu.collapse-sidebar-categories.expanded,
.category-sub-menu.collapse-sidebar-categories.show {
  max-height: 5000px !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.4s ease-in-out,
    padding 0.4s ease-in-out,
    visibility 0s linear 0s;
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
  display: block !important;
}

/* Also handle inline styles */
.sidebar-categories .category-sub-menu[style*="display: block"].expanded,
.sidebar-categories .category-sub-menu[style*="display: block"].show,
.sidebar-categories .js-sub-categories[style*="display: block"].expanded,
.sidebar-categories .js-sub-categories[style*="display: block"].show,
.sidebar-categories .collapse-sidebar-categories[style*="display: block"].expanded,
.sidebar-categories .collapse-sidebar-categories[style*="display: block"].show,
.js-sidebar-categories .category-sub-menu[style*="display: block"].expanded,
.js-sidebar-categories .category-sub-menu[style*="display: block"].show,
.js-sidebar-categories .js-sub-categories[style*="display: block"].expanded,
.js-sidebar-categories .js-sub-categories[style*="display: block"].show,
.js-sidebar-categories .collapse-sidebar-categories[style*="display: block"].expanded,
.js-sidebar-categories .collapse-sidebar-categories[style*="display: block"].show,
.category-sub-menu.js-sub-categories[style*="display: block"].expanded,
.category-sub-menu.js-sub-categories[style*="display: block"].show,
.category-sub-menu.collapse-sidebar-categories[style*="display: block"].expanded,
.category-sub-menu.collapse-sidebar-categories[style*="display: block"].show {
  max-height: 5000px !important;
  opacity: 1 !important;
  visibility: visible !important;
  transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.4s ease-in-out,
    padding 0.4s ease-in-out,
    visibility 0s linear 0s;
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

/* Smooth icon transition - Support both trigger classes */
.js-collapse-trigger .add,
.js-collapse-trigger .remove,
.collapse-sidebar-action .add,
.collapse-sidebar-action .remove,
.collapse-icon.add,
.collapse-icon.remove {
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.js-collapse-trigger.opened .add,
.js-collapse-trigger.opened .collapse-icon.add,
.collapse-sidebar-action.opened .add {
  opacity: 0 !important;
  transform: scale(0);
  display: none !important;
}

.js-collapse-trigger.opened .remove,
.js-collapse-trigger.opened .collapse-icon.remove,
.collapse-sidebar-action.opened .remove {
  opacity: 1 !important;
  transform: scale(1);
  display: inline-block !important;
}

.js-collapse-trigger:not(.opened) .add,
.js-collapse-trigger:not(.opened) .collapse-icon.add,
.collapse-sidebar-action:not(.opened) .add {
  opacity: 1 !important;
  transform: scale(1);
  display: inline-block !important;
}

.js-collapse-trigger:not(.opened) .remove,
.js-collapse-trigger:not(.opened) .collapse-icon.remove,
.collapse-sidebar-action:not(.opened) .remove {
  opacity: 0 !important;
  transform: scale(0);
  display: none !important;
}

/* Sidebar Account */
.sidebar-account.user-info a.logout-link {
  margin: 20px;
}

.sidebar-account.user-info>ul>li {
  flex-direction: column;
}

/* Menu Add to Cart */
.menu-add-cart form {
  display: flex;
  justify-content: center;
  width: 80%;
  margin: 0 auto;
  height: 39px;
}

.menu-add-cart form .qty {
  width: 50%;
}

.menu-add-cart form#add-to-cart-or-refresh .qty .input-group {
  height: 39px;
}

.menu-add-cart form#add-to-cart-or-refresh .qty i {
  font-weight: 400;
}

.menu-add-cart form .qty .input-group-btn-vertical {
  height: 39px;
}

/* ==========================================
   BREADCRUMB
   ========================================== */
.breadcrumb-wrapper {
  background-color: transparent;
  margin-bottom: var(--spacing-sm);
}

.breadcrumb {
  padding: 10px 13px;
  color: var(--color-black);
  display: flex;
}

#index .breadcrumb-wrapper {
  display: none;
}

/* ==========================================
   FOOTER
   ========================================== */
#footer {
  background: #444444;
  margin: 0 auto;
  color: var(--color-white);
}

#footer .footer-main {
  padding-left: 50px;
}

#footer .footer-bottom {
  background-color: #333333;
  color: var(--color-white);
}

#footer .footer-main h2,
#footer .footer-main h3,
#footer .footer-main h4 {
  color: var(--color-white);
}

#footer a {
  color: var(--color-white);
  transition: opacity var(--transition-base);
}

#footer a:hover {
  color: var(--color-white);
  opacity: 0.8;
}

#footer .container {
  max-width: 100%;
  padding: 0;
}

#footer .container .row {
  max-width: 1200px;
  margin: 0 auto;
}

#footer .container .row .footer-left {
  width: 50%;
  max-width: 100%;
  padding: 0;
  flex: 0 0 50%;
}

.footer-left-column {
  display: flex;
}

.footer-left-column .left-part {
  width: 100%;
}

.footer-left-column .left-part .links {
  margin-top: 30px;
}

.footer-left-column .right-part {
  width: 100%;
}

.footer-left-column .right-part .link-block {
  padding: 0 40px;
}

#footer .container .row .footer-right {
  width: 50%;
  flex: 0 0 50%;
  padding: 0;
  max-width: 100%;
}

#footer .footer-about-us {
  padding: 0;
  display: flex;
  flex-direction: row;
}

#footer .container .row .footer-right .col-lg-4.linklist {
  width: 50%;
  flex: 0 0 50%;
  max-width: 100%;
  padding: 0;
}

#footer .contact li {
  display: flex;
}

#footer .contact .text ul,
#footer .contact .title h4 {
  margin-left: 10px;
}

#footer .contact hr {
  width: 61%;
  margin-right: 39px;
  border: dashed 1px var(--color-gray-light);
  position: relative;
  left: -45px;
}

#footer .contact .strong {
  margin-right: 5px;
}

#footer .contact i,
#footer .contact svg {
  margin-right: 3px;
}

#footer .contact svg.fa-industry {
  margin-right: 5px;
  margin-top: 1px;
}

#footer .contact .strong span.hide {
  display: none;
}

#footer .footer-left-column .footer-img {
  margin: 0 45px;
}

#footer .footer-left-column .footer-img img {
  margin-bottom: 14px;
}

#footer .footer-left-column .links span a {
  color: var(--color-brand);
}

.footer-right .row .col-lg-8.linklist {
  width: 50%;
  flex: 0 0 50%;
  max-width: 100%;
}

#footer .linklist ul li a:hover,
#footer .link-block ul li a:hover {
  transform: translateX(5px);
}

#footer .linklist ul li a,
#footer .link-block ul li a {
  display: block;
  transition: all var(--transition-base);
}

#footer .link-block .block_content ul {
  list-style: none;
  padding: 0;
}

.footer-bottom .typo .row {
  display: flex;
  justify-content: center;
}

.footer-bottom .typo .row p.text-lg-left {
  text-align: center;
}

.static-links {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

.block-images {
  display: flex;
  flex-direction: column;
  margin-top: 30px;
  justify-content: space-around;
}

/* ==========================================
   PRODUCTS
   ========================================== */

/* Product List */
div.prestacart {
  display: flex;
}

.art-first-info {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.art-second-info {
  width: 100%;
}

.art-wishlist {
  width: 50%;
  display: flex;
  justify-content: flex-end;
}

.prestacart_add button.add-to-cart i {
  margin-right: 5px;
  font-size: 17px;
  font-weight: 200;
}

/* Product Flags */
.product-flags .product-flag span {
  font-size: 11px;
  transform: skewX(-10deg);
  border-radius: var(--border-radius-sm) 0;
  text-transform: initial;
  color: #fff !important;
}

#product .product-flags .product-flag span {
  font-size: 12px;
}

.product-flags .product-flag.online-only span {
  background: var(--color-brand);
}

.product-flags .product-flag.latestock span {
  background: #fff3cd;
  color: #856404 !important;
  text-transform: uppercase;
  font-weight: bold !important;
}

.product-flags .product-flag.special span {
  background: var(--color-new);
}

.product-flags .product-flag.bf span {
  background-color: var(--color-brand-dark);
}

.product-flags>.product-flag.bf:not(:first-of-type) {
  display: none;
}

.product-flags>.product-flag.new+.product-flag.bf,
.product-flags>.product-flag.discount+.product-flag.bf,
.product-flags>.product-flag.bf:first-of-type {
  display: block;
}

.product-miniature .product-reference {
  display: none;
}

.table-view .product-miniature .product-reference {
  display: inline;
}

/* Product Miniature */
.product-miniature .product-name {
  font-size: 13px;
  font-weight: 500;
}

.product-miniature .product-price {
  font-size: 0.9em !important;
}

.product-miniature .regular-price {
  font-size: 0.65em;
}

.date-avaliable,
.price-ecotax {
  font-size: 11px !important;
  font-style: italic;
  margin-bottom: 0;
}

/* Más stock - estilos móvil mejorados */
.product-miniature .date-avaliable {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background: #e8f4fd;
  color: #2a4b84;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid #b8d4f0;
  font-size: 0.65rem !important;
  font-weight: 500;
  text-align: center;
  width: auto;
  margin-top: 5px;
}

/* Product Container */
.product-container:hover {
  transform: none;
  box-shadow: var(--shadow-md);
}

/* Rollover Image Effect — segunda imagen en hover sobre la miniatura */
.product-thumbnail .product-cover-link {
  position: relative;
  display: block;
}

.product-thumbnail .product-cover-link .product-additional {
  position: absolute;
  inset: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--transition-slow);
  pointer-events: none;
  z-index: 2;
  background: var(--color-gray-lightest, #f5f5f5);
}

.product-miniature .discount-product.discount-percentage {
  display: none;
}

.product-thumbnail .product-cover-link .product-additional img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.product-container:hover .product-thumbnail .product-cover-link .product-additional {
  opacity: 1;
}

.product-thumbnail .product-cover-link .img-fluid.simg {
  transition: opacity var(--transition-slow);
  opacity: 1;
  display: block;
}

.product-container:hover .product-thumbnail .product-cover-link .img-fluid.simg {
  opacity: 0;
}

/* Product Availability */
.product-list .product-miniature .product-availability .available {
  background: #eac3db;
}

.product-list .product-miniature .product-availability .available.reserva {
  background: #9b9b9b;
}

.product-list .product-miniature .product-availability span {
  background: var(--color-brand-dark);
}

/* Amount Reduction */
.amount-reduction-value {
  font-size: 14px;
  font-style: italic;
  background: var(--color-brand);
  color: var(--color-white);
  padding: 1px 4px;
  white-space: nowrap;
  border-radius: var(--border-radius-sm);
  margin-left: 5px;
}

/* ==========================================
   PRODUCT PAGE
   ========================================== */
.product-right-content .page-heading {
  word-break: break-word;
}

#product .product-description-short {
  width: 100%;
}

.product-right-extra-field a.btn {
  padding: 0 5px;
  font-size: 11px;
}

/* ==========================================
   STICKY PRODUCT BLOCK - MODERN UX DESIGN
   ========================================== */
#sticky-product-block {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(135deg, #fff 0%, var(--color-lightest) 100%);
  z-index: var(--z-sticky);
  padding: 0;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  border-bottom: 2px solid var(--color-secondary);
  transform: translateY(-100%);
  transition: transform 0.3s ease-in-out;
}

#sticky-product-block.visible {
  transform: translateY(0);
}

#sticky-product-block>.container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 15px;
  gap: 1.5rem;
}

/* Product Image & Name Section */
#sticky-product-block .product-image {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex: 0 1 auto;
  min-width: 0;
}

#sticky-product-block .product-image img {
  width: 60px;
  height: 60px;
  object-fit: contain;
  border-radius: 8px;
  border: 1px solid var(--color-border);
  background: #fff;
  padding: 4px;
  flex-shrink: 0;
}

#sticky-product-block .product-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-dark);
  margin: 0;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-width: 280px;
}

/* Product Info Section */
#sticky-product-block .product-info {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex: 1 1 auto;
  justify-content: flex-end;
}

/* Price Section */
#sticky-product-block .price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  margin: 0 !important;
}

#sticky-product-block .item-price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

#sticky-product-block .price.product-price,
#sticky-product-block .price .product-price {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-primary);
  line-height: 1.2;
}

#sticky-product-block .regular-price {
  font-size: 13px;
  color: var(--color-gray);
  text-decoration: line-through;
}

#sticky-product-block .amount-reduction-value {
  font-size: 11px;
  color: #fff;
  font-weight: 500;
}

/* Stock/Availability Flag */
#sticky-product-block .flag-stock-quantity {
  display: flex;
  align-items: center;
}

#sticky-product-block .product-availability {
  font-size: 11px;
  padding: 6px 12px;
  margin: 0;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
  font-weight: 500;
}

#sticky-product-block .product-availability.alert-success {
  background: linear-gradient(135deg, var(--color-success) 0%, #218838 100%);
  color: #fff;
  border: none;
}

#sticky-product-block .product-availability.alert-error,
#sticky-product-block .product-availability.alert-danger {
  background: linear-gradient(135deg, var(--color-info) 0%, #138496 100%);
  color: #fff;
  border: none;
}

#sticky-product-block .product-availability .separator {
  font-size: 14px;
}

/* Add to Cart Section */
#sticky-product-block .add-to-cart-button {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 !important;
}

#sticky-product-block .product-add-to-cart {
  margin: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

#sticky-product-block .product-add-to-cart .js-product-availability,
#sticky-product-block .product-add-to-cart #product-availability,
#sticky-product-block .product-add-to-cart .product-minimal-quantity,
#sticky-product-block .product-add-to-cart .form-control-label,
#sticky-product-block .product-add-to-cart label {
  display: none !important;
}

#sticky-product-block .product-quantity {
  margin: 0 !important;
  padding: 0;
}

#sticky-product-block .product-quantity .row {
  margin: 0;
  gap: 0.5rem;
}

#sticky-product-block .product-quantity .col-9,
#sticky-product-block .product-quantity .col-3 {
  padding: 0;
  flex: none;
  width: auto;
  max-width: none;
}

#sticky-product-block .product-quantity-touchspin {
  margin: 0;
}

#sticky-product-block .product-quantity-touchspin .qty {
  margin: 0;
}

#sticky-product-block .qty .input-group.bootstrap-touchspin {
  min-width: 100px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--color-border);
}

#sticky-product-block .qty .form-control {
  height: 40px;
  font-size: 14px;
  border: none;
  text-align: center;
  padding: 0;
}

#sticky-product-block .qty .btn-touchspin {
  width: 36px;
  height: 40px;
  padding: 0;
  background: var(--color-lightest);
  border: none;
}

#sticky-product-block .qty .btn-touchspin:hover {
  background: var(--color-secondary);
  color: #fff;
}

#sticky-product-block .qty .btn-touchspin i {
  font-size: 18px;
}

/* Add to Cart / Reserve Button */
#sticky-product-block .add .btn.add-to-cart,
#sticky-product-block .add .btn.btn-reserve {
  height: 44px;
  padding: 0 1.5rem;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  transition: all 0.3s ease;
}

#sticky-product-block .add .btn.add-to-cart {
  background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-primary) 100%);
  border: none;
  color: #fff;
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.3);
}

#sticky-product-block .add .btn.add-to-cart:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(75, 123, 236, 0.4);
}

#sticky-product-block .add .btn.btn-reserve {
  background: linear-gradient(135deg, var(--color-info) 0%, #138496 100%);
  border: none;
  color: #fff;
  box-shadow: 0 4px 12px rgba(23, 162, 184, 0.3);
}

#sticky-product-block .add .btn.btn-reserve:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(23, 162, 184, 0.4);
}

#sticky-product-block .add .btn i {
  font-size: 18px;
}

/* Wishlist button in sticky */
#sticky-product-block .wishlist {
  display: flex;
  align-items: center;
}

#sticky-product-block .wishlist a,
#sticky-product-block .wishlist button {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  border: 1px solid var(--color-border);
  background: #fff;
  transition: all 0.3s ease;
}

#sticky-product-block .wishlist a:hover,
#sticky-product-block .wishlist button:hover {
  border-color: var(--color-danger);
  color: var(--color-danger);
}

#sticky-product-block .wishlist i {
  font-size: 22px;
  color: var(--color-danger);
}

/* Hide loading overlay in sticky */
#sticky-product-block .add-to-cart-loading,
#sticky-product-block .js-waitting-add-to-cart {
  display: none;
}

/* Próximamente text */
#sticky-product-block .proximamente-product {
  font-size: 16px !important;
  font-weight: 600;
  color: var(--color-primary) !important;
}

/* Responsive Sticky Bar */
@media (max-width: 1199.98px) {
  #sticky-product-block .product-name {
    max-width: 200px;
    font-size: 13px;
  }

  #sticky-product-block .price.product-price,
  #sticky-product-block .price .product-price {
    font-size: 18px;
  }
}

@media (max-width: 991.98px) {
  #sticky-product-block>.container {
    flex-wrap: wrap;
    gap: 1rem;
    padding: 10px 15px;
  }

  #sticky-product-block .product-image {
    flex: 1 1 100%;
    order: 1;
  }

  #sticky-product-block .product-image img {
    width: 50px;
    height: 50px;
  }

  #sticky-product-block .product-name {
    max-width: none;
    flex: 1;
    font-size: 13px;
    -webkit-line-clamp: 1;
  }

  #sticky-product-block .product-info {
    flex: 1 1 100%;
    order: 2;
    justify-content: space-between;
  }

  #sticky-product-block .flag-stock-quantity {
    display: none;
  }
}

@media (max-width: 767.98px) {
  #sticky-product-block .product-image img {
    width: 45px;
    height: 45px;
  }

  #sticky-product-block .price.product-price,
  #sticky-product-block .price .product-price {
    font-size: 16px;
  }

  #sticky-product-block .qty .input-group.bootstrap-touchspin {
    min-width: 90px;
  }

  #sticky-product-block .qty .form-control,
  #sticky-product-block .qty .btn-touchspin {
    height: 38px;
  }

  #sticky-product-block .add .btn.add-to-cart,
  #sticky-product-block .add .btn.btn-reserve {
    height: 38px;
    padding: 0 1rem;
    font-size: 12px;
  }

  #sticky-product-block .add .btn span {
    display: none;
  }

  #sticky-product-block .wishlist a,
  #sticky-product-block .wishlist button {
    width: 38px;
    height: 38px;
  }
}

#product .sticky-banner .sticky-banner-target .large.left,
#product .sticky-banner .sticky-banner-target .large.right {
  margin-top: 90px;
}

/* Reserve Text */
.reserve-text.advisement {
  color: #464545;
  font-size: 12px;
  padding: 19px 5px;
  margin-top: 30px;
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
  background: #ffeecc;
  border-color: orange;
  border-style: none solid;
}

.reserve-text.advisement .title {
  margin-bottom: 5px;
}

.reserve-text.advisement .title i {
  margin-right: 5px;
}

/* Product Wishlist */
#product .product-flag-wishlist i,
.quickview .product-flag-wishlist i {
  font-size: 30px;
  margin-top: 3px;
}

/* Countdown */
body#product .smoothing-countdown,
div.quickview .smoothing-countdown {
  background: var(--color-white);
  border-radius: var(--border-radius);
  overflow: hidden;
  padding: 20px;
  border: var(--color-brand) solid 1px;
}

body#product .smoothing-countdown .px-2,
div.quickview .smoothing-countdown .px-2 {
  color: var(--color-brand);
  text-transform: uppercase;
  font-weight: bold;
}

body#product .smoothing-countdown .countdown-time,
div.quickview .smoothing-countdown .countdown-time {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: center;
  align-items: center;
  color: #3c3c3b;
}

body#product .smoothing-countdown .countdown-time span,
div.quickview .smoothing-countdown .countdown-time span {
  display: flex;
  flex-direction: column;
  color: #3c3c3b;
  font-size: 11px;
  width: 25%;
  border-radius: 50%;
  padding: 5px;
  justify-content: center;
  align-items: center;
}

body#product .smoothing-countdown .countdown-time span time,
div.quickview .smoothing-countdown .countdown-time span time {
  font-size: 30px;
}

/* Add to Cart */
div.quickview .main-product-details .product-add-to-cart .add {
  margin-left: 0;
}

#product .input-reduce .input-group.bootstrap-touchspin {
  width: 125px;
  display: flex;
  align-items: center;
}

#product .product-add-to-cart-button button {
  min-width: 176px;
}

.main-product-details .product-manufacturer .brand-logo {
  display: initial;
}

/* Product Scroll Box Arrows */
.main-product-details .scroll-box-arrows .left,
.main-product-details .scroll-box-arrows .right {
  color: var(--color-brand);
  background-color: transparent;
}

.main-product-details .scroll-box-arrows .left:hover,
.main-product-details .scroll-box-arrows .right:hover {
  color: var(--color-brand-dark);
  background-color: var(--color-lightest);
}

.product-right .product-prices {
  justify-content: flex-start;
}

.product-right .product-prices .product-prices-wrapper {
  margin-right: 20px;
}

body#product i.shopping-cart {
  font-size: 17px;
  font-weight: 400;
}

body#product .main-product-details .product-add-to-cart .add {
  margin-left: 0;
  margin-right: 20px;
}

/* Product Discounts */
.modal-body .discount {
  flex-direction: row;
  flex-wrap: nowrap;
  border: 2px dashed var(--color-brand);
}

.modal-body .discount h2 {
  font-size: 34px;
  color: var(--color-brand);
}

.modal-body .discount p.pt-3 {
  line-height: 18px;
  text-align: justify;
}

body#product .product-discount .modal-dialog {
  margin: 0;
}

/* Product Info */
.product-info-list .product-info-item {
  color: var(--color-black);
  margin-right: 25px;
  vertical-align: middle;
}

.product-info-list .product-info-item strong {
  color: var(--color-black);
  text-transform: uppercase;
}


.product-info-list .product-info-item:first-child::before {
  display: none;
}

.product-info-list .product-info-item.parpadeo {
  animation: pulse 2s infinite;
}

.product-info-list .product-info-item.parpadeo::before {
  display: none;
}

/* Product Tabs */
.product-tabs .tab-content {
  padding: 1.83rem;
}

.product-description .tab-pane.fade {
  opacity: 1;
}

/* ==========================================
   PRODUCT ADDITIONAL INFO - MODERN DESIGN
   ========================================== */
.product-additionalInfo-modern {
  padding: 0;
}

.additional-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
}

.additional-info-grid .info-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background: linear-gradient(135deg, var(--color-lightest) 0%, #fff 100%);
  border: 1px solid var(--color-border);
  border-radius: 12px;
  transition: all 0.3s ease;
}

.additional-info-grid .info-card:hover {
  border-color: var(--color-secondary);
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.15);
  transform: translateY(-2px);
}

.additional-info-grid .info-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-primary) 100%);
  border-radius: 12px;
  flex-shrink: 0;
}

.additional-info-grid .info-icon i {
  font-size: 24px;
  color: #fff;
}

.additional-info-grid .info-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}

.additional-info-grid .info-label {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-gray);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.additional-info-grid .info-value {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-dark);
  word-break: break-word;
}

/* Product Actions Section */
.product-actions-section {
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--color-border);
}

.product-actions-section .actions-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 1rem;
}

.product-actions-section .actions-title i {
  font-size: 20px;
  color: var(--color-secondary);
}

.product-actions-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

/* Wishlist button in additional info */
.product-actions-buttons .open_wishlist_form,
.product-actions-buttons a[data-toggle="modal"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  background: linear-gradient(135deg, #fff 0%, var(--color-lightest) 100%);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: var(--color-dark);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  cursor: pointer;
}

.product-actions-buttons .open_wishlist_form:hover,
.product-actions-buttons a[data-toggle="modal"]:hover {
  border-color: var(--color-danger);
  color: var(--color-danger);
  box-shadow: 0 4px 12px rgba(220, 53, 69, 0.15);
  transform: translateY(-2px);
}

.product-actions-buttons .open_wishlist_form i,
.product-actions-buttons a[data-toggle="modal"] i {
  font-size: 20px;
  color: var(--color-danger);
}

.product-actions-buttons .open_wishlist_form::after {
  content: 'Añadir a favoritos';
  font-size: 13px;
}

/* Compare button in additional info */
.product-actions-buttons .pc-product-compare-button-wrapper {
  display: inline-flex;
}

.product-actions-buttons .pc-compare-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  background: linear-gradient(135deg, #fff 0%, var(--color-lightest) 100%);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  color: var(--color-dark);
  font-size: 13px;
  font-weight: 500;
  transition: all 0.3s ease;
  cursor: pointer;
}

.product-actions-buttons .pc-compare-btn:hover {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.15);
  transform: translateY(-2px);
}

.product-actions-buttons .pc-compare-btn i {
  font-size: 20px;
  color: var(--color-secondary);
}

.product-actions-buttons .pc-compare-btn::after {
  content: 'Comparar';
  font-size: 13px;
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
  .additional-info-grid {
    grid-template-columns: 1fr;
  }

  .product-actions-buttons {
    flex-direction: column;
    align-items: stretch;
  }

  .product-actions-buttons .open_wishlist_form,
  .product-actions-buttons a[data-toggle="modal"],
  .product-actions-buttons .pc-compare-btn {
    justify-content: center;
    width: 100%;
  }
}

/* Product Accessories */
.product-accesory .prev-add-to-cart {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
}

.product-accesory .prev-add-to-cart .prestacart {
  margin: 0 10px;
  flex-direction: row-reverse;
}

.product-accesory .prev-add-to-cart .prestacart .input-group.bootstrap-touchspin {
  width: 100%;
}

.product-accesory .prev-add-to-cart .prestacart .qty {
  margin-left: 0;
}

.product-accesory .prev-add-to-cart .prestacart .qty .presta_quantity_wanted {
  border-radius: 0;
}

.product-accesory .prev-add-to-cart .prestacart button {
  border-radius: 0;
}

.product-accesory .prev-add-to-cart .prestacart .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
  border-radius: 0;
}

.product-accesory .second-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.product-accesory .second-block .product-name a {
  text-align: center;
  width: 100%;
  max-width: 100%;
  display: block;
}

.product-accesory .product-container:hover {
  transform: none;
  box-shadow: none;
  border: 1px solid var(--color-gray-lighter);
}

.product-accesory .product-container {
  box-shadow: none;
  border: 1px solid var(--color-gray-lighter);
}

.product-miniature.product-accesory .first-block:hover .product-thumbnail .product-cover-link:before {
  opacity: 0;
  visibility: hidden;
}

.product-accesory .prev-add-to-cart {
  width: 100%;
}

/* ==========================================
   PAGINATION
   ========================================== */
.pagination .page-list .current a {
  background-color: var(--color-brand);
  color: var(--color-white);
}

/* ==========================================
   FILTERS & SEARCH
   ========================================== */

/* Products Selection */
.products-selection .products-sort-order .select-title {
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Search Filters */
#search_filters .title {
  display: none;
}

#search_filters .title span {
  display: flex;
}

#search_filters .title span span.navbar-toggler {
  display: flex;
}

#search_filters .facet .facet-label {
  display: flex;
}

#search_filters .facet .facet-label a {
  margin-left: 14px;
}

#search_filters .facet .facet-label .custom-radio {
  top: 0;
}

.facet .custom-checkbox i {
  position: relative;
  top: -4px;
}

.facet .custom-checkbox span {
  border-radius: var(--border-radius-sm);
}

#_desktop_search_filters_clear_all button {
  width: 100%;
}

/* Advanced Search */
.PM_ASBlockOutput {
  padding: 10px 15px;
}

.PM_ASCriterionsGroupTitle.h4 .PM_ASCriterionsGroupName {
  font-size: 16px;
}

#PM_ASBlockOutput_2 {
  display: none;
}

.PM_ASSelections .active_filters {
  padding: 5px;
}

.PM_ASBlockOutput .PM_ASCriterionsGroupTitle {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.PM_ASCriterionsOutput input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin: 5px;
  box-shadow: none;
  font-size: 2em;
}

.PM_ASCriterionsOutput .PM_ASLabelCheckbox {
  vertical-align: middle;
  display: flex;
  align-items: center;
  height: 20px;
  margin: 5px;
}

.PM_ASCriterionGroupCheckbox .checkbox {
  display: flex;
}

/* ==========================================
   TABLE VIEW (PRODUCT LIST)
   ========================================== */
.product-list .table-view .product-miniature .product-container {
  padding: 10px 0;
  box-shadow: none;
}

.product-list .table-view .product-miniature .first-block {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .art-wishlist {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .product-name {
  width: 50%;
  padding-right: 15px;
}

.product-list-wrapper.table-view .product-miniature .second-block-wrapper {
  width: 50%;
}

.product-list-wrapper.table-view .product-miniature .product-price-and-shipping {
  flex-direction: row;
  flex-wrap: nowrap;
}

.product-list-wrapper.table-view .product-miniature .art-first-info {
  width: 30%;
}

.product-list-wrapper.table-view .product-miniature .third-prices {
  width: 60%;
}

.product-miniature .min-stock-islas {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .min-stock-islas {
  display: inline-block;
}

.product-list-wrapper.table-view .product-miniature .date-avaliable,
.product-list-wrapper.table-view .product-miniature .price-ecotax {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .date-avaliable.only-table-view,
.product-list-wrapper.table-view .product-miniature .price-ecotax.only-table-view {
  display: inline-block;
}

.product-list .table-view .product-miniature .second-block {
  flex-direction: row;
}

.product-miniature .only-table-view {
  display: none;
}

.product-miniature .product-name {
  text-align: center;
  padding-left: 5px;
  padding-right: 5px;
  background: #f7f7f7;
}

.product-miniature .second-block .second-block-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 4%;
  min-height: 62px;
}

.ets_crosssell_list_blocks .product-availability .last_remaining_items {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .pn-product {
  display: none;
}

.product-miniature .product-name .pn-product,
.product-miniature .product-description-short {
  display: none;
}

.product-list-wrapper.table-view .product-miniature .product-name .pn-product {
  display: inline-block;
}

.product-list .list .product-miniature .product-price {
  font-size: 12px;
}

.product-list .grid .product-miniature .product-name a {
  word-wrap: break-word;
  font-size: 12px;
}

/* ==========================================
   LIST VIEW - VISTA DE LISTA
   ========================================== */

/* Container principal */
.product-list-wrapper.list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.product-list-wrapper.list .product-miniature {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Product container horizontal */
.product-list-wrapper.list .product-miniature .product-container {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  overflow: hidden;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.product-list-wrapper.list .product-miniature .product-container:hover {
  border-color: #4b7bec;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1);
}

/* IMAGEN - Bloque más grande */
.product-list-wrapper.list .product-miniature .first-block {
  flex: 0 0 240px;
  width: 240px;
  min-height: 200px;
  background: #ffffff;
  border-right: 1px solid #eee;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  position: relative;
  overflow: hidden;
}

.product-list-wrapper.list .product-miniature .product-thumbnail {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-list-wrapper.list .product-miniature .product-thumbnail img {
  max-width: 200px !important;
  max-height: 200px !important;
  width: auto;
  height: auto;
  object-fit: contain;
  transition: opacity 0.3s ease;
}

/* Segunda imagen - FADE simple en hover */
.product-list-wrapper.list .product-miniature .product-additional {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex !important;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.4s ease;
  pointer-events: none;
  z-index: 2;
  background: #f8f8f8;
}

.product-list-wrapper.list .product-miniature .product-additional img {
  max-width: 200px !important;
  max-height: 200px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
}

/* Fade in al hacer hover */
.product-list-wrapper.list .product-miniature .first-block:hover .product-additional {
  opacity: 1;
}

/* Ocultar otros elementos innecesarios */
.product-list-wrapper.list .product-miniature .grid-hover-btn,
.product-list-wrapper.list .product-miniature .miniature-countdown-wrapper {
  display: none !important;
}

/* Flags */
.product-list-wrapper.list .product-miniature .product-flags {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 5;
}

/* CONTENIDO PRINCIPAL */
.product-list-wrapper.list .product-miniature .second-block {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 18px 20px;
}

/* Ocultar referencia duplicada superior */
.product-list-wrapper.list .product-miniature .second-block>.pn-product {
  display: none !important;
}

/* Nombre producto */
.product-list-wrapper.list .product-miniature .product-name {
  background: none !important;
  padding: 0 !important;
  margin: 0 0 8px 0 !important;
  text-align: left !important;
}

.product-list-wrapper.list .product-miniature .product-name a {
  font-size: 1rem;
  font-weight: 600;
  color: #1e3a76;
  line-height: 1.3;
}

.product-list-wrapper.list .product-miniature .product-name a:hover {
  color: #4b7bec;
}

/* Referencia */
.product-list-wrapper.list .product-miniature .product-name .pn-product {
  display: block !important;
  font-size: 0.75rem;
  color: #888;
  margin-top: 4px;
}

/* Wrapper contenido - SIN GAP */
.product-list-wrapper.list .product-miniature .second-block-wrapper {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0;
  padding: 12px 0;
}

/* Info section */
.product-list-wrapper.list .product-miniature .informations-section {
  flex: 1;
  display: flex;
  flex-direction: column;
}

/* Precio y status */
.product-list-wrapper.list .product-miniature .price-and-status {
  display: flex !important;
  flex-direction: column;
}

.product-list-wrapper.list .product-miniature .product-price-and-shipping {
  display: flex !important;
  flex-direction: column;
  gap: 2px;
}

/* art-first-info: Precio izquierda, Wishlist derecha */
.product-list-wrapper.list .product-miniature .art-first-info {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
}

/* Contenedor de precios (izquierda) */
.product-list-wrapper.list .product-miniature .first-prices {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
}

.product-list-wrapper.list .product-miniature .price.product-price {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  color: #1e3a76 !important;
  line-height: 1.2;
}

/* Second prices - precio tachado y descuento */
.product-list-wrapper.list .product-miniature .second-prices {
  display: flex !important;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  flex-direction: row;
  flex-wrap: nowrap !important;
}

.product-list-wrapper.list .product-miniature .regular-price {
  font-size: 0.9rem;
  color: #999;
}

.product-list-wrapper.list .product-miniature .discount-percentage,
.product-list-wrapper.list .product-miniature .discount-amount {
  background: #e53935;
  color: #fff;
  padding: 2px 8px;
  border-radius: 3px;
  font-size: 0.75rem;
  font-weight: 600;
}

/* Ecotax/LPI - mostrar y alinear */
.product-list-wrapper.list .product-miniature .price-ecotax {
  display: block !important;
  font-size: 0.75rem;
  color: #666;
  font-style: italic;
  margin-top: 4px;
}

.product-list-wrapper.list .product-miniature .price-ecotax.only-table-view {
  display: block !important;
}

/* Wishlist y Comparar - usar mismos estilos que grid */
.product-list-wrapper.list .product-miniature .art-wishlist {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 5px;
  margin: 0;
  flex-shrink: 0;
}

.product-list-wrapper.list .product-miniature .art-wishlist>div {
  display: flex !important;
}

/* Ocultar third prices y LPI duplicado */
.product-list-wrapper.list .product-miniature .third-prices,
.product-list-wrapper.list .product-miniature .tax-shipping-delivery-label {
  display: none !important;
}

/* Ocultar el LPI que sale debajo (duplicado) */
.product-list-wrapper.list .product-miniature .product-price-and-shipping>.price-ecotax {
  display: none !important;
}

/* Descripción corta */
.product-list-wrapper.list .product-miniature .product-description-short {
  display: block !important;
  font-size: 0.8rem;
  color: #555;
  line-height: 1.5;
  margin-top: 8px;
  max-height: 54px;
  overflow: hidden;
}

/* ==========================================
   PÁGINA PRODUCTO - Barra superior MÁS STOCK y badges bajo el nombre
   Usa paleta del tema + jerarquía clara (ui-ux-pro-max)
   ========================================== */
/* Barra superior: MÁS STOCK — paleta tema, sin borde */
.product-info-list .product-info-item--mas-stock {
  font-weight: 700;
  color: var(--color-brand-pastel-text);
  border: none;
  border-radius: var(--border-radius-sm);
  padding: var(--spacing-xs) var(--spacing-sm);
  background: var(--color-brand-pastel);
}

.product-info-list .product-info-item--mas-stock strong {
  color: var(--color-brand-pastel-text);
}

/* Badges: contenedor — jerarquía secundaria respecto al título/precio */
.product-badges-row {
  margin-top: var(--spacing-xs);
  margin-bottom: var(--spacing-sm);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--spacing-sm);
}

.product-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: var(--border-radius-sm);
  font-size: var(--font-size-small);
  font-weight: 600;
  white-space: nowrap;
  line-height: 1.2;
  border: none;
}

.product-badge .material-icons {
  font-size: 1.125rem;
  width: 1.125rem;
  height: 1.125rem;
  flex-shrink: 0;
}

/* En stock — pastel verde (referencia foto) */
.product-badge--stock {
  background: var(--color-success-pastel);
  color: var(--color-success-pastel-text);
}

.product-badge--stock .material-icons {
  color: var(--color-success-pastel-text);
}

/* Sólo queda X — pastel amarillo (referencia foto) */
.product-badge--low {
  background: var(--color-warning-pastel);
  color: var(--color-warning-pastel-text);
}

.product-badge--low .material-icons {
  color: var(--color-warning-pastel-text);
}

/* MÁS STOCK (fecha) — pastel marca, sin borde */
.product-badge--mas-stock {
  background: var(--color-brand-pastel);
  color: var(--color-brand-pastel-text);
  font-weight: 700;
}

/* Fecha de disponibilidad "Más stock el:" */
.product-list-wrapper.list .product-miniature .date-avaliable {
  display: inline-flex !important;
  align-items: center;
  gap: 5px;
  font-size: 0.75rem;
  color: #2a4b84;
  background: #e8f4fd;
  padding: 4px 10px;
  border-radius: 4px;
  border: 1px solid #b8d4f0;
  margin-top: 6px;
  font-style: italic;
}

.product-list-wrapper.list .product-miniature .date-avaliable span {
  display: flex;
  align-items: center;
  gap: 4px;
}

.product-list-wrapper.list .product-miniature .date-avaliable span::before {
  content: "📅";
  font-style: normal;
}

/* Ocultar disponibilidad duplicada en lista */
.product-list-wrapper.list .product-miniature .product-availability {
  display: none !important;
}

/* .buttons-sections - mostrar solo stock */
.product-list-wrapper.list .product-miniature .buttons-sections {
  display: contents !important;
}

/* Ocultar elementos innecesarios de buttons-sections */
.product-list-wrapper.list .product-miniature .buttons-sections .addtocart-quantity,
.product-list-wrapper.list .product-miniature .buttons-sections .product-actions {
  display: none !important;
}

/* Mostrar stock de ambas ubicaciones - alineado a la izquierda */
.product-list-wrapper.list .product-miniature .stockalmacenes-widget,
.product-list-wrapper.list .product-miniature .min-stock-islas {
  display: inline-flex !important;
  font-size: 0.7rem;
  color: #333;
  background: #f5f5f5;
  padding: 4px 10px;
  border-radius: 4px;
  border: 1px solid #ddd;
  margin-top: 6px;
  margin-right: auto;
  align-self: flex-start;
}

/* Carrito - Input más ancho */
.product-list-wrapper.list .product-miniature .prestacart {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.product-list-wrapper.list .product-miniature .prestacart .qty {
  flex: 0 0 auto;
}

.product-list-wrapper.list .product-miniature .prestacart .qty input {
  width: 60px;
  height: 40px;
  text-align: center;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
}

.product-list-wrapper.list .product-miniature .prestacart .prestacart_add {
  flex: 0 0 auto;
  margin: 0 !important;
}

.product-list-wrapper.list .product-miniature .prestacart button.add-to-cart {
  height: 40px;
  padding: 0 20px;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  border-radius: 4px;
}

/* Acciones producto - ocultar duplicados */
.product-list-wrapper.list .product-miniature .product-actions {
  display: none !important;
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .product-list-wrapper.list .product-miniature .first-block {
    flex: 0 0 150px;
    width: 150px;
  }

  .product-list-wrapper.list .product-miniature .product-thumbnail img {
    max-width: 130px !important;
    max-height: 130px !important;
  }

  .product-list-wrapper.list .product-miniature .price.product-price {
    font-size: 1.2rem !important;
  }

  .product-list-wrapper.list .product-miniature .product-description-short {
    display: none !important;
  }

  .product-list-wrapper.list .product-miniature .art-wishlist button,
  .product-list-wrapper.list .product-miniature .art-wishlist a {
    width: 36px;
    height: 36px;
  }

  .product-list-wrapper.list .product-miniature .art-wishlist i {
    font-size: 18px;
  }
}

@media (max-width: 767px) {
  .product-list-wrapper.list .product-miniature .product-container {
    flex-direction: column;
  }

  .product-list-wrapper.list .product-miniature .first-block {
    flex: 0 0 auto;
    width: 100%;
    min-height: 160px;
  }

  .product-list-wrapper.list .product-miniature .product-thumbnail img {
    max-width: 140px !important;
    max-height: 140px !important;
  }

  .product-list-wrapper.list .product-miniature .second-block {
    padding: 15px;
  }

  .product-list-wrapper.list .product-miniature .product-name {
    text-align: center !important;
  }

  .product-list-wrapper.list .product-miniature .art-wishlist {
    justify-content: center;
  }

  .product-list-wrapper.list .product-miniature .prestacart {
    justify-content: center;
  }
}

/* ==========================================
   TABLE VIEW - VISTA SIN IMAGEN (UNA LÍNEA)
   ========================================== */
.product-list-wrapper.table-view {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.product-list-wrapper.table-view .product-miniature {
  width: 100% !important;
}

.product-list-wrapper.table-view .product-miniature .product-container {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 15px !important;
  padding: 10px 15px !important;
  background: var(--color-white) !important;
  border-radius: 6px !important;
  border: 1px solid #e0e0e0 !important;
}

/* Ocultar imagen y elementos innecesarios */
.product-list-wrapper.table-view .product-miniature .first-block,
.product-list-wrapper.table-view .product-miniature .second-block>.pn-product,
.product-list-wrapper.table-view .product-miniature .product-description-short,
.product-list-wrapper.table-view .product-miniature .product-availability,
.product-list-wrapper.table-view .product-miniature .third-prices,
.product-list-wrapper.table-view .product-miniature .tax-shipping-delivery-label,
.product-list-wrapper.table-view .product-miniature .product-actions,
.product-list-wrapper.table-view .product-miniature .art-wishlist,
.product-list-wrapper.table-view .product-miniature .price-ecotax,
.product-list-wrapper.table-view .product-miniature .buttons-sections {
  display: none !important;
}

/* Todos los wrappers en fila */
.product-list-wrapper.table-view .product-miniature .second-block,
.product-list-wrapper.table-view .product-miniature .second-block-wrapper,
.product-list-wrapper.table-view .product-miniature .informations-section,
.product-list-wrapper.table-view .product-miniature .price-and-status {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 15px !important;
  flex: 1 !important;
  padding: 0 !important;
}

/* NOMBRE + REF */
.product-list-wrapper.table-view .product-miniature .product-name {
  flex: 1 1 auto !important;
  margin: 0 !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  max-width: 350px;
}

.product-list-wrapper.table-view .product-miniature .product-name a {
  color: var(--color-primary);
  text-decoration: none;
}

.product-list-wrapper.table-view .product-miniature .product-name .pn-product {
  display: inline !important;
  margin-left: 6px;
  font-size: 0.65rem;
  font-weight: 400;
  color: #888;
}

/* PRECIO */
.product-list-wrapper.table-view .product-miniature .product-price-and-shipping {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
}

.product-list-wrapper.table-view .product-miniature .art-first-info {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.product-list-wrapper.table-view .product-miniature .first-prices {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}

.product-list-wrapper.table-view .product-miniature .price.product-price {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--color-primary) !important;
  white-space: nowrap !important;
}

.product-list-wrapper.table-view .product-miniature .second-prices {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.product-list-wrapper.table-view .product-miniature .regular-price {
  font-size: 0.75rem !important;
  color: #999 !important;
  text-decoration: line-through !important;
}

.product-list-wrapper.table-view .product-miniature .discount-percentage {
  background: #e53935 !important;
  color: #fff !important;
  padding: 2px 5px !important;
  border-radius: 3px !important;
  font-size: 0.65rem !important;
  font-weight: 600 !important;
}

/* Más stock */
.product-list-wrapper.table-view .product-miniature .date-avaliable {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 0.65rem !important;
  color: #2a4b84 !important;
  background: #e8f4fd !important;
  padding: 3px 8px !important;
  border-radius: 3px !important;
  border: 1px solid #b8d4f0 !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

/* CANTIDAD + COMPRAR */
.product-list-wrapper.table-view .product-miniature .prestacart {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 6px !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.product-list-wrapper.table-view .product-miniature .prestacart .qty {
  flex: 0 0 auto !important;
}

.product-list-wrapper.table-view .product-miniature .prestacart .qty input {
  width: 45px !important;
  height: 30px !important;
  text-align: center !important;
  border-radius: 4px !important;
  font-size: 0.8rem !important;
  border: 1px solid #ccc !important;
}

.product-list-wrapper.table-view .product-miniature .prestacart .prestacart_add {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.product-list-wrapper.table-view .product-miniature .prestacart button.add-to-cart {
  height: 30px !important;
  padding: 0 12px !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  border-radius: 4px !important;
}

/* STOCK GC/TF - dentro de product-price-and-shipping */
.product-list-wrapper.table-view .product-miniature .stockalmacenes-widget,
.product-list-wrapper.table-view .product-miniature .min-stock-islas {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 0.65rem !important;
  color: #555 !important;
  background: #f5f5f5 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  border: 1px solid #ddd !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

/* Responsive table-view */
@media (max-width: 991px) {
  .product-list-wrapper.table-view .product-miniature .product-container {
    flex-wrap: wrap !important;
  }

  .product-list-wrapper.table-view .product-miniature .product-name {
    flex: 1 1 100% !important;
    max-width: none !important;
  }
}

@media (max-width: 767px) {
  .product-list-wrapper.table-view .product-miniature .product-container {
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center !important;
  }

  .product-list-wrapper.table-view .product-miniature .prestacart {
    justify-content: center !important;
  }

  .product-list-wrapper.table-view .product-miniature .stockalmacenes-widget {
    justify-content: center !important;
  }
}

/* ============================================
   TABLE VIEW ROW - NUEVA ESTRUCTURA
   ============================================ */
/* Ocultar por defecto en todas las vistas */
.table-view-row {
  display: none !important;
}

/* Mostrar SOLO en table-view */
.product-list-wrapper.table-view .product-miniature .table-view-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 15px !important;
  width: 100% !important;
}

/* Ocultar la estructura original en table-view */
.product-list-wrapper.table-view .product-miniature .first-block,
.product-list-wrapper.table-view .product-miniature .second-block {
  display: none !important;
}

/* NOMBRE */
.table-view-row .tv-name {
  flex: 1 1 250px;
  min-width: 150px;
}

.table-view-row .tv-name a {
  color: var(--color-primary);
  font-size: 0.8rem;
  font-weight: 600;
  text-decoration: none;
  display: flex;
  align-items: center;
  line-height: 1.3;
}

.table-view-row .tv-name a:hover {
  text-decoration: underline;
}

/* REFERENCIA */
.table-view-row .tv-ref {
  flex: 0 0 auto;
}

.table-view-row .tv-ref span {
  display: inline-block;
  background: #f0f4f8;
  color: #5a6a7f;
  font-size: 0.7rem;
  font-weight: 500;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid #d0dae5;
}

/* PRECIO */
.table-view-row .tv-price {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.table-view-row .tv-current-price {
  font-size: 1rem;
  font-weight: 700;
  color: var(--color-primary);
  white-space: nowrap;
  line-height: 1.2;
}

.table-view-row .tv-old-price {
  font-size: 0.7rem;
  color: #888;
  text-decoration: line-through;
  white-space: nowrap;
  line-height: 1;
}

.table-view-row .tv-discount {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e53935;
  color: #fff;
  font-size: 0.6rem;
  font-weight: 600;
  padding: 1px 5px;
  border-radius: 3px;
  white-space: nowrap;
  margin-top: 2px;
}

/* MÁS STOCK (FECHA) */
.table-view-row .tv-stock-date {
  flex: 0 0 auto;
}

.table-view-row .tv-stock-date span {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  background: #e8f4fd;
  color: #2a4b84;
  font-size: 0.65rem;
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid #b8d4f0;
  white-space: nowrap;
}

/* CARRITO (QTY + COMPRAR) */
.table-view-row .tv-cart {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Sobrescribir margin del widget instantlistcart en table-view */
.table-view-row .tv-cart .instantlistcart-widget-wrapper {
  margin-top: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.table-view-row .tv-cart .prestacart {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 6px !important;
}

.table-view-row .tv-cart .prestacart .qty input {
  width: 45px !important;
  height: 30px !important;
  text-align: center !important;
  border-radius: 4px !important;
  font-size: 0.8rem !important;
  border: 1px solid #ccc !important;
}

.table-view-row .tv-cart .prestacart button.add-to-cart {
  height: 30px !important;
  padding: 0 12px !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  border-radius: 4px !important;
}

/* STOCK GC/TF */
.table-view-row .tv-stock {
  flex: 0 0 auto;
}

.table-view-row .tv-stock .stockalmacenes-widget,
.table-view-row .tv-stock .min-stock-islas {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 0.65rem !important;
  color: #555 !important;
  background: #f5f5f5 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  border: 1px solid #ddd !important;
  white-space: nowrap !important;
}

/* Responsive table-view-row */
@media (max-width: 991px) {
  .product-list-wrapper.table-view .product-miniature .table-view-row {
    flex-wrap: wrap !important;
  }

  .table-view-row .tv-name {
    flex: 1 1 100%;
    margin-bottom: 5px;
  }

  .table-view-row .tv-name a {
    white-space: normal;
  }
}

@media (max-width: 767px) {
  .product-list-wrapper.table-view .product-miniature .table-view-row {
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center !important;
    gap: 8px !important;
  }

  .table-view-row .tv-price,
  .table-view-row .tv-cart {
    justify-content: center;
  }
}

/* ==========================================
   SHOPPING CART
   ========================================== */
div#onepagecheckoutps div.clear {
  display: flex;
  justify-content: flex-end;
}

#cart .checkout.cart-detailed-actions {
  display: flex;
  justify-content: space-around;
  align-self: center;
  flex-direction: column;
}

#cart .cart-items .product-prices {
  color: var(--color-gray) !important;
  font-weight: 400;
  line-height: 1.4;
}

#cart .cart-items .product-prices .price {
  color: var(--color-gray);
  font-weight: 500;
}

#cart .cart-summary .value.price.price-total {
  color: var(--color-secondary);
  font-weight: 600;
}

.price-total {
  color: var(--color-secondary) !important;
  font-weight: 600;
}

a.product-name:hover {
  color: var(--color-secondary) !important;
}

#cart .checkout.cart-detailed-actions .text-center {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

#cart .checkout.cart-detailed-actions .text-center .btn {
  width: 100%;
}

#cart .checkout .lgclearcart {
  padding: 0;
}

#cart .addtocartfromurl_content {
  width: 100%;
}

.cart-action-buttons {
  display: flex;
  gap: var(--spacing-sm);
  flex-wrap: wrap;
  justify-content: center;
  margin: var(--spacing-sm) auto;
}

.cart-action-buttons .cart-action-save,
.cart-action-buttons .cart-action-share {
  flex: 1 1 100px;
}

.cart-action-btn {
  position: relative;
  padding: 0.85rem 1.8rem;
  border-radius: 999px;
  border: none;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  min-height: 48px;
  transition: transform var(--transition-fast), box-shadow var(--transition-base),
    filter var(--transition-base);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

.cart-action-btn .cart-action-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.15);
}

.cart-action-btn .cart-action-icon i {
  font-size: 1.1rem;
  margin: 0;
  animation: cartActionPulse 2.6s ease-in-out infinite;
}

.cart-action-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
  filter: brightness(1.05);
}

.cart-action-btn:active {
  transform: translateY(0);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.16);
}

.cart-action-save {
  background: linear-gradient(135deg, #28c76f, #20a06a);
  color: var(--color-white) !important;
}

.cart-action-share {
  background: linear-gradient(135deg, #845ef7, #6450f0);
  color: var(--color-white) !important;
}

.cart-share-panel {
  background: var(--color-white);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-lg);
  padding: var(--spacing-md);
  border: 1px solid rgba(0, 0, 0, 0.05);
  max-width: 520px;
  margin: var(--spacing-sm) auto;
}

.cart-share-body .cart-share-action {
  width: 100%;
  justify-content: center;
  gap: 0.5rem;
}

.cart-share-icons {
  display: flex;
  justify-content: center;
  gap: var(--spacing-xs);
  flex-wrap: wrap;
}

.cart-share-icons .btn {
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform var(--transition-fast);
}

.cart-share-icons .btn:hover {
  transform: translateY(-3px) scale(1.05);
}

.saved-carts-grid {
  row-gap: var(--spacing-xl);
}

.saved-carts-grid__col {
  display: flex;
}

.saved-cart-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
  padding: calc(var(--spacing-lg) + 6px) var(--spacing-lg) var(--spacing-lg);
  border-radius: var(--border-radius-lg);
  background: linear-gradient(140deg, rgba(106, 185, 240, 0.18) 0%, rgba(255, 255, 255, 0.94) 58%);
  border: 1px solid rgba(75, 123, 236, 0.12);
  box-shadow: 0 20px 40px rgba(30, 58, 118, 0.12);
  overflow: hidden;
}

.saved-cart-card::before,
.saved-cart-card::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  z-index: 0;
}

.saved-cart-card::before {
  width: 220px;
  height: 220px;
  left: -120px;
  top: -110px;
  background: radial-gradient(circle at center, rgba(106, 185, 240, 0.45) 0%, rgba(106, 185, 240, 0) 72%);
}

.saved-cart-card::after {
  width: 180px;
  height: 180px;
  right: -90px;
  top: -90px;
  background: radial-gradient(circle at center, rgba(75, 123, 236, 0.25) 0%, rgba(75, 123, 236, 0) 70%);
}

.saved-cart-card>* {
  position: relative;
  z-index: 1;
}

.saved-cart-card__header {
  background: rgba(255, 255, 255, 0.82);
  padding: var(--spacing-sm) var(--spacing-md);
  border-radius: var(--border-radius);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--spacing-sm);
  box-shadow: inset 0 0 0 1px rgba(30, 58, 118, 0.08);
}

.saved-cart-card__title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--color-dark);
}

.saved-cart-card__date {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8125rem;
  color: var(--color-gray);
}

.saved-cart-card__date-icon {
  font-size: 18px;
  color: var(--color-secondary);
}

.saved-cart-card__meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
}

.saved-cart-card__meta-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: rgba(75, 123, 236, 0.12);
  color: var(--color-secondary);
  font-weight: 600;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
}

.saved-cart-card__meta-pill .material-icons {
  font-size: 18px;
}

.saved-cart-card__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.saved-cart-card__item {
  background: rgba(255, 255, 255, 0.92);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-sm) var(--spacing-md);
  box-shadow: inset 0 0 0 1px rgba(30, 58, 118, 0.05);
  transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.saved-cart-card__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(30, 58, 118, 0.12);
}

.saved-cart-card__item--empty {
  text-align: center;
  color: var(--color-gray);
  font-size: 0.9rem;
  font-weight: 600;
}

.saved-cart-card__load-more {
  align-self: center;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding-inline: 1.8rem;
  border-radius: 999px;
  font-weight: 600;
  text-transform: uppercase;
  background: rgba(75, 123, 236, 0.1);
  color: var(--color-secondary);
  border: 1px solid rgba(75, 123, 236, 0.25);
  transition: all var(--transition-fast);
}

.saved-cart-card__load-more:hover {
  background: var(--color-secondary);
  color: var(--color-white);
  box-shadow: var(--shadow-md);
}

.saved-cart-card__footer {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-sm);
  justify-content: flex-end;
}

.saved-cart-card__action {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-weight: 600;
  text-transform: uppercase;
}

.saved-cart-card__confirm {
  display: none;
}

.saved-cart-card__confirm-inner {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.saved-cart-card__confirm-title {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
}

.saved-cart-card__confirm-date {
  font-size: 0.8125rem;
  color: var(--color-gray);
}

.saved-cart-product {
  position: relative;
  display: flex;
  gap: var(--spacing-md);
  align-items: stretch;
  background: rgba(255, 255, 255, 0.78);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-sm) var(--spacing-md);
  transition: transform var(--transition-base), box-shadow var(--transition-base);
  box-shadow: inset 0 0 0 1px rgba(30, 58, 118, 0.06);
}

.saved-cart-product:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(30, 58, 118, 0.15);
}

.saved-cart-product__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0.3rem 0.7rem;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--color-white);
  z-index: 3;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
}

.saved-cart-product__badge .material-icons {
  font-size: 16px;
}

.saved-cart-product__badge--discount {
  background: linear-gradient(135deg, #ff6a6a 0%, #ff4c4c 100%);
}

.saved-cart-product__badge--gift {
  background: linear-gradient(135deg, #28c76f 0%, #20a06a 100%);
}

.saved-cart-product__media {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 130px;
}

.saved-cart-product__thumbnail {
  display: block;
  width: 130px;
  height: 130px;
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  background: linear-gradient(140deg, rgba(240, 248, 255, 0.9), rgba(255, 255, 255, 0.85));
  box-shadow: inset 0 0 0 1px rgba(30, 58, 118, 0.05);
  position: relative;
}

.saved-cart-product__thumbnail::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(200deg, rgba(106, 185, 240, 0.18), transparent 70%);
  opacity: 0;
  transition: opacity var(--transition-base);
}

.saved-cart-product:hover .saved-cart-product__thumbnail::after {
  opacity: 1;
}

.saved-cart-product__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform var(--transition-base);
}

.saved-cart-product__thumbnail:hover img {
  transform: scale(1.06);
}

.saved-cart-product__details {
  flex: 1 1 auto;
  display: flex;
  justify-content: space-between;
  gap: var(--spacing-md);
}

.saved-cart-product__info {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.saved-cart-product__title {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 700;
  color: var(--color-dark);
  line-height: 1.35;
}

.saved-cart-product__title a {
  color: inherit;
  font-size: 14px;
}

.saved-cart-product__title a:hover {
  color: var(--color-secondary);
}

.saved-cart-product__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  font-size: 0.875rem;
  color: var(--color-gray);
}

.saved-cart-product__meta span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0.25rem 0.55rem;
  border-radius: var(--border-radius-sm);
  background: rgba(30, 58, 118, 0.05);
  font-weight: 600;
  color: var(--color-medium);
}

.saved-cart-product__meta .material-icons {
  font-size: 16px;
  color: var(--color-secondary);
}

.saved-cart-product__attributes {
  margin: 0;
  font-size: 0.85rem;
  color: var(--color-medium);
  background: rgba(30, 58, 118, 0.04);
  padding: 0.35rem 0.6rem;
  border-radius: var(--border-radius-sm);
}

.saved-cart-product__footer {
  display: flex;
  align-items: center;
}

.saved-cart-product__link {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  background: rgba(75, 123, 236, 0.12);
  color: var(--color-secondary);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.8rem;
  transition: all var(--transition-fast);
}

.saved-cart-product__link:hover {
  background: var(--color-secondary);
  color: var(--color-white);
  box-shadow: 0 10px 20px rgba(75, 123, 236, 0.25);
}

.saved-cart-product__link .material-icons {
  font-size: 16px;
}

.saved-cart-product__availability {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.saved-cart-product__availability-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.3rem 0.65rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.saved-cart-product__availability-pill.is-in {
  background: rgba(33, 150, 83, 0.16);
  color: #137b45;
}

.saved-cart-product__availability-pill.is-backorder {
  background: rgba(255, 193, 7, 0.16);
  color: #b98504;
}

.saved-cart-product__availability-pill.is-out {
  background: rgba(220, 53, 69, 0.16);
  color: #b02a37;
}

.saved-cart-product__pricing {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
  min-width: 140px;
}

.saved-cart-product__gift {
  font-weight: 700;
  color: var(--color-secondary);
  text-transform: uppercase;
}

.saved-cart-product__price-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  color: var(--color-dark);
  font-weight: 600;
  font-size: 1rem;
}

.saved-cart-product__price-current {
  font-size: 1.1rem;
  color: var(--color-secondary);
  font-weight: 700;
}

.saved-cart-product__price-block.is-discounted .saved-cart-product__price-current {
  color: var(--color-danger);
}

.saved-cart-product__price-discount {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--color-danger);
  letter-spacing: 0.05em;
}

.saved-cart-product__price-old {
  font-size: 0.85rem;
  color: var(--color-gray);
  text-decoration: line-through;
}

@media (max-width: 1199px) {
  .saved-cart-card {
    gap: var(--spacing-sm);
  }
}

@media (max-width: 991px) {
  .saved-cart-product {
    flex-direction: column;
    align-items: flex-start;
  }

  .saved-cart-product__details {
    flex-direction: column;
    align-items: stretch;
  }

  .saved-cart-product__pricing {
    align-items: flex-start;
  }

  .saved-cart-card__footer {
    justify-content: flex-start;
  }
}

@media (max-width: 575px) {
  .saved-cart-card {
    padding: var(--spacing-md);
  }

  .saved-cart-product__thumbnail {
    width: 110px;
    height: 110px;
  }

  .saved-cart-card__header {
    flex-direction: column;
    align-items: flex-start;
  }

  .saved-cart-card__meta {
    width: 100%;
  }
}

@keyframes cartActionPulse {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.15);
  }
}

.products-selection .products-sort-order .product-display .display-select .selected {
  color: var(--color-secondary);
  font-weight: 600;
}

.products-selection .total-products p {
  color: var(--color-secondary);
  font-weight: 500;
}

.main-product-details .product-images li.thumb-container .thumb.selected {
  color: var(--color-secondary);
  border-color: var(--color-secondary);
}

a.text-primary:focus,
a.text-primary:hover {
  color: var(--color-secondary) !important;
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--color-secondary) !important;
}

div#onepagecheckoutps span,
div#onepagecheckoutps em,
div#onepagecheckoutps label {
  font-size: 12px;
}

#cart .cart-container-wrapper .cart-item .text.text-center {
  display: flex;
  flex-direction: column;
}

div#onepagecheckoutps .lgclearcart {
  margin-top: 10px;
}

#savecarts h3 {
  font-size: 18px;
}

#cart .cart-overview .input-group .input-group-btn>.btn-touchspin {
  padding: 0 2px;
  min-width: 0;
  height: 100%;
  border-radius: 0;
}

#cart .cart-overview input.js-cart-line-product-quantity {
  text-align: center;
}

/* Reassurance Block */
.block-reassurance-item {
  background-color: transparent;
  opacity: 0.6;
  box-shadow: var(--shadow-md);
  padding: 10px;
}

.cart-grid-right .block-reassurance li .block-reassurance-item {
  background-color: transparent;
  opacity: 0.6;
  box-shadow: var(--shadow-md);
  padding: 20px 10px;
}

.block-reassurance-item i {
  font-size: 40px;
  margin-right: 10px;
  color: var(--color-black);
}

.block-reassurance-item span {
  font-size: 11px;
  color: var(--color-black);
  line-height: 15px;
  text-align: justify;
}

.block-reassurance {
  display: flex;
  flex-direction: row;
}

.block-reassurance a {
  width: 33%;
  display: block;
  height: 130px;
  margin: 0 0 20px 0;
  background: var(--color-white);
  border: 1px solid #ccc;
  overflow: hidden;
  margin-right: 10px;
  border-radius: var(--border-radius);
}

.block-reassurance h5 {
  color: #333;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 130px;
  font-size: 24px;
  opacity: 1;
  transition: all var(--transition-base);
}

.block-reassurance h5 i,
.block-reassurance h5 svg {
  margin-right: 8px;
}

.block-reassurance a:hover h5 {
  margin-top: -135px;
  opacity: 0;
}

.block-reassurance div {
  width: 100%;
  text-align: justify;
  display: flex;
  align-items: center;
  position: relative;
  color: #333;
  font: 12px/15px;
  height: 130px;
  padding: 10px;
  opacity: 0;
  transform: rotate(6deg);
  transition: all var(--transition-base);
}

.block-reassurance a:hover div {
  opacity: 1;
  transform: rotate(0);
}

/* Checkout */
#checkout .block-reassurance a div {
  text-align: justify;
  font-size: 13px;
  line-height: 19px;
}

#checkout .timeback-content {
  padding: 10px 5px;
  border: 1px dashed #d7d2d2;
  margin-top: 20px;
}

#checkout .timeback-content .collapse-button {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

#checkout .timeback-content .info {
  margin-left: 5px;
  color: var(--color-gray-light);
  width: 95%;
  display: flex;
  justify-content: flex-start;
  font-size: 12px;
  margin: 0;
}

#checkout .timeback-content .title {
  width: 100%;
}

.customer-timeback {
  margin-top: 25px;
  display: inline-block;
  width: 100%;
  padding: 0 10px;
}

.inputs-timeback {
  display: flex;
  justify-content: space-around;
}

.button-container-timeback {
  margin-top: 15px;
  float: right;
}

#checkout .file-register-name {
  width: 65%;
  border: 1px solid var(--color-gray-light);
  display: flex;
  color: var(--color-brand);
  align-items: center;
  padding-left: 10px;
  margin-right: 10px;
}

/* Shipping & Payment */
#shipping_container .carrier-item-content,
#payment_method_container .payment-option {
  padding: 8px 15px;
  display: flex;
  align-items: center;
  justify-content: start;
}

#shipping_container .carrier-item-content .delivery_option_logo.wo_image {
  width: 40%;
}

#shipping_container .carrier-item-content .carrier_delay.wo_image {
  width: 60%;
}

#shipping_container .carrier-item-content>div,
#payment_method_container .payment-option>div {
  margin-right: 15px;
}

#shipping_container #div-gift {
  margin-top: 8px;
}

/* ==========================================
   MODALS
   ========================================== */
.modal-backdrop {
  display: none;
}

.modal-open .modal {
  background-color: rgba(0, 0, 0, 0.8);
}

.modgrade .modal .modal-header .close {
  background: rgba(0, 0, 0, 0.5);
  border-radius: var(--border-radius-sm);
  border: 0;
  left: auto;
  position: absolute;
  width: 8px;
  height: 3px;
  z-index: var(--z-popover);
  cursor: pointer;
  opacity: 0.75;
  transition: opacity var(--transition-base);
  background: rgba(0, 0, 0, 0.25);
  box-sizing: content-box;
  padding: 15px;
}

.modgrade .modal .modal-header .close:hover {
  opacity: 1;
}

.modgrade .modal .modal-header .close::after,
.modgrade .modal .modal-header .close::before {
  content: '';
  width: 20px;
  height: 2px;
  position: absolute;
  top: 15px;
  left: 9px;
  background: white;
  border-radius: 10px;
  transition: transform var(--transition-base);
}

.modal .modal-header .close span {
  display: none;
}

.modgrade .modal .modal-header .close:hover::before {
  transform: rotate(135deg);
}

.modgrade .modal .modal-header .close::before {
  transform: rotate(45deg);
}

.modgrade .modal .modal-header .close:hover::after {
  transform: rotate(45deg);
}

.modgrade .modal .modal-header .close::after {
  transform: rotate(-45deg);
}

.zone-product-extra-fields .extra-field-type-modal.modgrade .extra-title {
  padding: 10px 20px;
  background: linear-gradient(90deg, var(--color-gray-lightest), var(--color-gray-lightest));
  width: 100%;
}

.zone-product-extra-fields .extra-field-type-modal.modgrade .extra-title span {
  padding-left: 20px;
}

#extraModal70 .modal-content,
#extraModal71 .modal-content,
#extraModal72 .modal-content,
#extraModal73 .modal-content,
#extraModal74 .modal-content {
  background: transparent;
}

.video-gaming .modal-content {
  background-color: transparent;
}

.video-gaming .close span {
  display: block;
  color: var(--color-white);
}

/* ==========================================
   FORMS & AUTHENTICATION
   ========================================== */

/* Register Form */
.create_account #main {
  max-width: 1200px;
}

.block-forms-collapse {
  width: 100%;
}

.links-form {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
}

.cliente,
.nuev-cliente {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50%;
  text-align: center;
  margin: 0 5px;
}

.cliente strong,
.nuev-cliente strong {
  font-size: 20px;
}

.cliente a,
.nuev-cliente a {
  margin: 20px 0;
}

.secondary-title {
  width: 100%;
  background: #8a8989;
  border: 1px solid;
  color: var(--color-white);
}

.secondary-title h2 {
  font-size: 21px;
}

.button-right {
  display: flex;
  justify-content: flex-end;
}

.custom-file-upload {
  padding: 0;
  height: 30px;
}

#authentication .page-footer {
  margin: 20px 0;
  position: relative;
  top: -8px;
}

.register-form fieldset .title h1 {
  display: flex;
  justify-content: center;
  margin: 20px 0;
}

.register-form fieldset .title {
  margin: 30px 0;
}

.page-footer .text-center a {
  text-transform: none;
}

.page-footer .no-account a.btn.btn-secondary {
  text-transform: none;
}

#authentication form .box-shadow {
  width: 100%;
  height: 100%;
  border-radius: var(--border-radius);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  padding: 20px;
  margin-bottom: 15px;
}

#new-customer-form input[type="checkbox"] {
  position: relative;
}

#new-customer-form .box-shadow ul {
  list-style: inside;
}

#authentication .form-control-submit {
  background: var(--color-brand);
  border-radius: 6px;
  width: 15%;
  height: 34px;
  color: var(--color-white);
  border: none;
}

.text-form-red {
  color: rgb(218, 47, 47);
}

#authentication .page-footer .btn.btn-teriary {
  background-color: #444;
  color: var(--color-white);
  text-transform: capitalize;
}

#submit-login svg {
  margin-left: 5px;
  position: relative;
  top: -1px;
}

/* One Page Checkout */
#onepagecheckoutps form#form_customer .row {
  margin-bottom: 10px;
}

#onepagecheckoutps #savecarts .form-group input#savecart {
  margin-top: 5px;
  background: #2d2c2c;
  color: var(--color-white);
  width: 100%;
}

#onepagecheckoutps #savecarts .form-group input#savecart:hover {
  background: #070606;
}

.input-file-container {
  display: flex;
  margin: 0;
  justify-content: center;
  margin-top: 10px;
  height: 26px;
}

.input-file-container .btn span {
  padding: 5px;
  display: flex;
  align-items: center;
}

.title-file-register {
  width: 20%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.file-input-register {
  display: flex;
  width: 100%;
  justify-content: space-evenly;
  align-items: center;
}

.onepagecheckoutps_header .row {
  padding: 10px;
  padding-bottom: 0;
}

/* ==========================================
   CMS PAGES
   ========================================== */

/* Sitemap */
.sitemap .category-sitemap .tree>li>ul.nested>li>a {
  color: #4d4c4c;
}

/* Contact Form */
section.contact-form footer {
  display: flex;
  justify-content: flex-end;
}

#contact .icon {
  display: flex;
  align-items: center;
}

/* Terms & Conditions */
#cms .cms-content-page {
  background-color: var(--color-white);
  border-radius: var(--border-radius);
  padding: 10px 10px 2px 10px;
  border: 1px solid #eee;
}

#cms .accordion {
  background-color: #eee;
  color: #444;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 18px;
  transition: var(--transition-base);
  margin: 0;
}

#cms .active,
.accordion:hover {
  background-color: #ccc;
}

#cms .accordion:after {
  content: '\002B';
  color: var(--color-brand);
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

#cms .active:after {
  content: '\2212';
}

#cms .panel {
  padding: 0 18px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--transition-base);
  color: #444;
}

#cms .panel p {
  padding-top: 5px;
}

/* About Us */
.cms-id-4 .typo li {
  font-size: 0.8125rem;
  font-weight: 400;
  color: var(--color-gray-light);
}

.au-header-image {
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('/img/cms/about-header.jpg');
  background-size: cover;
  background-position: center;
  position: relative;
  height: 300px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: var(--color-white);
  padding-left: 35px;
  margin-bottom: 45px;
}

.au-header-image h1 {
  color: var(--color-white);
  letter-spacing: 1px;
  position: relative;
  top: 19px;
  font-size: 38px;
}

.au-fw-box-subtitle {
  width: 31%;
  text-align: justify;
  line-height: 29px;
  position: relative;
  top: 35px;
}

.au-box {
  padding: 0 35px;
  margin-bottom: 20px;
}

.au-blocks {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  width: 95%;
  margin: 20px auto;
}

.au-box2 {
  padding: 10px 35px;
  width: 50%;
  border: 2px solid #ccc;
  margin-right: 5px;
  border-radius: var(--border-radius);
}

.au-box h2 {
  margin-bottom: 30px;
}

.au-box a {
  color: var(--color-brand);
  text-decoration: none;
}

.au-box li {
  list-style-type: none;
  position: relative;
  margin-bottom: 0.5em;
}

.au-box li:hover::before {
  transform: translateX(5px);
}

.au-box li:before {
  font-family: 'Material Icons';
  content: '\e5cc';
  transition: all var(--transition-base);
  display: inline-block;
  position: absolute;
  left: -20px;
  color: var(--color-brand);
  font-size: 12px;
}

.au-image {
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
  width: 95%;
  margin: 0 auto;
}

.au-box3 {
  border: 2px solid #ccc;
  border-radius: 20px;
  padding: 20px;
  margin-right: 10px;
}

.au-box3 li,
.au-image,
.au-box2 p,
.au-box p {
  transition: all var(--transition-base);
}

/* Stores */
#stores .store-description address {
  margin: 0;
}

#stores .page-stores .store-item-container ul {
  margin: 0;
}

#stores .page-stores .store-item-container i {
  margin-right: 3px;
}

#stores .divide-left table {
  border-radius: 6px;
  overflow: hidden;
}

/* ... (continuación del código anterior) ... */

/* Donde Estamos */
.row.maps-cms {
  justify-content: center;
  margin-top: 50px;
}

.maps-site {
  display: flex;
  width: 100%;
  margin-top: 40px;
  justify-content: space-around;
  flex-wrap: wrap;
}

.cms-block {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border-radius: var(--border-radius);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  padding: 20px;
}

/* Promotions */
.c-inspiration-image {
  height: 333px;
  width: 100%;
}

.c-inspiration-image img {
  width: 100%;
  height: 333px;
}

.c-inspiration-link {
  background: var(--color-white);
  width: 338px;
  height: 100px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 10px 20px;
  position: absolute;
  top: 230px;
}

.c-inspiration-link span.title {
  color: #535252;
  font-size: 22px;
  margin-bottom: 5px;
}

.c-inspiration-link span.text {
  color: var(--color-brand);
  margin-left: 10px;
}

.c-inspiration-link span.text i {
  transition: transform var(--transition-base);
  margin-top: 2px;
  position: relative;
  top: 2px;
}

.c-inspiration-image:hover .c-inspiration-link span i {
  transform: translateX(10px);
  color: #929191;
}

.c-inspiration-image:hover .c-inspiration-link span.text a {
  color: #929191;
}

/* Cards */
.cards {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.cards .card-image {
  width: 100%;
  height: 180px;
  overflow: hidden;
}

.cards .card {
  opacity: 0.8;
  margin: 10px;
  width: 330px;
  min-width: 300px;
  position: relative;
  overflow: hidden;
  color: white;
  cursor: pointer;
  border-radius: var(--border-radius-sm);
  border: 3px solid #ccc;
  padding: 0;
  transition: all var(--transition-base);
}

.cards .card.card-active {
  border: 3px solid #21a9e1;
}

.cards .card.card-active .card-info {
  transform: translateY(0);
}

.cards .card.card-active .card-title {
  background: linear-gradient(0deg, rgba(33, 169, 225, 0.8) 20%, transparent);
}

.cards .card.card-active .card-desc {
  background: rgba(33, 169, 225, 0.8);
}

.cards .card:hover .card-info {
  transform: translateY(0);
}

.cards .card:hover,
.cards .card.card-active {
  opacity: 1;
}

.cards .card:hover img,
.cards .card.card-active img {
  filter: blur(5px);
}

.cards .card img {
  height: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: all var(--transition-base);
}

.cards .card .card-info {
  position: absolute;
  transition: transform var(--transition-base);
  width: 100%;
  transform: translateY(145px);
  color: var(--color-white);
}

.cards .card .card-info.discounts-days {
  transform: translateY(195px);
}

.cards .card:hover .card-info.discounts-days {
  transform: translateY(25%);
}

.cards .card .card-title {
  line-height: 20px;
  padding: 5px;
  font-size: 20px;
  text-align: center;
  background: linear-gradient(0deg, rgba(52, 53, 53, 0.8) 20%, transparent);
  color: var(--color-white);
}

.cards .card .card-desc {
  line-height: 16px;
  font-size: 13px;
  padding: 0 10px 10px 10px;
  background: rgba(52, 53, 53, 0.8);
  color: var(--color-white);
}

main .advanced-cms-wrapper .rte p {
  color: #666464;
}

.product-promo .col-lg-3 {
  display: flex;
  align-items: center;
}

#module-advancedcms-adcms .breadcrumb {
  display: flex;
}

#module-advancedcms-adcms #content-wrapper {
  width: 100%;
}

/* ==========================================
   HOME PAGE
   ========================================== */
.product-price {
  color: var(--color-brand-dark) !important;
  font-weight: 700 !important;
}

.product-list .product-miniature .grid-hover-btn a {
  color: var(--color-brand-dark)
}

.product-name a:hover {
  color: var(--color-brand-dark);
}

.sin-padding {
  padding: 0;
}

.main-product-details .product-cover .layer .zoom-in {
  color: var(--color-brand-dark);
}

#index .aone-slideshow,
#index .block_id_50,
#index .block_id_49,
#index .bottom-column-content {
  float: left;
}

/* Top Categories */
.home-top-category-block {
  display: flex;
  flex-direction: column;
}

.static-html .category-head h2 {
  text-transform: uppercase;
}

.home-top-category {
  display: flex;
  flex-direction: row;
  margin-bottom: 20px;
  flex-wrap: nowrap;
}

.home-top-category .submenucat-item {
  margin: 0 5px;
  width: 20%;
}

.home-top-category img {
  border: 2px solid #ccc;
  border-radius: var(--border-radius-sm) var(--border-radius-sm) 0 0;
  background-color: white;
  margin-bottom: 3px;
}

.home-top-category .submenucat-item-titulo {
  text-decoration: none;
  padding: 18px 0;
  font-weight: 400;
  text-align: center;
  font-size: 17px;
  background: #ededed;
  transition: var(--transition-base);
  color: #3c3c3b;
}

.home-top-category .submenucat-item-titulo a {
  color: #3c3c3b;
}

.home-top-category .submenucat-item-titulo a:hover {
  color: var(--color-brand);
  cursor: pointer;
}

.subcategory-miniature .subcategory-image img.img-thumbnail {
  border: 0.5px solid var(--color-brand-dark);
}

/* Home Parallax */
.home-parallax .parallax-tittle h2 {
  margin: 20px 0;
  font-size: 30px;
  font-weight: 300;
  color: #616161;
  text-transform: uppercase;
  line-height: 30px;
  text-align: center;
}

.home-parallax .parallax-tittle {
  margin: 10px;
}

.home-parallax .parallax-tittle::before,
.home-parallax .parallax-tittle::after {
  content: ' ';
  display: table;
  border: 1px solid;
  width: 100%;
}

.home-parallax .parallax-tittle::after {
  clear: both;
}

/* Prestacart */
.prestacart_add .add-to-cart.disable::after {
  content: '\F110';
  font-family: FontAwesome;
  font-size: 9px;
  text-align: center;
  position: absolute;
  right: -5px;
  top: -5px;
  background: var(--color-brand);
  width: 16px;
  height: 16px;
  line-height: 16px;
  border-radius: 50%;
}

/* Countdown */
.miniature-countdown-box svg {
  font-size: 17px;
  position: relative;
  top: 1px;
  margin-right: 5px;
}

.header-event-banner-wrapper .miniature-countdown-wrapper .smoothing-countdown {
  background: #f0f0f0;
  padding: 3px 5px;
  border-radius: 6px;
}

.header-event-banner-wrapper .smoothing-countdown .countdown-time,
.header-event-banner-wrapper .countdown-box {
  color: var(--color-black);
}

/* Black Friday */
.countdown-bf div {
  background: var(--color-black);
  padding: 5px 10px;
  margin: 0 5px;
}

.wbmkt-strateXvign-titre {
  line-height: 40px;
  text-transform: uppercase;
  color: var(--color-brand);
  font-size: 28px;
  font-weight: 300;
  text-align: center;
  padding: 30px 10px;
  margin: 0;
}

.wbmkt-strateXvign-titre strong {
  font-weight: bold;
}

.wbmkt-rowXvign {
  display: flex;
  justify-content: space-between;
  max-width: 1020px;
  margin: 0 auto 20px auto;
  padding: 0 10px;
}

.wbmkt-rowXvign:last-child {
  margin-bottom: 0;
  padding-bottom: 40px;
}

.wbmkt-rowXvign a {
  display: block;
  margin-right: 20px;
  transition: all var(--transition-base);
}

.wbmkt-rowXvign a:hover {
  box-shadow: var(--shadow-md);
  transform: translateY(-3px);
}

.wbmkt-rowXvign a:last-child {
  margin-right: 0;
}

.wbmkt-rowXvign img {
  border: 1px solid var(--color-white);
}

.imgFluid {
  max-width: 100%;
  display: block;
  margin: 0 auto;
}

/* ==========================================
   MODULES
   ========================================== */

/* Nivo Slideshow */
.sticky-banner {
  z-index: 0;
}

.aone-slideshow {
  padding: 0;
}

.aone-slideshow .nivoSlider .nivo-directionNav .nivo-prevNav::before {
  content: '\f053';
}

.aone-slideshow .nivoSlider .nivo-directionNav .nivo-nextNav::before {
  content: '\f054';
}

.aone-slideshow .nivoSlider .nivo-directionNav .nivo-prevNav,
.aone-slideshow .nivoSlider .nivo-directionNav .nivo-nextNav {
  background: transparent;
  color: var(--color-secondary) !important;
}

.aone-slideshow .nivo-caption .caption-wrapper {
  align-items: flex-end;
}

.aone-slideshow .nivo-caption .caption-content {
  width: 60%;
  padding-left: 8px;
}

.aone-slideshow .nivo-caption .caption-content a {
  font-size: 18px;
}

.aone-slideshow .nivoSlider .nivo-controlNav a.active {
  background-color: #1779f1;
}

.slick-next,
.slick-prev {
  background-color: var(--color-secondary) !important;

  &:hover {
    background-color: var(--color-secondary-dark) !important;
  }
}

.aone-slideshow .nivoSlider .nivo-controlNav a {
  position: relative;
  display: inline-block;
  outline: none;
  font-size: 0;
  width: 20px;
  height: 4px;
  margin: 0 4px;
  border-radius: 0;
  border: none;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.4);
  transition: var(--transition-base);
}

.aone-slideshow .nivoSlider .nivo-controlNav a:not(.active) {
  background-color: rgba(0, 0, 0, 0.4);
}

.aone-slideshow .nivoSlider .nivo-controlNav {
  margin: 0 auto;
  width: 100%;
  left: 0;
}

.aone-slideshow .nivoSlider {
  overflow: visible;
}

/* Homeblocks */
.zhome_bannerprod img {
  width: 100%;
  height: auto;
  max-width: 100%;
  display: block;
}

.zhome_bannerprod {
  background-color: var(--color-white);
  height: auto;
  padding-top: 0.5em;
}

.zhome_bannerprod .product-list .product-list-wrapper {
  background-color: var(--color-white);
}

/* PS Specials */
.grid.col-h-240px.gap-20px.grid-h-2x {
  height: 520px;
}

.grid.direction-column {
  flex-direction: column;
}

.grid.gap-20px {
  margin: 0 20px;
  margin-bottom: -20px;
}

.grid {
  display: flex;
  flex-flow: row wrap;
  box-sizing: border-box;
}

#shellShocker .grid-col {
  background-color: var(--color-white);
  background-image: none;
  padding: 10px 0 10px 10px;
}

#shellShocker .tag .tag-text {
  background-image: linear-gradient(45deg, rgb(0, 106, 192) 0%, rgb(14, 117, 155) 59%, rgb(206, 82, 20) 100%);
  color: var(--color-white);
  transform: skewX(-10deg);
  border-radius: var(--border-radius-sm) 0;
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 0 6px;
  margin: 0 3px 5px -1px;
}

#shellShocker .p-special-info .qty {
  width: 25%;
  min-width: 60px;
}

.radius-m {
  border-radius: var(--border-radius);
}

@media not print {
  .show-img-bg .bg-gradient-lightblue {
    background-color: #ecf1fe;
    background-image: none;
  }
}

.grid.gap-20px>.grid-col {
  margin: 0 10px;
  margin-bottom: 20px;
}

.grid.col-w-3.gap-20px>.grid-col {
  max-width: calc(100% / 3 - 20px);
}

.grid.col-h-240px>.grid-col,
.grid>.grid-col.col-h-240px {
  height: 240px;
}

.grid.gap-20px.col-h-240px>.grid-col.col-h-2x,
.grid.gap-20px>.grid-col.col-h-480px {
  height: 520px;
}

/* Total Cross Sales */
.total-cross-vertical {
  width: 200px;
}

#pacrossUPPAGINA_PRODUCTH .bx-wrapper .bx-controls-direction a.bx-next {
  margin-right: 10px;
}

#pacrosssales_listAPPAGINA_PRODUCTF article div.product-description {
  height: auto;
}

#pacrosssales_listAPPAGINA_PRODUCTF .bx-viewport {
  height: 320px;
}

.pacrosssalesslider article {
  transition: all var(--transition-base);
  background-color: var(--color-white);
  border: none;
  padding-left: 5px;
  padding-right: 5px;
  padding-top: 0;
  padding-bottom: 5px;
  box-shadow: var(--shadow-md);
  border-radius: var(--border-radius-sm);
}

.pacrosssalesslider .product-title a {
  font-size: 0.875rem;
  font-weight: 700;
  white-space: initial;
  text-align: center;
  height: auto;
  background: white;
  overflow: visible;
  word-wrap: break-word;
  position: absolute;
  left: 0;
}

.pacrosssalesslider .product-title {
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  font-size: 12px;
}

.pacrosssalesslider .product-description:hover .product-title a {
  color: #2a55a5;
}

.pacrosssalesslider .product-flags {
  position: absolute;
  top: 12%;
  margin-top: -19px;
  left: 25px;
  margin-left: -19px;
  transform: scale(0);
  opacity: 0;
  transition: all var(--transition-base);
  border: 1px solid transparent;
}

.pacrosssalesslider .product-flags .wishlist {
  display: none;
}

.pacrosssalesslider .product-flags {
  position: static;
  opacity: 1;
  transform: none;
  margin: 0;
  border: none;
  transition: none;
}

.pacrosssalesslider .highlighted-informations a {
  position: relative;
  overflow: hidden;
  display: block;
  background: var(--color-white);
  border-radius: 50%;
  text-align: center;
  color: var(--color-brand-dark);
  font-size: 16px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  transform: scale(1);
  top: 50%;
  left: 40%;
  opacity: 0;
}

.pacrosssalesslider .highlighted-informations:hover a.quick-view {
  opacity: 1;
}

.pacrosssalesslider .highlighted-informations {
  height: 65%;
  position: absolute;
  top: 0;
}

.pacrosssalesslider .thumbnail-container:hover .highlighted-informations {
  opacity: 1;
  transform: scale(1);
}

.pacrosssalesslider article div.product-description {
  height: 75px;
  margin-top: 10px;
}

.pacrosssalesslider article div.thumbnail-container {
  height: 230px;
}

.pacrosssalesslider article div.thumbnail-container.right-column {
  height: 254px;
}

.pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
  position: relative;
  top: 14px;
  text-align: center;
}

.pacrosssalesslider article .btn.add-to-cart {
  font-size: 13px;
}

.separacioncrosssalessld .productscategory_h2,
.separacioncrosssalessldsup h2 {
  margin-bottom: 15px;
  text-transform: uppercase;
  text-align: center;
}

.separacioncrosssalessldsup h2.right-column {
  text-align: justify;
  font-size: 20px;
}

.product-price-and-shipping .product-prices {
  display: flex;
  justify-content: center;
}

.product-price-and-shipping .product-prices .price {
  color: var(--color-brand-dark) !important;
}

#crossselling_list_carUPPAGINA_PRODUCTH div.thumbnail-container {
  height: 250px;
}

#pacrossUPPAGINA_PRODUCTH h2 {
  font-size: 18px;
}

form#add-to-cart-or-refresh .qty .input-group {
  margin-bottom: 5px;
}

form#add-to-cart-or-refresh .qty input {
  height: 100%;
}

.pacrosssalesslider .clearfix {
  display: flex;
  margin: 5px;
  padding-left: 10px;
}

.pacrosssalesslider .clearfix form {
  display: flex;
}

.pacrosssalesslider .clearfix .qty {
  width: 45%;
  height: 34px;
}

.pacrosssalesslider .clearfix .qty input {
  height: 100%;
}

.pacrosssalesslider .clearfix .qty .input-group.bootstrap-touchspin {
  height: 100%;
  width: 100%;
}

.pacrosssalesslider .clearfix button.add-to-cart {
  background: var(--color-white);
  border-radius: 50%;
  padding: 5px;
  width: 38px;
  height: 38px;
  position: absolute;
  right: 10px;
  top: 60%;
}

.pacrosssalesslider .bootstrap-touchspin .input-group-btn-vertical {
  height: 100%;
}

#pacrosssales_listUPCOLUMNSRIGTH .bx-viewport {
  height: 330px;
}

.bx-viewport {
  height: 285px;
}

.pacrosssalesslider .thumbnail-container:hover .product-title a {
  word-wrap: break-word;
}

.separacioncrosssalessldsup .upper-box-viewport .bx-viewport {
  width: 103%;
}

.totalcross-space {
  margin-top: 20px;
}

.col-right-mod .bx-viewport {
  height: 366px;
}

.col-right-mod .total-cross-vertical {
  width: 250px;
}

.col-right-mod .pacrosssalesslider article div.product-description {
  height: auto;
  line-height: 16px;
}

.col-right-mod .pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
  position: static;
  margin-top: 5px;
}

.col-right-mod .pacrosssalesslider article div.thumbnail-container.right-column {
  height: auto;
}

.col-right-mod article.product-accesory {
  border: 1px solid var(--color-gray-lighter);
  background-color: var(--color-white);
}

.col-right-mod article.product-accesory .product-container {
  border: none;
}

.col-right-mod article.product-accesory .product-container:hover {
  border: none;
}

.pacrosssalesslider #products .product-miniature {
  height: 100%;
  padding: 15px;
  overflow: hidden;
  border-radius: var(--border-radius);
  border: 1px solid rgb(213, 211, 211);
}

.pacrosssalesslider .product-miniature .product-flag-wishlist {
  z-index: 99;
  position: relative;
  visibility: visible;
  pointer-events: auto;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
  background-color: var(--color-white);
  filter: drop-shadow(rgba(0, 0, 0, 0.2) 0 0 5px);
}

.bx-wrapper .bx-controls-direction a {
  font-variant: JIS04;
  margin-top: 38px;
  height: 20px;
  width: 20px;
  line-height: 0;
  position: absolute;
  top: 50%;
  margin-top: -10px;
  font-size: 0;
  overflow: hidden;
  outline: none;
  text-decoration: none;
}

.pacrosssalesslider .bx-prev {
  left: 5px;
}

.pacrosssalesslider .bx-next {
  right: 10px;
}

.product-list .product-list-wrapper,
.pacrossslidersectionvert {
  overflow: hidden;
  padding: 0 5px;
  margin: 0 0 15px;
}

.product-accesory .second-block .product-name a {
  font-size: 12px;
  line-height: 15px;
  text-align: left;
}

.title_block.right-column {
  padding: 5px;
  text-align: center;
  font-size: 1rem;
  font-family: var(--font-primary);
  line-height: 20px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 7.5px 0;
  color: rgb(64, 69, 83);
  font-weight: bold;
  text-transform: none;
}

/* Advanced CMS */
.zone-product-extra-fields .video-gaming span {
  display: none;
}

.zone-product-extra-fields .video-gaming img {
  max-height: 100%;
  width: 100%;
}

.zone-product-extra-fields .extra-field-type-modal .extra-title {
  background: var(--color-white);
}

.zone-product-extra-fields.hook-AfterProductThumbs {
  margin-top: 0;
}

/* Save Carts */
#module-savecarts-view form#form-products .cart-actions {
  display: flex;
  width: 40%;
}

#module-savecarts-view form#form-products .cart-actions a {
  width: 50%;
  font-size: 12px;
  margin-right: 10px;
}

/* Client Credit */
.block-userzone {
  background-color: var(--color-white);
  border-radius: var(--border-radius);
  padding: 10px 10px 2px 10px;
  border: 1px solid #eee;
  display: flex;
  flex-direction: column;
}

#creditpestana {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 34px 0;
  padding: 50px;
  border: 2px solid var(--color-brand);
  border-radius: var(--border-radius);
  margin-top: -31px;
}

#creditpestana h2 {
  color: var(--color-brand);
  font-weight: lighter;
  margin-bottom: 30px;
}

#creditpestana span {
  margin-bottom: 35px;
}

#creditpestana form {
  width: 80%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#creditpestana form button {
  padding: 4px 10px;
  margin-left: 16px;
  margin-top: -6px;
}

.credit-image {
  position: relative;
  display: flex;
  justify-content: center;
}

.export-image {
  position: relative;
  right: 0;
}

/* Products RMA */
.bulk-rma-request .info {
  background-color: var(--color-white);
  border-radius: 15px;
  padding: 10px 10px 2px 10px;
  border: 1px solid #eee;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}

.bulk-rma-request .info img {
  width: 35px;
  height: 35px;
  margin-right: 20px;
}

.bulk-rma-request .info p {
  width: 90%;
  text-align: justify;
  font-weight: bold;
}

.bulk-rma-request .deleterow {
  background: transparent;
}

.bulk-rma-request .deleterow svg {
  color: #db2020;
  font-size: 18px;
}

/* Jolisearch */
.jolisearch-body aside {
  margin-top: 8px;
}

.ui-menu.ui-jolisearch .jolisearch-body section[role="main"] .product .jolisearch-product span {
  font-size: 12px;
  text-wrap: wrap;
  word-break: break-all;
}

.ui-menu.ui-jolisearch .jolisearch-body .products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 0;
  list-style: none;
}

.ui-menu.ui-jolisearch .jolisearch-body .products-grid .product {
  display: flex;
  flex-direction: column;
  background-color: var(--color-white);
  border: 1px solid transparent;
  border-radius: var(--border-radius-sm);
  padding: 0.5rem;
  justify-content: space-between;
  min-height: 225px;
}

/* Imax Export CSV */
#module-imaxexportcsv-imaxExportCsv .export-csv ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

#module-imaxexportcsv-imaxExportCsv .export-csv ul li {
  list-style: none;
  width: 160px;
  height: 30px;
  background: var(--color-white);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-md);
  overflow: hidden;
  text-align: center;
  align-items: center;
  padding: 5px;
  margin: 10px;
}

.exports-button {
  width: 100%;
  display: flex;
  flex-direction: row;
  margin: 20px;
}

.export-button {
  width: 45%;
  margin: 0 15px;
  padding: 10px;
}

.export-button strong {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 19px;
}

.beu-button {
  margin-top: 25px;
  color: var(--color-white);
  background: var(--color-brand);
  padding: 30px 60px;
  font-size: 20px;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 0 0 rgba(4, 58, 236, 0.4);
  animation: pulse 2s infinite;
  width: 50%;
  display: block;
}

.beu-button:hover {
  animation: none;
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(4, 58, 236, 0.4);
  }

  70% {
    box-shadow: 0 0 0 20px rgba(78, 6, 247, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(78, 6, 247, 0);
  }
}

.beu-button span:nth-child(1) {
  width: 100%;
  height: 2px;
  background: linear-gradient(to bottom, #0c002b, #1779f1);
}

.product-flag-wishlist {
  position: static;
  display: flex;
  justify-content: center;
  align-items: center;
}

.product-flag-wishlist i {
  font-size: 22px;
  color: #ff4c4c !important;
}

.product-flag-wishlist.print-link i {
  font-size: 28px !important;
  color: var(--color-brand-dark) !important;
  margin-top: 0 !important;
}

.product-flag-wishlist.print-link a {
  display: flex;
  align-items: start;
}

#product .product-price .container-actions-product {
  align-items: center;
  justify-content: center;
}


/* ==========================================
   UTILITIES & EFFECTS
   ========================================== */

/* Scroll To Top Button */
#scrollTopButton .scroll-button {
  display: block;
  width: 40px;
  height: 40px;
  border: 2px solid;
  line-height: 36px;
  font-size: 25px;
  color: var(--color-white);
  background-color: var(--color-brand);
  background-image: url(../img/3GYdfG.png);
}

/* Recaptcha */
.grecaptcha-badge {
  display: none;
}

/* Zoom Effect */
.zoomIn {
  display: inline-block;
  text-align: center;
}

.zoomIn figure {
  overflow: hidden;
  border: 2px solid #eee;
  margin: 0;
}

.zoomIn img {
  transform: scale(1);
  transition: var(--transition-base);
}

.zoomIn:hover img {
  transform: scale(1.03);
}

/* Raise Button */
.raise-button {
  background: none;
  border: 2px solid var(--color-brand);
  font: inherit;
  line-height: 1;
  margin: 0.5em;
  padding: 1em 2em;
  color: var(--color-brand);
  transition: var(--transition-fast);
  text-transform: uppercase;
}

.raise-button a:hover {
  text-decoration: none;
  color: var(--color-brand);
}

.raise-button:hover,
.raise-button:focus {
  box-shadow: 0 0.5em 0.5em -0.4em var(--color-brand);
  transform: translateY(-0.25em);
}

/* Hover Red */
.hoverRed:hover,
.hoverRed:focus {
  color: red;
}

/* Cookie Message */
.cookie-message .cookie-message-content a {
  color: #14a7d0;
  text-decoration: none;
}

.cookie-message .cookie-close-button {
  margin-right: 10px;
  border-radius: 25px;
}

/* Alerts */
.alert svg {
  font-size: 18px;
  margin-right: 8px;
}

.alert-info::before {
  content: '';
}

/* Drift Zoom */
.drift-zoom-pane {
  z-index: 999999999;
}

.zoomContainer {
  display: none;
}

/* Video Show Quality */
.video-show-quality {
  opacity: 1;
}

.cp-wrapper.cp-in-out {
  opacity: 1;
}

/* Banner Effects */
.banner-column:hover {
  opacity: 0.85;
}

.banner1 span:not(.btn) {
  max-width: 50%;
  text-align: left;
}

/* Water Effect */
.water {
  position: relative;
  width: 90%;
}

.water img.top {
  z-index: 3;
  animation: updown 4s infinite;
}

.water img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.water img.watch {
  position: relative;
  vertical-align: top;
  z-index: 2;
  width: 100%;
}

.water img.bottom {
  z-index: 1;
  animation: updown 4s 2s infinite;
}

@keyframes updown {

  0%,
  50%,
  to {
    top: 0;
  }

  25% {
    top: -0.2em;
  }

  75% {
    top: 0.2em;
  }
}

/* Banner 5 Shine Effect */
.banner5 {
  position: relative;
  display: block;
  overflow: hidden;
  margin-top: 30px;
}

.banner5::after {
  position: absolute;
  top: 0;
  left: -100%;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-25deg);
  z-index: 2;
}

.banner5 img {
  width: 100%;
  transition: var(--transition-slow);
  transform: scale(1.05);
}

.banner5:hover::after {
  animation: shine 1.5s;
}

.banner5:hover img {
  transform: scale(1);
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

/* Glow Effect */
.glow {
  color: var(--color-white);
  text-align: center;
  animation: glow 1s ease-in-out infinite alternate;
}

@keyframes glow {
  from {
    text-shadow: 0 0 2px var(--color-white), 0 0 4px var(--color-white), 0 0 6px #42a7f6,
      0 0 8px #42a7f6, 0 0 10px #42a7f6, 0 0 12px #42a7f6, 0 0 14px #42a7f6;
  }

  to {
    text-shadow: 0 0 8px var(--color-white), 0 0 10px #59a4fd, 0 0 12px #59a4fd,
      0 0 14px #59a4fd, 0 0 16px #59a4fd, 0 0 18px #59a4fd, 0 0 20px #59a4fd;
  }
}

/* ==========================================
   WORK WITH US (TRABAJA CON NOSOTROS)
   ========================================== */
.btn-black-outline,
.btn-black-outline:active {
  background: none;
  border-color: var(--color-black);
  color: var(--color-black);
  border: 1px solid;
}

.btn-md {
  font-weight: 500;
  letter-spacing: 1px;
  margin: 0.4rem 0.8rem;
  transition: all var(--transition-base);
  padding: 1rem 3rem;
  border-radius: var(--border-radius-sm);
}

.btn-black-outline:hover,
.btn-black-outline:focus,
.btn-black-outline.focus,
.btn-black-outline.active {
  color: var(--color-white);
  background-color: #333333;
  border-color: #333333;
}

.main-gallery {
  background: var(--color-white);
  box-shadow: var(--shadow-md);
  border-top: solid 10px var(--color-brand);
  margin-bottom: 40px;
  background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
    url(https://online.comercialav.com/img/home/banners/carousel/prueba3.jpg);
  background-size: cover;
  background-position: center;
  position: relative;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.gallery-cell {
  width: 100%;
}

.testimonial {
  text-align: center;
  max-width: 850px;
  margin: 100px auto 130px auto;
  padding: 0 20px;
  color: var(--color-white);
}

.testimonial-avatar {
  width: 100px;
  border-radius: 50%;
}

.testimonial-quote {
  display: block;
  font-size: 24px;
  font-weight: 300;
  padding: 10px 0;
}

.testimonial-author {
  display: block;
  font-weight: 800;
  color: var(--color-brand);
}

.flickity-page-dots {
  bottom: 25px;
}

.flickity-page-dots .dot.is-selected {
  background: var(--color-brand);
}

.seo-block {
  display: flex;
  align-items: center;
}

h2.seo-heading {
  font-size: clamp(30px, 5vw, 40px);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

h2.seo-heading .text-muted {
  font-size: clamp(18px, 3vw, 26px);
}

.lead {
  font-size: 16px;
}

.btn-file-work {
  font-size: 23px;
  padding: 12px 0;
}

.hvr-bubble-float-right::before {
  border-color: transparent transparent transparent var(--color-brand);
}

.hvr-bubble-float-right:active::before,
.hvr-bubble-float-right:focus::before,
.hvr-bubble-float-right:hover::before {
  transform: translateX(25px);
}

.gallery-cell strong {
  color: var(--color-white);
}

.marketing {
  margin-top: 60px;
}

/* ==========================================
   CATEGORIES
   ========================================== */

/* Categories Top 2 */
.categorias-destacadas {
  margin-bottom: 1em;
}

.vc_row {
  margin-left: -15px;
  margin-right: -15px;
}

.vc_column_container>.vc_column-inner {
  box-sizing: border-box;
  padding-left: 15px;
  padding-right: 15px;
  width: 100%;
}

.categories-inicio.wpb_column.vc_column_container.vc_col-sm-3 {
  max-height: 450px;
}

.vc_col-sm-3 {
  width: 25%;
}

.vc_col-sm-1,
.vc_col-sm-10,
.vc_col-sm-11,
.vc_col-sm-12,
.vc_col-sm-2,
.vc_col-sm-3,
.vc_col-sm-4,
.vc_col-sm-5,
.vc_col-sm-6,
.vc_col-sm-7,
.vc_col-sm-8,
.vc_col-sm-9 {
  float: left;
}

.wpb_button,
.wpb_content_element,
ul.wpb_thumbnails-fluid>li {
  margin-bottom: 35px;
}

.home-list-categories ul.categories {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
  margin-top: 1rem;
}

.home-list-categories-2 ul.categories>li.category {
  max-width: 100%;
  flex: 0 0 100%;
  padding: 0;
}

.home-list-categories ul.categories>li.category {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.home-list-categories .category-media-left {
  display: block;
  margin-bottom: 0.5em;
}

.category-media-left {
  width: 80%;
  margin: 0 auto;
}

.category-media {
  background-color: var(--color-white);
  padding: 6.5em 1em 1em 1em;
  margin-top: -7em;
  border-top: 10px solid var(--color-brand);
}

.home-list-categories .category-media-body {
  flex: 0 0 100%;
  max-width: 100%;
}

.home-list-categories .category-media-heading {
  color: #292929;
  font-size: 1em;
  line-height: 1.417em;
}

.home-list-categories ul.sub-categories {
  display: initial;
  text-align: left;
}

.home-list-categories ul.categories,
.home-list-categories ul.sub-categories {
  padding-left: 0;
  list-style: none;
}

/* ==========================================
   MISCELLANEOUS
   ========================================== */
.outside-container {
  padding: 0 10px;
}

.label-mod {
  color: #383838;
  border-radius: 0.25em;
  padding: 0.15em 0.4em;
  text-align: center;
  vertical-align: baseline;
  white-space: nowrap;
  line-height: 1;
  display: inline;
  font-size: 12px;
  font-weight: 400;
}

.badge-primary[href]:focus,
.badge-primary[href]:hover {
  background-color: var(--color-brand-dark);
}

.regalos-navidad-22 .col-lg-3 .rte a:hover {
  transition: var(--transition-base);
  cursor: pointer;
  filter: saturate(1.6);
  transform: translateY(3px);
}

.column-block {
  overflow: hidden;
}

.demoup-product-description-wrapper {
  display: none;
}

div#onepagecheckoutps div#onepagecheckoutps_step_review #list-voucher-allowed #display_cart_vouchers li .code {
  color: var(--color-brand-dark);
}

.relPC_option>input:checked~.relPC_option-border {
  border: 0.07692rem solid #ccc;
}

.relPC-page-product-box {
  display: block;
}

.print-link i {
  color: #3d3d3d;
  margin-left: 5px;
}

.main-product-details .product-information {
  padding-left: 2%;
  padding-right: 2%;
}

.body_misfacturas,
.header_misfacturas {
  width: 16.5%;
}

#module-misfacturas-facturas .importe-total {
  margin-left: 30px;
  position: relative;
  right: 12px;
}

#module-misfacturas-facturas .importe-total-texto {
  width: 100%;
}

.subheader-info a {
  padding: 10px;
  color: #3d3d3d;
  font-size: 19px;
  font-weight: bolder;
  display: flex;
}

.subheader-info img {
  float: left;
  padding-right: 10px;
  display: flex;
  align-self: center;
}

.subheader-info span {
  display: block;
  line-height: 17px;
}

.subheader-info span span {
  font-size: 13px;
  font-weight: normal;
}

#order-detail .box .btn-toolbar {
  display: block;
}

#history .container {
  width: 100%;
}

body#discount section#content .container {
  width: 100%;
}

#search_widget[data-search-controller-url~='https://online.comercialav.com/buscar'] {
  display: none;
}

#products .search-widget:first-child,
#module-sqlpyme-documents .orders {
  display: none;
}

/* ==========================================
   PRINT STYLES
   ========================================== */
@media print {

  #header,
  #menu-icon,
  #search_widget,
  #footer,
  .featured-products,
  .js-qv-mask,
  .print-link,
  .product-additional-info,
  a.gformbuilderpro_openform,
  div#group_accessories,
  .extra-content.typo,
  #pacrossUPCOLUMNSRIGTH,
  .product-add-to-cart,
  #pacrossAPPAGINA_PRODUCTF,
  .col-right-mod,
  .reassurance-hook,
  .product-attributes,
  .breadcrumb,
  .product-tabs .nav-item:not(:first-child),
  .product-information,
  .product-flags,
  .product-availability-top,
  .whatsappchat-anchor,
  .relPC-page-product-box,
  .product-discount,
  #relPC-page-product-box,
  #sticky-product-block,
  #sticky-banner,
  #banner-placeholder {
    display: none;
  }

  #_desktop_logo {
    width: 20%;
    float: left;
  }

  .header-phone-address {
    width: 50%;
    float: left;
  }

  .header-phone,
  .header-address {
    text-align: left;
    float: left;
    display: block;
    width: 100%;
  }

  .header-address {
    margin-top: 12px;
  }

  .print-product-image {
    width: 50%;
    float: left;
    border: 1px solid black;
  }

  .print-product-price {
    width: 50%;
    float: left;
  }

  #product .product-description-short {
    max-height: auto;
  }

  #product .more-btn {
    display: none;
  }
}

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

@media (min-width: 1200px) {
  .container {
    width: 1220px;
    max-width: 1220px;
  }
}

@media (min-width: 1199px) {

  #product .product-left,
  #product .product-right .product-right-content .col-12.col-xl-4 {
    position: sticky;
    top: 110px;
    height: 100%;
  }

  #search_widget .ui-menu.ui-widget.ui-widget-content {
    max-width: 1102px;
    top: 69px;
  }
}

@media (min-width: 768px) {
  #header .header-main-menu-wrapper {
    min-height: 68px;
  }

  .ui-menu.ui-jolisearch .jolisearch-body .products-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 991px) {
  #footer .container .row {
    padding: 25px;
  }

  #footer .container .row .footer-left {
    flex: 0 0 100%;
    width: 100%;
  }

  #footer .container .row .footer-right {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }

  #footer-rigth .footer-menu .row {
    padding: 0;
  }
}

@media (max-width: 768.98px) {
  .cart-preview .cart-header .cart-link .icon-cart {
    top: -5px;
  }

  #header .account-link.account .btn-primary {
    padding: 5px 0;
  }

  #header .is-sticky .account-link.account {
    display: none;
  }

  #header .header-logo {
    width: 25%;
  }

  #header .customer-signin-module {
    width: 75%;
    top: 10px;
  }

  .customer-signin-module {
    width: 100%;
  }

  .block_id_50 .specials-products {
    float: left;
  }

  .header-nav {
    height: 10px;
  }

  a.whatsappchat-anchor1,
  a.whatsappchat-anchor3 {
    top: 32%;
  }

  .whatsappchat-anchor {
    position: fixed;
    width: 60px;
    height: 60px;
    padding: 0;
    bottom: 100px;
    right: 20px;
    left: auto;
    top: auto;
    border-radius: 50%;
    background-color: #25D366;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-md);
    z-index: var(--z-sticky);
    transform: rotate(0deg);
  }

  .whatsappchat-anchor .whatsapp {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
  }

  .whatsappchat-anchor .whatsapp span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: white;
    font-size: 30px;
    background-color: transparent;
  }

  .whatsappchat-anchor .whatsapp span span {
    display: none;
  }

  .whatsappchat-anchor .whatsapp svg {
    font-size: 30px;
    color: white;
  }

  .search-widget form input[type='text'] {
    font-size: 11px;
  }

  article .prestacart.clearfix .prestacart_add {
    margin-left: 0;
    width: 100%;
  }

  article .prestacart.clearfix {
    flex-direction: column;
    padding: 5px;
  }

  article .prestacart.clearfix .prestacart_add button {
    width: 100%;
  }

  article .first-prices {
    width: 100%;
    justify-content: space-around;
  }

  .product-list .product-mobile-slider.grid .product-miniature {
    min-width: 320px;
  }

  .regular-price {
    position: relative;
    left: 2px;
    top: 0;
  }

  .date-avaliable {
    margin-left: 8px;
  }

  .smoothing-countdown .countdown-time {
    font-size: 9px;
  }

  .miniature-countdown-box svg {
    font-size: 12px;
  }

  .aone-slideshow .a-banner img {
    height: 200px;
  }

  .aone-slideshow {
    margin-bottom: 5px;
  }

  .home-top-category .submenucat-item {
    width: 44%;
    margin-bottom: 10px;
  }

  .home-top-category {
    flex-wrap: wrap;
  }

  .home-top-category .submenucat-item-img {
    height: auto;
  }

  .footer-menu .row {
    flex-wrap: nowrap;
  }

  #footer .container .row .footer-right .col-lg-4.linklist {
    width: 47%;
    flex: 0 0 47%;
  }

  .footer-right .row .col-lg-8.linklist {
    flex: 0 0 40%;
    width: 40%;
  }

  #footer .contact hr {
    margin-right: 0;
  }

  #footer {
    font-size: 12px;
  }

  .price-ecotax {
    margin-top: 10px;
  }

  .reserve-text.advisement {
    font-size: 11px;
  }

  .product-right-content .page-heading {
    font-size: 20px;
  }

  .main-product-details .product-manufacturer .brand-logo {
    width: 100px;
  }

  .main-product-details .product-information {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .separacioncrosssalessld .productscategory_h2,
  .separacioncrosssalessldsup h2 {
    font-size: 16px;
    text-align: center;
  }

  .cookie-message .cookie-message-wrapper {
    flex-direction: column;
  }

  .cookie-message .cookie-close-button {
    margin-bottom: 10px;
    left: -28px;
  }

  .pestanas {
    flex-direction: column;
  }

  #creditpestana {
    padding: 40px 20px;
    text-align: justify;
  }

  #creditpestana h2 {
    margin-bottom: 19px;
    line-height: 29px;
  }

  .export-image {
    right: 10px;
  }

  #creditpestana form {
    flex-direction: column;
  }

  #creditpestana form button {
    width: 100%;
    margin-top: 5px;
  }

  .bulk-rma-request .info {
    flex-direction: column;
    align-items: center;
  }

  .bulk-rma-request .info img {
    margin-bottom: 15px;
  }

  #div_onepagecheckoutps_info {
    text-align: center;
  }

  #onepagecheckoutps #div_onepagecheckoutps_login {
    display: none;
  }

  .icon-work-img {
    width: 250px;
    margin: auto;
  }

  .left-padding-work,
  .right-padding-work {
    padding: 0;
    margin: 5px 0;
  }

  .btn-file-work {
    font-size: 13px;
  }

  .video-banner-home {
    width: 100%;
    height: auto;
    margin-top: 30px;
  }

  #hook_shopping_cart_footer {
    position: inherit;
    width: 100%;
  }

  .product-list .grid .product-miniature .product-name a {
    overflow: visible;
    white-space: wrap;
  }

  .ui-menu.ui-jolisearch .jolisearch-body .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  #block-reassurance {
    display: flex;
    flex-direction: column;
  }

  #block-reassurance a {
    width: 100%;
  }

  .block-reassurance h5 {
    flex-direction: column;
  }

  .block-reassurance h5 i {
    margin-bottom: 10px;
  }

  .header-event-banner-wrapper p {
    font-size: 11px;
  }

  #relPC-page-product-box {
    display: none;
  }
}

@media (max-width: 645px) {
  .d-sm-block {
    display: block;
  }

  .d-sm-none {
    display: none;
  }

  #footer {
    font-size: 0.8125rem;
  }

  #footer .footer-main h2,
  #footer .footer-main h3,
  #footer .footer-main h4 {
    font-size: 0.8125rem;
  }

  .footer-left-column .right-part .link-block {
    margin-left: 35px;
    padding: 0;
  }

  #footer .container .row {
    padding: 10px;
  }

  #footer .footer-left-column .footer-img {
    margin: 0 30px;
  }

  .footer-right .row .col-lg-8.linklist {
    display: flex;
    flex-direction: column;
    flex: 0 0 100%;
  }

  .footer-right .row .col-lg-8.linklist:only-child() {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

@media (max-width: 540px) {
  .wbmkt-rowXvign {
    flex-wrap: wrap;
  }

  .wbmkt-rowXvign a,
  .wbmkt-rowXvign a:last-child {
    margin: 10px auto;
  }

  .wbmkt-rowXvign--splitBy2 a {
    width: 46%;
  }
}

@media (max-width: 428px) {

  #extraModal70 .modal-content video,
  #extraModal71 .modal-content video,
  #extraModal72 .modal-content video,
  #extraModal73 .modal-content video,
  #extraModal74 .modal-content video {
    width: 100%;
    height: auto;
  }

  #index .product-list #shellShocker {
    width: 100%;
    max-width: 100%;
    display: block;
    height: auto;
  }

  .grid.col-w-3.gap-20px>.grid-col {
    max-width: calc(100% / 1);
  }

  .pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
    top: 27px;
  }

  #hook_shopping_cart_footer .pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
    top: 16px;
  }

  /* ... (continuación del código anterior) ... */

  @media (max-width: 428px) {

    #extraModal70 .modal-content video,
    #extraModal71 .modal-content video,
    #extraModal72 .modal-content video,
    #extraModal73 .modal-content video,
    #extraModal74 .modal-content video {
      width: 100%;
      height: auto;
    }

    #index .product-list #shellShocker {
      width: 100%;
      max-width: 100%;
      display: block;
      height: auto;
    }

    .grid.col-w-3.gap-20px>.grid-col {
      max-width: calc(100% / 1);
    }

    .pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
      top: 27px;
    }

    #hook_shopping_cart_footer .pacrosssalesslider article div.thumbnail-container .product-price-and-shipping {
      top: 16px;
    }

    #PM_ASBlockOutput_1 {
      display: none;
    }

    #PM_ASBlockOutput_2 {
      display: inline;
    }

    #PM_ASBlockOutput_2 .card {
      padding: 10px 30px;
    }

    #PM_ASBlockOutput_2 .card .card-header .PM_ASearchTitle {
      display: flex;
      justify-content: space-between;
    }

    .PM_ASCriterionsGroupTitle {
      display: flex;
      justify-content: space-between;
      padding: 8px 10px;
      border-bottom: 1px solid;
    }

    .PM_ASBlockOutputHorizontal .PM_ASCriterionsGroup {
      padding: 0;
    }

    .PM_ASResetGroup {
      border: 1px solid #ff4c4c;
      padding: 5px 10px;
      color: #ff4c4c;
      font-size: 12px;
      min-width: 100%;
      float: left;
      background: #fdeaea;
    }

    .PM_ASBlockOutputHorizontal .PM_ASCriterionsGroup:first-child {
      margin-top: 10px;
    }

    .PM_ASBlockOutputHorizontal .PM_ASCriterionsGroup:first-child .PM_ASCriterionsGroupTitle {
      border-top: 1px solid;
    }

    .PM_ASBlockOutput .PM_ASCriterionsGroupTitle {
      margin: 0;
    }

    .PM_ASCriterionStepEnable {
      border-bottom: 1px solid var(--color-black);
      opacity: 1;
      padding: 15px 0;
    }

    .PM_ASLabelCheckbox {
      width: 100%;
    }

    .PM_ASLabelLink {
      display: flex;
      justify-content: space-between;
      width: 100%;
    }

    .product-miniature .min-stock-islas {
      display: block;
    }

    .PM_ASSelections {
      padding: 5px 10px;
    }

    .left-padding-work,
    .right-padding-work {
      padding: 0 35px;
    }

    #header .subheader-info a {
      justify-content: center;
      padding: 15px 0;
      border: dashed 1px #3d3d3d;
      margin: 5px 0;
    }
  }

  /* ==========================================
   ACCESSIBILITY IMPROVEMENTS
   ========================================== */

  /* Focus Visible for Better Keyboard Navigation */
  :focus-visible {
    outline: 2px solid var(--color-brand);
    outline-offset: 2px;
  }

  /* Reduced Motion Support */
  @media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
  }

  /* High Contrast Mode Support */
  @media (prefers-contrast: high) {
    :root {
      --color-border: var(--color-black);
    }

    .product-container,
    .card,
    .cms-block {
      border-width: 2px;
    }
  }

  /* ==========================================
   MODERN CSS FEATURES (2026)
   ========================================== */

  /* Container Queries (where supported) */
  @container (min-width: 768px) {
    .product-miniature .product-name {
      font-size: clamp(13px, 1.2vw, 16px);
    }
  }

  /* Color Mix Functions (where supported) */
  @supports (background: color-mix(in srgb, red 50%, blue)) {
    .btn-primary:hover {
      background: color-mix(in srgb, var(--color-primary) 80%, white);
    }

    .btn-secondary:hover {
      background: color-mix(in srgb, var(--color-secondary) 80%, white);
    }
  }

  /* CSS Nesting (where supported) */
  @supports (selector(:has(*))) {
    .product-container:has(.product-flag.new) {
      border-color: var(--color-new);
    }

    .product-container:has(.product-flag.sale) {
      border-color: var(--color-sale);
    }
  }

  /* Subgrid Support */
  @supports (grid-template-rows: subgrid) {
    .product-list.grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    }
  }

  /* Logical Properties for Better RTL Support */
  .product-miniature {
    padding-inline: var(--spacing-sm);
    margin-block-end: var(--spacing-md);
  }

  .breadcrumb {
    padding-inline: var(--spacing-sm);
    padding-block: var(--spacing-xs);
  }

  /* Cascade Layers for Better Specificity Management */
  @layer base, components, utilities;

  @layer base {
    body {
      font-family: var(--font-primary);
    }
  }

  @layer components {
    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: var(--spacing-sm) var(--spacing-md);
      border-radius: var(--border-radius-sm);
      transition: all var(--transition-base);
    }
  }

  @layer utilities {
    .text-center {
      text-align: center;
    }

    .text-left {
      text-align: left;
    }

    .text-right {
      text-align: right;
    }
  }

  /* ==========================================
   PERFORMANCE OPTIMIZATIONS
   ========================================== */

  /* Content Visibility for Better Performance */
  .product-miniature {
    content-visibility: auto;
    contain-intrinsic-size: 400px;
  }

  /* Will-change for Animations */
  .product-container:hover,
  .btn:hover,
  .card:hover {
    will-change: transform;
  }

  /* GPU Acceleration */
  .pacrosssalesslider article,
  .product-thumbnail img,
  .modal {
    transform: translateZ(0);
    backface-visibility: hidden;
  }

  /* ==========================================
   UTILITY CLASSES
   ========================================== */

  /* Display */
  .d-none {
    display: none !important;
  }

  .d-block {
    display: block !important;
  }

  .d-flex {
    display: flex !important;
  }

  .d-grid {
    display: grid !important;
  }

  /* Flex Utilities */
  .flex-row {
    flex-direction: row;
  }

  .flex-column {
    flex-direction: column;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-around {
    justify-content: space-around;
  }

  .align-center {
    align-items: center;
  }

  .align-start {
    align-items: flex-start;
  }

  .align-end {
    align-items: flex-end;
  }

  /* Spacing */
  .m-0 {
    margin: 0 !important;
  }

  .p-0 {
    padding: 0 !important;
  }

  .mt-1 {
    margin-top: var(--spacing-xs);
  }

  .mt-2 {
    margin-top: var(--spacing-sm);
  }

  .mt-3 {
    margin-top: var(--spacing-md);
  }

  .mb-1 {
    margin-bottom: var(--spacing-xs);
  }

  .mb-2 {
    margin-bottom: var(--spacing-sm);
  }

  .mb-3 {
    margin-bottom: var(--spacing-md);
  }

  /* Typography */
  .text-uppercase {
    text-transform: uppercase;
  }

  .text-lowercase {
    text-transform: lowercase;
  }

  .text-capitalize {
    text-transform: capitalize;
  }

  .font-bold {
    font-weight: 700;
  }

  .font-normal {
    font-weight: 400;
  }

  .font-light {
    font-weight: 300;
  }

  /* Colors */
  .text-primary {
    color: var(--color-primary);
  }

  .text-secondary {
    color: var(--color-secondary);
  }

  .text-brand {
    color: var(--color-brand);
  }

  .text-success {
    color: var(--color-success);
  }

  .text-warning {
    color: var(--color-warning);
  }

  .text-danger {
    color: var(--color-danger);
  }

  .text-white {
    color: var(--color-white);
  }

  .text-black {
    color: var(--color-black);
  }

  /* Background Colors */
  .bg-primary {
    background-color: var(--color-primary);
  }

  .bg-secondary {
    background-color: var(--color-secondary);
  }

  .bg-brand {
    background-color: var(--color-brand);
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-light {
    background-color: var(--color-lightest);
  }

  /* Border Radius */
  .rounded {
    border-radius: var(--border-radius);
  }

  .rounded-sm {
    border-radius: var(--border-radius-sm);
  }

  .rounded-lg {
    border-radius: var(--border-radius-lg);
  }

  .rounded-full {
    border-radius: 9999px;
  }

  /* Shadows */
  .shadow-sm {
    box-shadow: var(--shadow-sm);
  }

  .shadow-md {
    box-shadow: var(--shadow-md);
  }

  .shadow-lg {
    box-shadow: var(--shadow-lg);
  }

  .shadow-xl {
    box-shadow: var(--shadow-xl);
  }

  .shadow-none {
    box-shadow: none;
  }

  /* Width */
  .w-full {
    width: 100%;
  }

  .w-auto {
    width: auto;
  }

  /* ==========================================
   BROWSER-SPECIFIC FIXES
   ========================================== */

  /* Safari Fixes */
  @supports (-webkit-appearance: none) {
    .product-thumbnail img {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
    }
  }

  /* Firefox Fixes */
  @-moz-document url-prefix() {
    .product-container {
      -moz-osx-font-smoothing: grayscale;
    }
  }

  /* Edge Fixes */
  @supports (-ms-ime-align: auto) {
    .grid {
      display: -ms-grid;
    }
  }


  /* ==========================================
   END OF STYLESHEET
   ========================================== */

  /**
 * Compiled with ❤️ for Comercial AV
 * Version: 2.0.0
 * Last Updated: 2025-10-24
 * Optimized for modern browsers (2026)
 * 
 * Features:
 * - CSS Custom Properties (Variables)
 * - Modern Color Palette
 * - Responsive Design
 * - Accessibility Improvements
 * - Performance Optimizations
 * - Container Queries
 * - Logical Properties
 * - Color-mix Functions
 * - Reduced Motion Support
 * - High Contrast Mode Support
 */

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-xs);
    width: 100%;
    padding: var(--spacing-sm) var(--spacing-md);
    margin-bottom: var(--spacing-sm);
    border: none;
    border-radius: var(--border-radius);
    background: var(--color-warning);
    color: var(--color-dark);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    box-shadow: var(--shadow-sm);
    transition: background var(--transition-base), color var(--transition-base), transform var(--transition-fast), box-shadow var(--transition-base);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products:hover {
    background: #ffb300;
    color: var(--color-dark);
    box-shadow: var(--shadow-md);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products:active {
    transform: translateY(1px) scale(0.98);
    box-shadow: var(--shadow-sm);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products .material-icons {
    color: inherit;
    transition: transform var(--transition-fast), color var(--transition-fast);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products:hover .material-icons {
    transform: rotate(-12deg) scale(1.05);
    color: var(--color-danger);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products:active .material-icons {
    transform: rotate(-18deg) scale(1.1);
  }

  #checkout #opc_main #opc_cart #btn-opc_remove_cart_products:focus-visible {
    outline: 3px solid rgba(255, 193, 7, 0.45);
    outline-offset: 2px;
  }
}

/* ==========================================
   REGISTRATION FORMS
   ========================================== */
.registration-card {
  background: var(--color-white);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-lg);
  padding: var(--spacing-lg);
  max-width: 1100px;
  margin: 0 auto var(--spacing-xl);
}

.register-tabs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-lg);
}

.register-tab {
  background: var(--color-lightest);
  border: 1px solid transparent;
  border-radius: var(--border-radius);
  padding: var(--spacing-md) var(--spacing-lg);
  text-align: left;
  cursor: pointer;
  transition: all var(--transition-base);
  color: var(--color-dark);
}

.register-tab .register-tab-title {
  display: block;
  font-weight: 700;
  font-size: 1rem;
}

.register-tab .register-tab-sub {
  display: block;
  margin-top: 0.35rem;
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--color-gray);
}

.register-tab:hover,
.register-tab:focus {
  border-color: var(--color-secondary);
  box-shadow: 0 8px 18px rgba(74, 123, 236, 0.18);
}

.register-tab.active {
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
  color: var(--color-white);
  box-shadow: 0 12px 25px rgba(74, 123, 236, 0.25);
}

.register-tab.active .register-tab-sub {
  color: rgba(255, 255, 255, 0.8);
}

.tab-content .tab-pane {
  display: none;
  border-radius: var(--border-radius-lg);
  border: 1px solid rgba(0, 0, 0, 0.05);
  padding: var(--spacing-lg);
  background: var(--color-white);
}

.tab-content .tab-pane.active {
  display: block;
}

.form-control-label {
  font-weight: 600;
}

.form-control-submit {
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
  color: var(--color-white);
  border: 0;
  border-radius: 50px;
  padding: 0.85rem 2.5rem;
  font-weight: 600;
  transition: transform var(--transition-fast), box-shadow var(--transition-base);
}

.form-control-submit:hover,
.form-control-submit:focus {
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(74, 123, 236, 0.25);
}

.register-form .box-shadow {
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-md) var(--spacing-lg);
  margin-bottom: var(--spacing-md);
  background: var(--color-lightest);
}

.register-form .title h1,
.register-form .title h4 {
  font-weight: 700;
  color: var(--color-primary);
}

.register-form .checkbox input[type="checkbox"] {
  accent-color: var(--color-secondary);
}

.register-form .btn-small {
  border-radius: 999px;
}

@media (max-width: 767.98px) {
  .registration-card {
    padding: var(--spacing-md);
  }

  .register-tabs {
    grid-template-columns: 1fr;
  }

  .tab-content .tab-pane {
    padding: var(--spacing-md);
  }
}

.register-form .box-shadow+.box-shadow {
  margin-top: var(--spacing-md);
}

.register-form .col-lg-3.form-control-label {
  display: flex;
  align-items: center;
  font-weight: 600;
}

.register-form .checkbox {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.register-form .checkbox label {
  margin: 0;
  font-weight: 500;
}

.register-hint {
  text-align: center;
  font-weight: 500;
  color: var(--color-gray);
  margin-bottom: var(--spacing-md);
}

.register-forms {
  position: relative;
}

.register-pane {
  display: none;
  border-radius: var(--border-radius-lg);
  border: 1px solid rgba(0, 0, 0, 0.05);
  padding: var(--spacing-lg);
  padding-bottom: 100px;
  background: var(--color-white);
}

.register-pane.active {
  display: block;
}

.register-form .button-right {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: var(--spacing-sm);
}

.register-form .button-right .cf-turnstile {
  flex: 0 0 auto;
  transform: scale(0.95);
  transform-origin: left center;
}

.register-form .button-right .form-control-submit {
  flex: 0 0 auto;
  min-width: 160px;
}

.register-form form {
  width: 100%;
}

.register-form .box-shadow {
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-lg);
  margin-bottom: var(--spacing-lg);
  background: rgba(74, 123, 236, 0.05);
}

.register-form .form-group {
  margin-bottom: var(--spacing-sm);
}

.register-form .form-group.row {
  margin-left: 0;
  margin-right: 0;
}

.register-form .form-group.row>[class*='col-'] {
  padding-left: 0;
  padding-right: var(--spacing-sm);
}

.register-form .form-group.row>[class*='col-']:last-child {
  padding-right: 0;
}

.register-form .form-group.row.align-center {
  align-items: center;
}

.register-form .checkbox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-xs);
}

.register-form .form-group.row>[class*='col-'] .form-control {
  width: 100%;
}

.register-form .info-company-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-md);
}

.register-form .info-company-options .option-group,
.register-form .info-company-options .option-group-full {
  background: var(--color-white);
  border-radius: var(--border-radius);
  padding: var(--spacing-sm) var(--spacing-md);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-md);
  border: 1px solid rgba(74, 123, 236, 0.15);
  box-shadow: 0 4px 12px rgba(74, 123, 236, 0.08);
}

.register-form .info-company-options .option-group-full {
  grid-column: 1 / -1;
  gap: var(--spacing-sm);
}

.register-form .info-company-options .option-input {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: var(--spacing-xs);
  line-height: 1.2;
  min-height: 32px;
}

.register-form .info-company-options .option-input label {
  margin: 0;
  font-weight: 600;
}

.register-form .info-company-options input[type="checkbox"] {
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 2px solid var(--color-secondary);
  appearance: none;
  position: relative;
  cursor: pointer;
  margin: 0;
}

.register-form .info-company-options input[type="checkbox"]:checked {
  background: var(--color-secondary);
}

.register-form .info-company-options input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 6px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.register-form .info-company-options .option-input-grow {
  flex: 1 1 auto;
}

.register-form .contact-grid {
  display: grid;
  grid-template-columns: 180px repeat(3, minmax(0, 1fr));
  gap: var(--spacing-sm);
  align-items: center;
  margin-bottom: var(--spacing-sm);
}

.register-form .contact-grid label {
  font-weight: 600;
  margin: 0;
}

.register-form .contact-grid-header {
  font-weight: 700;
  color: var(--color-gray);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  padding-bottom: var(--spacing-xs);
}

.register-form .authorized-section {
  margin-top: var(--spacing-lg);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}

.register-form .authorized-title {
  font-weight: 600;
}

.register-form #authorized-list {
  display: grid;
  gap: var(--spacing-sm);
}

.register-form .authorized-row {
  display: grid;
  grid-template-columns: 160px repeat(2, minmax(0, 1fr));
  gap: var(--spacing-sm);
  align-items: center;
}

.register-form .authorized-label {
  font-weight: 500;
}

.register-form .authorized-actions {
  text-align: right;
}

@media (max-width: 991.98px) {

  .register-form .contact-grid,
  .register-form .contact-grid-header,
  .register-form .authorized-row {
    grid-template-columns: 1fr;
  }

  .register-form .info-company-options {
    grid-template-columns: 1fr;
  }
}

.register-form .info-company-options .option-group-full {
  grid-column: 1 / -1;
}

.register-form .info-company-options .option-input-grow {
  flex: 1 1 auto;
}

.register-form .info-company-options .option-suffix span {
  font-weight: 600;
  color: var(--color-gray);
}

.register-form .info-company-options .option-suffix .form-control {
  width: 90px;
  text-align: center;
}

/* Quickview loading overlay fix */
.js-waitting-quickview.page-loading-overlay.quickview-loading {
  display: block !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
}

.page-loading-overlay.quickview-loading .page-loading-backdrop {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 4px;
}

/* Hide specific product attributes in quickview */
.quickview .js-product-attributes-destination .attribute-item.product-condition,
.quickview .js-product-attributes-destination .attribute-item.product-quantities,
.quickview .js-product-attributes-destination .attribute-item.product-specific-references.ean13 {
  display: none !important;
}

/* Slick dots with brand blue color */
.slick-dots li button {
  background-color: var(--color-primary) !important;
  opacity: 0.25 !important;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  background-color: var(--color-primary) !important;
  opacity: 0.6 !important;
}

.slick-dots li.slick-active button {
  background-color: var(--color-primary) !important;
  opacity: 1 !important;
}

/* ==========================================
   ONEPAGECHECKOUT & CHECKOUT STYLES
   ========================================== */

/* Onepagecheckout buttons and inputs - 32px height */
#checkout .opc-bootstrap-533 button,
#checkout .opc-bootstrap-533 input {
  height: 32px;
}

/* Hide product availability in checkout */
#checkout .product-list .product-miniature .product-availability {
  display: none !important;
}

/* White color for product availability span in checkout */
#checkout .product-list .product-miniature .product-availability span {
  color: white !important;
}

/* ==========================================
   ONEPAGECHECKOUT ADDRESS BUTTONS
   ========================================== */

/* Fix address buttons styling in onepagecheckout */
#opc_addresses .add.btn,
#opc_addresses .edit.btn,
#opc_addresses .delete.btn,
.opc-addresses .add.btn,
.opc-addresses .edit.btn,
.opc-addresses .delete.btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  padding: 6px 12px !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}

/* Fix icon alignment in address buttons */
#opc_addresses .add.btn .material-icons,
#opc_addresses .edit.btn .material-icons,
#opc_addresses .delete.btn .material-icons,
.opc-addresses .add.btn .material-icons,
.opc-addresses .edit.btn .material-icons,
.opc-addresses .delete.btn .material-icons {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

/* Ensure button text and icon are properly aligned */
#opc_addresses .add.btn i,
#opc_addresses .edit.btn i,
#opc_addresses .delete.btn i,
.opc-addresses .add.btn i,
.opc-addresses .edit.btn i,
.opc-addresses .delete.btn i {
  margin: 0 !important;
  padding: 0 !important;
}

/* Fix address actions container */
#opc_addresses .address-actions,
.opc-addresses .address-actions {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

/* Fix title address content spacing */
#opc_addresses .title-address-content,
.opc-addresses .title-address-content {
  display: inline-block !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
}

/* Fix clearfix spacing */
#opc_addresses .clear.clearfix,
.opc-addresses .clear.clearfix {
  clear: both !important;
  margin-bottom: 15px !important;
}

/* ==========================================
   MI CUENTA - HOVER COLOR
   ========================================== */

/* Color de hover para enlaces de Mi Cuenta - Color de marca Comercial AV */
.page-my-account #content .links a:hover {
  color: #3782c1 !important;
}

.product-miniature .pc-compare-btn,
.product-miniature .product-flag-wishlist .btn-secondary {
  width: 30px;
  height: 30px;
  min-width: 30px;
}

/* ==========================================
   ADVANCEDCMS PRODUCT SLIDER - RESPONSIVE
   ========================================== */

/* Let bxslider handle the layout, just constrain product card size */
.adcms-product-slider .product-miniature {
  max-width: 228px;
  margin: 0 auto;
}

.adcms-product-slider .product-miniature .product-thumbnail img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* Ensure slider items don't overflow - FORCE fixed width to override bxslider JS */
.adcms-product-slider .bxslider>li.product-box {
  padding: 0 8px;
  box-sizing: border-box;
  width: 244px !important;
  /* 228px + 16px padding */
  max-width: 244px !important;
  flex: 0 0 244px !important;
}

/* Fix product container width inside slider */
.adcms-product-slider .product-miniature .product-container {
  max-width: 228px;
  margin: 0 auto;
}

/* Responsive adjustments for mobile - smaller cards */
@media (max-width: 767px) {

  .adcms-product-slider .product-miniature,
  .adcms-product-slider .product-miniature .product-container {
    max-width: 180px;
  }
}

/* Quick View button - Hidden by default, shown on hover, centered */
.adcms-product-slider .product-miniature .first-block {
  position: relative;
}

.adcms-product-slider .product-miniature .grid-hover-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 10;
}

.adcms-product-slider .product-miniature .grid-hover-btn .quick-view {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  color: #333;
  transition: all 0.3s ease;
}

.adcms-product-slider .product-miniature .grid-hover-btn .quick-view:hover {
  background: var(--color-secondary, #4b7bec);
  color: #fff;
  transform: scale(1.1);
}

.adcms-product-slider .product-miniature:hover .grid-hover-btn {
  opacity: 1;
  visibility: visible;
}

/* ==========================================
   ADVANCEDCMS SLIDER - NAVIGATION ARROWS
   ========================================== */

.adcms-product-slider {
  position: relative;
  padding: 0 50px;
  /* Make room for arrows outside */
}

.adcms-product-slider .bx-wrapper {
  position: relative;
}

.adcms-product-slider .bx-controls-direction {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 100;
}

.adcms-product-slider .bx-controls-direction a {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  pointer-events: auto;
  transition: all 0.3s ease;
  text-decoration: none;
}

.adcms-product-slider .bx-controls-direction a.bx-prev {
  left: -50px;
}

.adcms-product-slider .bx-controls-direction a.bx-next {
  right: -50px;
}

.adcms-product-slider .bx-controls-direction a:hover {
  background: var(--color-secondary, #4b7bec);
  transform: scale(1.1);
  box-shadow: 0 4px 15px rgba(75, 123, 236, 0.4);
}

.adcms-product-slider .bx-controls-direction a .material-icons {
  font-size: 24px;
  color: #333;
  transition: color 0.3s ease;
}

.adcms-product-slider .bx-controls-direction a:hover .material-icons {
  color: #fff;
}

.adcms-product-slider .bx-controls-direction a.disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

/* Fix arrow icons - add content if empty */
.adcms-product-slider .bx-controls-direction a.bx-prev .material-icons::before {
  content: 'chevron_left';
}

.adcms-product-slider .bx-controls-direction a.bx-next .material-icons::before {
  content: 'chevron_right';
}

/* Responsive - smaller arrows on mobile */
@media (max-width: 991px) {
  .adcms-product-slider {
    padding: 0 40px;
  }

  .adcms-product-slider .bx-controls-direction a {
    width: 36px;
    height: 36px;
  }

  .adcms-product-slider .bx-controls-direction a.bx-prev {
    left: -40px;
  }

  .adcms-product-slider .bx-controls-direction a.bx-next {
    right: -40px;
  }

  .adcms-product-slider .bx-controls-direction a .material-icons {
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .adcms-product-slider {
    padding: 0 30px;
  }

  .adcms-product-slider .bx-controls-direction a {
    width: 32px;
    height: 32px;
  }

  .adcms-product-slider .bx-controls-direction a.bx-prev {
    left: -30px;
  }

  .adcms-product-slider .bx-controls-direction a.bx-next {
    right: -30px;
  }

  .adcms-product-slider .bx-controls-direction a .material-icons {
    font-size: 18px;
  }
}

/* ==========================================
   BANNER PROMOCIONAL - APERTURA ESPECIAL
   ========================================== */

.promo-alert-banner {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
  background-size: 200% 200%;
  animation: promoGradientShift 8s ease infinite;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4);
}

.promo-alert-banner::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
  animation: promoShimmer 3s infinite;
}

@keyframes promoGradientShift {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

@keyframes promoShimmer {
  0% {
    left: -100%;
  }

  100% {
    left: 100%;
  }
}

.promo-alert-content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0.875rem 1.5rem;
  max-width: 1220px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.promo-alert-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(8px);
  border-radius: 50%;
  flex-shrink: 0;
  animation: promoIconBounce 2s ease-in-out infinite;
}

.promo-alert-icon i {
  font-size: 1.25rem;
  color: #fff;
}

@keyframes promoIconBounce {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }
}

.promo-alert-text {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  text-align: center;
  justify-content: center;
}

.promo-alert-highlight {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  letter-spacing: 0.3px;
}

.promo-alert-info {
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.95);
  font-weight: 500;
}

.promo-alert-info strong {
  color: #fff;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.2);
  padding: 0.15rem 0.5rem;
  border-radius: 4px;
}

.promo-alert-close {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.2);
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  backdrop-filter: blur(4px);
}

.promo-alert-close i {
  color: #fff;
  font-size: 0.875rem;
}

.promo-alert-close:hover {
  background: rgba(255, 255, 255, 0.35);
  transform: translateY(-50%) rotate(90deg);
}

/* Responsive para móviles */
@media (max-width: 768px) {
  .promo-alert-content {
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.75rem 2.5rem 0.75rem 1rem;
  }

  .promo-alert-icon {
    width: 36px;
    height: 36px;
  }

  .promo-alert-icon i {
    font-size: 1rem;
  }

  .promo-alert-text {
    flex-direction: column;
    gap: 0.25rem;
  }

  .promo-alert-highlight {
    font-size: 0.9rem;
  }

  .promo-alert-info {
    font-size: 0.8rem;
  }

  .promo-alert-close {
    right: 0.5rem;
    width: 28px;
    height: 28px;
  }
}

/* ==========================================
   HEADER NAV BRANDS SECTION
   ========================================== */
.header-nav-brands {
  display: flex;
  align-items: center;
  gap: 12px;
}

.header-nav-brands__label {
  font-size: 11px;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.header-nav-brands__list {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-nav-brands__list li {
  margin: 0;
  padding: 0;
}

.header-nav-brands__link {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 50px;
  transition: all 0.2s ease;
  text-decoration: none !important;
}

/* Enterprise - Blue theme */
.header-nav-brands__link--enterprise {
  background: linear-gradient(135deg, #0066CC, #3399FF);
  color: #fff !important;
}

.header-nav-brands__link--enterprise:hover {
  background: linear-gradient(135deg, #0052a3, #0066CC);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 102, 204, 0.4);
}

/* AVPOS - Orange/Red theme */
.header-nav-brands__link--salicru {
  background: linear-gradient(135deg, #e53935, #ff6b6b);
  color: #fff !important;
}

.header-nav-brands__link--salicru:hover {
  background: linear-gradient(135deg, #c62828, #e53935);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(229, 57, 53, 0.4);
}

/* Salicru - Green theme */
.header-nav-brands__link--avpos {
  background: linear-gradient(135deg, #00897B, #26A69A);
  color: #fff !important;
}

.header-nav-brands__link--avpos:hover {
  background: linear-gradient(135deg, #00695C, #00897B);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 137, 123, 0.4);
}

/* Header nav wrapper improvements */
.header-nav {
  background: linear-gradient(135deg, #1e3a76 0%, #2a4b84 100%);
}

.header-nav-wrapper {
  padding: 4px 0;
}

.header-phone ul {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-phone ul li {
  margin: 0;
  padding: 0;
}

.header-phone ul li a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.85);
  font-weight: 500;
  transition: color 0.2s ease;
  text-decoration: none !important;
}

.header-phone ul li a:hover {
  color: #fff;
}

.header-phone ul li a i {
  font-size: 12px;
}

.header-phone ul li.text-red a {
  color: #ff6b6b;
}

.header-phone ul li.text-red a:hover {
  color: #ff8a8a;
}

.header-phone ul li a img {
  height: 13px;
  width: auto;
  vertical-align: middle;
  margin: 0 !important;
  display: inline-block;
  position: relative;
}

/* Forzar alineación para el enlace de Centro de ayuda */
.header-phone ul li.text-red a {
  display: inline-flex !important;
  align-items: center !important;
}

/* Ocultar banners de categoría temporalmente */
.category-cover {
  display: none !important;
}

/* Estilo para el enlace "Ver más" en descripción del producto */
.more-btn {
  color: var(--color-primary) !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  font-size: 13px;
  margin-top: 8px;
  transition: color 0.2s ease;
}

.more-btn:hover {
  color: var(--color-brand) !important;
  text-decoration: underline !important;
}

/* Ocultar selector de dirección de facturación en checkout */
.opc-addresses__set-invoice-address {
  display: none !important;
}

/* Centrar botón Continuar en checkout */
.opc-step-footer {
  display: flex;
  justify-content: center;
}

.opc-step-footer .continue.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.opc-step-footer .continue.btn .material-icons {
  line-height: 1;
  vertical-align: middle;
}

/* Ocultar buttons-sections en módulo ets_crosssell (evita duplicado botón comparar) */
.crosssell_product_list_wrapper .buttons-sections {
  display: none !important;
}

.crosssell_product_list_wrapper .product-miniature .second-block .second-block-wrapper {
  display: block;
}

.crosssell_product_list_wrapper .product-miniature .second-block .pn-product {
  padding: 0 4%;
}

#checkout #opc_main #conditions-to-approve label {
  display: flex;
  align-items: center;
  gap: 10px;
}

#checkout #opc_main #payment-confirmation button,
#checkout #opc_main .ps_checkout-button button {
  display: flex;
  justify-content: center;
  height: auto;
  align-items: center;
}

/* Ocultar botones Guarda/Comparte carrito en página de confirmación de pedido */
#order-confirmation .cart-action-buttons,
.page-order-confirmation .cart-action-buttons,
#content-hook_shopping_cart_footer .cart-action-buttons {
  display: none !important;
}

/* Botón Flotante WhatsApp */
.whatsapp-float-btn {
  position: fixed;
  width: 60px;
  height: 60px;
  bottom: 20px;
  left: 20px;
  background-color: #25d366;
  color: #FFF !important;
  border-radius: 50px;
  text-align: center;
  font-size: 30px;
  box-shadow: 2px 2px 3px #999;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.whatsapp-float-btn:hover {
  background-color: #20ba5a;
  color: #FFF !important;
  transform: scale(1.1);
}

.whatsapp-float-btn i {
  margin-top: 2px;
}

/* ==========================================
   CUSTOM CHECKOUT FLOW - OnePageCheckoutPS
   ========================================== */

/* Ocultar paso de direcciones cuando es recogida en tienda */
.custom-checkout-flow .opc-step-hidden-pickup {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Animación suave para mostrar/ocultar pasos */
.custom-checkout-flow .opc-step {
  transition: opacity 0.3s ease-in-out, height 0.3s ease-in-out;
}

/* Orden flexible de los pasos */
.custom-checkout-flow #opc_content_main {
  display: flex;
  flex-direction: column;
}

/* Asegurar que los pasos puedan reordenarse */
.custom-checkout-flow .opc-step {
  position: relative;
}

/* Estilos para barra de progreso personalizada */
.custom-checkout-flow .opc-progress-item.d-none {
  display: none !important;
}

/* Mejoras visuales para los pasos */
.custom-checkout-flow .opc-step-title {
  font-weight: 600;
  font-size: 1.25rem;
  color: var(--color-primary);
  transition: color 0.3s ease;
}

.custom-checkout-flow .opc-step-header {
  padding: 1rem 0;
  border-bottom: 2px solid var(--color-border);
  margin-bottom: 1.5rem;
}

/* Destacar el paso activo */
.custom-checkout-flow .opc-step.active .opc-step-title {
  color: var(--color-secondary);
}

/* Animación de carga para cambios de paso */
.custom-checkout-flow.loading .opc-step {
  opacity: 0.6;
  pointer-events: none;
}

/* Responsive - Mobile */
@media (max-width: 767.98px) {
  .custom-checkout-flow .opc-step-title {
    font-size: 1.1rem;
  }

  .custom-checkout-flow .opc-step-header {
    padding: 0.75rem 0;
    margin-bottom: 1rem;
  }
}

/* Asegurar que las opciones de envío sean claramente visibles */
.custom-checkout-flow .delivery-option {
  border: 2px solid var(--color-border);
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
  transition: all 0.3s ease;
  cursor: pointer;
}

.custom-checkout-flow .delivery-option:hover {
  border-color: var(--color-secondary);
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.15);
}

.custom-checkout-flow .delivery-option.selected {
  border-color: var(--color-secondary);
  background-color: rgba(75, 123, 236, 0.05);
}

/* Destacar transportista seleccionado */
.custom-checkout-flow input[name^="delivery_option"]:checked+.delivery-option,
.custom-checkout-flow .delivery-option:has(input:checked) {
  border-color: var(--color-secondary);
  background-color: rgba(75, 123, 236, 0.08);
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.2);
}

/* Nombre del transportista más visible */
.custom-checkout-flow .carrier-name {
  font-weight: 600;
  font-size: 1.1rem;
  color: var(--color-dark);
  margin-bottom: 0.5rem;
}

/* ==========================================
   Recogida en almacén - Selecciona tu almacén (diseño referencia)
   ========================================== */

.opc-warehouse-pickup-block {
  margin-top: 1.75rem;
  margin-bottom: 1.5rem;
  padding: 1.5rem 1.25rem;
  background: #f8f9fa;
  border-radius: 0.625rem;
  border: 1px solid #e9ecef;
}

.opc-warehouse-pickup-label {
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.4;
  color: #212529;
  margin: 0 0 0.375rem 0;
  letter-spacing: -0.02em;
}

.opc-warehouse-pickup-hint {
  font-size: 0.875rem;
  line-height: 1.5;
  color: #6c757d;
  margin: 0 0 1.25rem 0 !important;
  max-width: 36em;
}

.opc-warehouse-pickup-options {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.opc-warehouse-option {
  flex: 1 1 260px;
  min-width: 0;
  margin: 0;
  cursor: pointer;
  display: block;
}

.opc-warehouse-option-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Sin outline en focus: evita el doble borde (border de la tarjeta + outline). */
.opc-warehouse-option-input:focus+.opc-warehouse-option-card {
  outline: none;
}

.opc-warehouse-option-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  min-height: 120px;
  padding: 1.25rem 1.5rem 1rem;
  padding-right: 3rem;
  border: 2px solid #dee2e6;
  border-radius: 0.5rem;
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.opc-warehouse-option:hover .opc-warehouse-option-card {
  border-color: #adb5bd;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.opc-warehouse-option-input:checked+.opc-warehouse-option-card {
  border-color: #5c8ef7;
  background-color: #e8f0fe;
  box-shadow: 0 2px 8px rgba(92, 142, 247, 0.2);
}

/* Icono esquina superior derecha: pin (sin seleccionar) / check en círculo (seleccionado) */
.opc-warehouse-option-card-icon {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #adb5bd;
}

.opc-warehouse-option-card-icon .opc-warehouse-card-icon--pin {
  width: 22px;
  height: 22px;
}

.opc-warehouse-option-card-check {
  display: none;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--color-secondary, #4b7bec);
  color: #fff;
  align-items: center;
  justify-content: center;
}

.opc-warehouse-option-card-check .opc-warehouse-card-icon--check {
  width: 14px;
  height: 14px;
  stroke: #fff;
}

.opc-warehouse-option-input:checked+.opc-warehouse-option-card .opc-warehouse-option-card-icon .opc-warehouse-card-icon--pin {
  display: none;
}

.opc-warehouse-option-input:checked+.opc-warehouse-option-card .opc-warehouse-option-card-check {
  display: flex;
}

.opc-warehouse-option-title {
  font-weight: 700 !important;
  font-size: 1.0625rem !important;
  color: #212529 !important;
  display: block;
  line-height: 1.35;
  margin-bottom: 0.25rem;
}

.opc-warehouse-option-desc {
  font-size: 0.8125rem !important;
  color: #6c757d !important;
  display: block;
  line-height: 1.4;
  margin-bottom: 0.75rem;
}

/* Pill "Recogida en almacén" al pie de la tarjeta */
.opc-warehouse-option-pill {
  display: inline-block;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  color: #6c757d !important;
  background: #e9ecef !important;
  padding: 0.25rem 0.625rem;
  border-radius: 999px;
  margin-top: auto;
  line-height: 1.35;
}

.opc-warehouse-option-input:checked+.opc-warehouse-option-card .opc-warehouse-option-pill {
  background: #cce0ff;
  color: #2d5ab8;
}

@media (prefers-reduced-motion: reduce) {
  .opc-warehouse-option-card {
    transition: none;
  }
}

@media (max-width: 575.98px) {
  .opc-warehouse-pickup-block {
    margin-top: 1.5rem;
    margin-bottom: 1.25rem;
    padding: 1.25rem 1rem;
  }

  .opc-warehouse-pickup-options {
    flex-direction: column;
    gap: 0.75rem;
  }

  .opc-warehouse-option {
    flex: 1 1 auto;
  }

  .opc-warehouse-option-card {
    min-height: 110px;
    padding: 1rem 1.25rem 0.875rem;
    padding-right: 2.75rem;
  }

  .opc-warehouse-option-card-icon {
    top: 0.75rem;
    right: 0.75rem;
  }
}

/* Precio del transporte */
.custom-checkout-flow .carrier-price {
  font-weight: 600;
  color: var(--color-secondary);
  font-size: 1.15rem;
}

/* Debug info (solo visible con consola) */
.custom-checkout-flow[data-debug="true"]::after {
  content: attr(data-flow-type);
  position: fixed;
  bottom: 10px;
  right: 10px;
  background: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  z-index: 9999;
}

/* ==========================================
   OCULTAR PRECIOS DE ENVÍO EN PASO 2
   (hasta que se introduzca la dirección)
   ========================================== */

/* Por defecto, ocultar los precios de envío (excepto Gratis) */
.opc-hide-shipping-prices .delivery_option_price:not(.free) {
  display: none !important;
}

/* Para Almacén/Recogida: mostrar solo "Gratis" sin "Según destino" */
.opc-hide-shipping-prices .delivery_option_price.free {
  display: inline-block !important;
}

/* Mostrar mensaje "Según destino" SOLO para transporte (no Almacén) */
/* Seleccionar opciones que NO tengan precio gratis */
.opc-hide-shipping-prices .delivery-option:not(:has(.delivery_option_price.free)) .carrier-content-bottom::after {
  content: "Según destino";
  font-weight: 600;
  color: #6ab9f0;
  font-size: 0.9rem;
  font-style: italic;
}

/* Ocultar línea de Transporte en el subtotal del carrito hasta paso 3 */
body.hide-cart-shipping #cart-subtotal-shipping {
  display: none !important;
}

/* También ocultar los totales en paso 2 (porque incluyen envío) */
body.hide-cart-shipping .cart-summary-totals {
  display: none !important;
}

/* Mostrar mensaje indicativo en paso 2 */
body.hide-cart-shipping .cart-summary-subtotals-container::after {
  content: "El coste de envío se calculará según la dirección";
  display: block;
  font-size: 0.8rem;
  color: #6ab9f0;
  font-style: italic;
  margin-top: 0.5rem;
  padding: 0.5rem;
  background: rgba(106, 185, 240, 0.1);
  border-radius: 0.25rem;
}

/* ==========================================
   DROPSHIPPING MODULE - Enhanced Styles
   ========================================== */

/* Wrapper principal */
#dropship-wrapper.dropshipping-wrapper {
  margin: 1.5rem 0;
}

/* Alerta de dropshipping - diseño mejorado */
/* NOTA: NO usar display: flex aquí directamente, rompe el JavaScript que oculta/muestra */
#dropship-alert.dropshipping-alert {
  /* display se controla via JavaScript */
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-radius: 12px;
  border: 2px solid var(--color-secondary, #4b7bec);
  background: linear-gradient(135deg, rgba(75, 123, 236, 0.08) 0%, rgba(106, 185, 240, 0.12) 100%);
  box-shadow: 0 4px 15px rgba(75, 123, 236, 0.15);
  transition: all 0.3s ease;
}

/* Cuando está visible, aplicar flex */
#dropship-alert.dropshipping-alert:not([style*="display: none"]):not([style*="display:none"]) {
  display: flex;
}

#dropship-alert.dropshipping-alert:hover {
  box-shadow: 0 6px 20px rgba(75, 123, 236, 0.25);
  transform: translateY(-2px);
}

/* Cuerpo del alerta */
#dropship-alert .dropshipping-alert-body {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

/* Icono */
#dropship-alert .dropshipping-alert-body .material-icons-outlined {
  font-size: 1.75rem;
  color: var(--color-secondary, #4b7bec);
  background: rgba(75, 123, 236, 0.15);
  padding: 0.5rem;
  border-radius: 50%;
}

/* Texto */
#dropship-alert .dropshipping-alert-text {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-dark, #232f3e);
}

/* Acciones - checkbox */
#dropship-alert .dropshipping-alert-actions {
  display: flex;
  align-items: center;
}

#dropship-alert .dropshipping-alert-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: var(--color-secondary, #4b7bec);
  color: white;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-weight: 500;
}

#dropship-alert .dropshipping-alert-checkbox:hover {
  background: var(--color-primary, #1e3a76);
  transform: scale(1.02);
}

/* Cuando está marcado, cambiar estilo del label completo */
#dropship-alert .dropshipping-alert-checkbox:has(.form-check-input:checked) {
  background: #28a745;
}

#dropship-alert .dropshipping-alert-checkbox .form-check-input {
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin: 0;
  border: 2px solid white;
  background: transparent;
  border-radius: 4px;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  position: relative;
}

#dropship-alert .dropshipping-alert-checkbox .form-check-input:checked {
  background: white;
  border-color: white;
}

#dropship-alert .dropshipping-alert-checkbox .form-check-input:checked::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #28a745;
  font-size: 0.9rem;
  font-weight: bold;
}

#dropship-alert .dropshipping-alert-checkbox .checkbox-label-text {
  color: white;
  font-size: 0.9rem;
  display: inline !important;
}

/* Cambia el texto cuando está seleccionado */
#dropship-alert .dropshipping-alert-checkbox:has(.form-check-input:checked) .checkbox-label-text::after {
  content: " ✓";
}

/* Modal del dropshipping */
#dropship-modal .modal-content {
  border-radius: 12px;
  border: none;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}

/* Modal header mejorado */
#dropship-modal .modal-header {
  background: linear-gradient(135deg, var(--color-primary, #1e3a76) 0%, var(--color-secondary, #4b7bec) 100%);
  color: white;
  border-radius: 12px 12px 0 0;
  border: none;
  padding: 1rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#dropship-modal .modal-title {
  font-weight: 600;
  font-size: 1.25rem;
  margin: 0;
  color: white;
}

/* Botón X de cerrar */
#dropship-modal .modal-header .btn-close {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  margin: 0;
  position: relative;
}

#dropship-modal .modal-header .btn-close::before {
  content: '✕';
  color: white;
  font-size: 1rem;
  font-weight: bold;
}

#dropship-modal .modal-header .btn-close:hover {
  background: rgba(255, 255, 255, 0.3);
}

/* Body del modal */
#dropship-modal .modal-body {
  padding: 1.5rem;
}

#dropship-modal .form-group {
  margin-bottom: 1.25rem;
}

#dropship-modal .form-label {
  font-weight: 600;
  color: var(--color-dark, #232f3e);
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* Input file mejorado */
#dropship-modal .form-control[type="file"] {
  border-radius: 8px;
  border: 2px dashed #d0d0d0;
  background: #f8f9fa;
  cursor: pointer;
}

#dropship-modal .form-control[type="file"]:hover {
  border-color: var(--color-secondary, #4b7bec);
  background: rgba(75, 123, 236, 0.05);
}

/* Textarea */
#dropship-modal textarea.form-control {
  border-radius: 8px;
  border: 2px solid #e6e6e6;
  padding: 0.75rem 1rem;
  min-height: 80px;
  resize: vertical;
  font-size: 0.95rem;
}

#dropship-modal textarea.form-control::placeholder {
  font-size: 0.85rem;
  font-style: italic;
  color: #adb5bd;
}

#dropship-modal .form-control:focus {
  border-color: var(--color-secondary, #4b7bec);
  box-shadow: 0 0 0 3px rgba(75, 123, 236, 0.15);
  outline: none;
}

/* Footer con botones */
#dropship-modal .modal-footer {
  border-top: 1px solid #e6e6e6;
  padding: 1rem 1.5rem;
  display: flex;
  justify-content: flex-end;
  gap: 0.75rem;
}

#dropship-modal .btn-secondary {
  background: #6c757d;
  border: none;
  border-radius: 8px;
  font-weight: 500;
  color: white;
}

#dropship-modal .btn-secondary:hover {
  background: #5a6268;
}

#dropship-modal .btn-primary {
  background: linear-gradient(135deg, var(--color-secondary, #4b7bec) 0%, var(--color-primary, #1e3a76) 100%);
  border: none;
  border-radius: 8px;
  font-weight: 600;
  color: white;
}

#dropship-modal .btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(75, 123, 236, 0.35);
}

/* Responsive */
@media (max-width: 576px) {
  #dropship-alert.dropshipping-alert {
    flex-direction: column;
    text-align: center;
    gap: 0.75rem;
  }

  #dropship-alert .dropshipping-alert-body {
    flex-direction: column;
  }
}

/* ==========================================
   ESTADO: "Has solicitado dropshipping" 
   Usar !important para sobrescribir Bootstrap
   ========================================== */
/* NOTA: NO usar display: flex !important aquí, rompe el JavaScript que oculta/muestra */
#dropship-wrapper #dropship-info.alert.alert-info.dropshipping-alert {
  /* display se controla via JavaScript */
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  padding: 1rem 1.25rem !important;
  border-radius: 12px !important;
  border: 2px solid #10b981 !important;
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.08) 0%, rgba(52, 211, 153, 0.15) 100%) !important;
  box-shadow: 0 4px 15px rgba(16, 185, 129, 0.15) !important;
  transition: all 0.3s ease !important;
  flex-wrap: wrap;
}

/* Cuando está visible, aplicar flex */
#dropship-wrapper #dropship-info.alert.alert-info.dropshipping-alert:not([style*="display: none"]):not([style*="display:none"]) {
  display: flex !important;
}

#dropship-wrapper #dropship-info.alert.alert-info.dropshipping-alert:hover {
  box-shadow: 0 6px 20px rgba(16, 185, 129, 0.25) !important;
  transform: translateY(-2px);
}

/* Cuerpo del alerta - estado confirmado */
#dropship-wrapper #dropship-info .dropshipping-alert-body {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  flex: 1;
}

/* Icono - estado confirmado */
#dropship-wrapper #dropship-info .dropshipping-alert-body .material-icons-outlined {
  font-size: 1.75rem !important;
  color: #10b981 !important;
  background: rgba(16, 185, 129, 0.15) !important;
  padding: 0.5rem !important;
  border-radius: 50% !important;
}

/* Texto - estado confirmado */
#dropship-wrapper #dropship-info .dropshipping-alert-text {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #065f46 !important;
}

#dropship-wrapper #dropship-info .dropshipping-alert-text strong {
  color: #065f46 !important;
}

/* Acciones - botones Editar y Eliminar */
#dropship-wrapper #dropship-info .dropshipping-alert-actions {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

/* Botón Editar - sobrescribir Bootstrap btn-outline-warning */
#dropship-wrapper #dropship-info .dropshipping-edit.btn.btn-outline-warning {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  padding: 0.5rem 1rem !important;
  border-radius: 8px !important;
  background: #fbbf24 !important;
  border: none !important;
  color: #78350f !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

#dropship-wrapper #dropship-info .dropshipping-edit.btn.btn-outline-warning:hover {
  background: #f59e0b !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(251, 191, 36, 0.4) !important;
  color: #78350f !important;
}

#dropship-wrapper #dropship-info .dropshipping-edit .material-icons-outlined {
  font-size: 1.1rem !important;
  color: #78350f !important;
}

/* Botón Eliminar - sobrescribir Bootstrap btn-outline-danger */
#dropship-wrapper #dropship-info .dropshipping-delete.btn.btn-outline-danger {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  padding: 0.5rem 1rem !important;
  border-radius: 8px !important;
  background: #fecaca !important;
  border: none !important;
  color: #991b1b !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

#dropship-wrapper #dropship-info .dropshipping-delete.btn.btn-outline-danger:hover {
  background: #ef4444 !important;
  color: white !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4) !important;
}

#dropship-wrapper #dropship-info .dropshipping-delete .material-icons-outlined {
  font-size: 1.1rem !important;
}

/* Responsive para estado confirmado */
@media (max-width: 576px) {
  #dropship-wrapper #dropship-info.alert.alert-info.dropshipping-alert {
    flex-direction: column !important;
    text-align: center !important;
    gap: 0.75rem !important;
  }

  #dropship-wrapper #dropship-info .dropshipping-alert-body {
    flex-direction: column !important;
  }

  #dropship-wrapper #dropship-info .dropshipping-alert-actions {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* Caja informativa del dropshipping */
.dropship-info-box {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  background: linear-gradient(135deg, rgba(75, 123, 236, 0.1) 0%, rgba(106, 185, 240, 0.15) 100%);
  border: 1px solid var(--color-secondary, #4b7bec);
  border-left: 4px solid var(--color-secondary, #4b7bec);
  border-radius: 8px;
  margin-bottom: 1.5rem;
}

.dropship-info-icon {
  flex-shrink: 0;
}

.dropship-info-icon .material-icons-outlined {
  color: var(--color-secondary, #4b7bec);
  font-size: 1.5rem;
}

.dropship-info-text {
  font-size: 0.9rem;
  line-height: 1.5;
  color: #333;
}

.dropship-info-text strong {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--color-primary, #1e3a76);
}

/* Badge de opcional */
.optional-badge {
  display: inline-block;
  background: #e9ecef;
  color: #6c757d;
  font-size: 0.7rem;
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  margin-left: 0.5rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Texto de ayuda */
#dropship-modal .form-text {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.8rem;
  color: #6c757d;
}

/* Placeholder mejorado para textarea */
#dropship-modal textarea::placeholder {
  font-style: italic;
  color: #adb5bd;
}

/* Corrección del spinner de carga */
#dropship-modal .ds-loader {
  display: inline-block;
  width: 1.5rem !important;
  height: 1.5rem !important;
  border: 3px solid rgba(75, 123, 236, 0.2) !important;
  border-right-color: var(--color-secondary, #4b7bec) !important;
  border-radius: 50%;
  vertical-align: middle;
  margin-right: 0.5rem;
}

/* Ocultar el texto dentro del spinner */
#dropship-modal .ds-loader span,
#dropship-modal .ds-loader .visually-hidden {
  display: none !important;
}

/* Añadir texto "Cargando..." estático después del spinner si se desea */
#dropship-modal .ds-loader::after {
  content: "";
  display: none;
}

/* ==========================================
   DELIVERY SCHEDULER - Programar entrega
   Color: Gris suave (#6b7280 / #9ca3af)
   ========================================== */

/* Wrapper principal */
#schedule-wrapper.delivery-scheduler-wrapper {
  margin: 1rem 0;
}

/* Alerta principal - estado "Seleccionar" */
#schedule-alert.delivery-scheduler-alert {
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-radius: 12px;
  border: 2px solid #9ca3af;
  background: linear-gradient(135deg, rgba(156, 163, 175, 0.08) 0%, rgba(209, 213, 219, 0.12) 100%);
  box-shadow: 0 4px 15px rgba(107, 114, 128, 0.12);
  transition: all 0.3s ease;
}

/* Cuando está visible, aplicar flex */
#schedule-alert.delivery-scheduler-alert:not([style*="display: none"]):not([style*="display:none"]) {
  display: flex;
}

#schedule-alert.delivery-scheduler-alert:hover {
  box-shadow: 0 6px 20px rgba(107, 114, 128, 0.2);
  transform: translateY(-2px);
  border-color: #6b7280;
}

/* Cuerpo del alerta */
#schedule-alert .delivery-scheduler-alert-body {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

/* Icono */
#schedule-alert .delivery-scheduler-alert-body .material-icons-outlined {
  font-size: 1.75rem;
  color: #6b7280;
  background: rgba(107, 114, 128, 0.12);
  padding: 0.5rem;
  border-radius: 50%;
}

/* Texto */
#schedule-alert .delivery-scheduler-alert-text {
  font-size: 1rem;
  font-weight: 600;
  color: var(--color-dark, #232f3e);
}

/* Acciones - checkbox */
#schedule-alert .delivery-scheduler-alert-actions {
  flex-shrink: 0;
}

#schedule-alert .delivery-scheduler-alert-checkbox {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: #6b7280;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #fff;
  font-weight: 600;
}

#schedule-alert .delivery-scheduler-alert-checkbox:hover {
  background: #4b5563;
  box-shadow: 0 4px 12px rgba(107, 114, 128, 0.35);
}

#schedule-alert .delivery-scheduler-alert-checkbox:has(.form-check-input:checked) {
  background: #4b5563;
}

#schedule-alert .delivery-scheduler-alert-checkbox .form-check-input {
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  border: 2px solid rgba(255, 255, 255, 0.6);
  background-color: transparent;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 4px;
  transition: all 0.2s ease;
}

#schedule-alert .delivery-scheduler-alert-checkbox .form-check-input:checked {
  background-color: #fff;
  border-color: #fff;
}

#schedule-alert .delivery-scheduler-alert-checkbox .form-check-input:checked::after {
  content: "✓";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #6b7280;
  font-size: 0.9rem;
  font-weight: bold;
}

#schedule-alert .delivery-scheduler-alert-checkbox .checkbox-label-text {
  color: #fff;
  font-size: 0.9rem;
}

/* ==========================================
   ESTADO: "Has programado entrega" (schedule-info)
   ========================================== */
#schedule-wrapper #schedule-info.delivery-scheduler-alert {
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-radius: 12px;
  border: 2px solid #059669;
  background: linear-gradient(135deg, rgba(5, 150, 105, 0.08) 0%, rgba(16, 185, 129, 0.15) 100%);
  box-shadow: 0 4px 15px rgba(5, 150, 105, 0.15);
  transition: all 0.3s ease;
  flex-wrap: wrap;
}

/* Cuando está visible, aplicar flex */
#schedule-wrapper #schedule-info.delivery-scheduler-alert:not([style*="display: none"]):not([style*="display:none"]) {
  display: flex;
}

#schedule-wrapper #schedule-info.delivery-scheduler-alert:hover {
  box-shadow: 0 6px 20px rgba(5, 150, 105, 0.25);
  transform: translateY(-2px);
}

#schedule-wrapper #schedule-info .delivery-scheduler-alert-body {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

#schedule-wrapper #schedule-info .delivery-scheduler-alert-body .material-icons-outlined {
  font-size: 1.75rem;
  color: #059669;
  background: rgba(5, 150, 105, 0.15);
  padding: 0.5rem;
  border-radius: 50%;
}

#schedule-wrapper #schedule-info .delivery-scheduler-alert-text {
  font-size: 0.95rem;
  color: var(--color-dark, #232f3e);
}

#schedule-wrapper #schedule-info .delivery-scheduler-alert-text strong {
  font-weight: 700;
  color: #059669;
}

#schedule-wrapper #schedule-info .delivery-scheduler-alert-actions {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

/* Botones Editar y Eliminar para schedule */
#schedule-wrapper #schedule-info .btn-edit-schedule {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.85rem;
  font-size: 0.85rem;
  font-weight: 600;
  border-radius: 6px;
  background: #6b7280;
  border: none;
  color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
}

#schedule-wrapper #schedule-info .btn-edit-schedule:hover {
  background: #4b5563;
  box-shadow: 0 4px 12px rgba(107, 114, 128, 0.35);
}

#schedule-wrapper #schedule-info .btn-edit-schedule .material-icons-outlined {
  font-size: 1.1rem;
  background: none;
  padding: 0;
}

#schedule-wrapper #schedule-info .btn-delete-schedule {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.4rem 0.85rem;
  font-size: 0.85rem;
  font-weight: 600;
  border-radius: 6px;
  background: #ef4444;
  border: none;
  color: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
}

#schedule-wrapper #schedule-info .btn-delete-schedule:hover {
  background: #dc2626;
  box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4);
}

#schedule-wrapper #schedule-info .btn-delete-schedule .material-icons-outlined {
  font-size: 1.1rem;
  background: none;
  padding: 0;
}

/* Modal del delivery scheduler */
#schedule-modal .modal-content {
  border-radius: 16px;
  border: none;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}

#schedule-modal .modal-header {
  background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
  border-bottom: none;
  padding: 1.25rem 1.5rem;
  position: relative;
}

#schedule-modal .modal-title {
  color: #fff;
  font-weight: 700;
  font-size: 1.15rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#schedule-modal .modal-header .btn-close {
  filter: brightness(0) invert(1);
  opacity: 0.8;
  transition: opacity 0.2s ease;
}

#schedule-modal .modal-header .btn-close:hover {
  opacity: 1;
}

#schedule-modal .modal-body {
  padding: 1.5rem;
}

#schedule-modal .form-group {
  margin-bottom: 1.25rem;
}

#schedule-modal .form-label {
  font-weight: 600;
  color: var(--color-dark, #232f3e);
  margin-bottom: 0.5rem;
  display: block;
}

#schedule-modal .form-control {
  border-radius: 8px;
  border: 2px solid #e5e7eb;
  padding: 0.75rem 1rem;
  transition: all 0.2s ease;
}

#schedule-modal .form-control:focus {
  border-color: #6b7280;
  box-shadow: 0 0 0 3px rgba(107, 114, 128, 0.15);
}

#schedule-modal .form-text {
  font-size: 0.85rem;
  color: #6b7280;
  margin-top: 0.5rem;
}

#schedule-modal .modal-footer {
  border-top: 1px solid #e5e7eb;
  padding: 1rem 1.5rem;
  background: #f9fafb;
  gap: 0.5rem;
}

#schedule-modal .btn-secondary {
  background: #9ca3af;
  border: none;
  border-radius: 8px;
  font-weight: 600;
}

#schedule-modal .btn-secondary:hover {
  background: #6b7280;
}

#schedule-modal .btn-primary {
  background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
  border: none;
  border-radius: 8px;
  font-weight: 600;
}

#schedule-modal .btn-primary:hover {
  background: linear-gradient(135deg, #4b5563 0%, #374151 100%);
  box-shadow: 0 4px 12px rgba(107, 114, 128, 0.35);
}

/* Info tip del scheduler */
.delivery-scheduler-info-tip {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 1rem;
  margin-top: 0.75rem;
  background: rgba(107, 114, 128, 0.08);
  border: 1px solid rgba(107, 114, 128, 0.25);
  border-radius: 8px;
  font-size: 0.9rem;
  color: #4b5563;
}

.delivery-scheduler-info-tip .material-icons-outlined {
  color: #6b7280;
  font-size: 1.25rem;
  flex-shrink: 0;
}

/* Responsive */
@media (max-width: 576px) {
  #schedule-alert.delivery-scheduler-alert {
    flex-direction: column;
    text-align: center;
    gap: 0.75rem;
  }

  #schedule-alert .delivery-scheduler-alert-body {
    justify-content: center;
  }

  #schedule-wrapper #schedule-info.delivery-scheduler-alert {
    flex-direction: column;
    text-align: center;
  }

  #schedule-wrapper #schedule-info .delivery-scheduler-alert-actions {
    justify-content: center;
  }
}

/* ==========================================
   DATETIMEPICKER - Estilos personalizados
   ========================================== */

/* Días deshabilitados (fines de semana) */
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled {
  background: #f3f4f6 !important;
  color: #d1d5db !important;
  cursor: not-allowed !important;
  text-decoration: line-through;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover {
  background: #f3f4f6 !important;
  color: #d1d5db !important;
}

/* Mejorar apariencia general del datetimepicker */
.xdsoft_datetimepicker {
  border-radius: 12px !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important;
  border: 1px solid #e5e7eb !important;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
  background: #dbeafe !important;
  color: #1e40af !important;
  font-weight: 600;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current {
  background: #3b82f6 !important;
  color: #fff !important;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
  background: #3b82f6 !important;
  color: #fff !important;
}

/* Header del calendario */
.xdsoft_datetimepicker .xdsoft_label {
  font-weight: 600;
  color: #374151;
}

/* Días de la semana */
.xdsoft_datetimepicker .xdsoft_calendar th {
  font-weight: 600;
  color: #6b7280;
  font-size: 0.85rem;
}

.input-group .input-group-btn>.btn {
  color: #fff;
  font-weight: bold;
}

/* ========================================
   PÁGINA DE LOGIN - MEJORAS UX
   ======================================== */

/* Contenedor principal del login - centrado vertical */
#authentication #wrapper {
  min-height: calc(100vh - 200px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#authentication .main-content {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 2rem 0;
}

#authentication .breadcrumb-wrapper {
  background: transparent;
  padding: 0.5rem 0;
}

#authentication .breadcrumb {
  background: transparent;
  margin-bottom: 0;
  font-size: 0.85rem;
}

/* Título de la página */
#authentication .page-heading {
  font-size: 1.75rem;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 1.5rem;
  text-align: center;
}

/* Caja del formulario */
#authentication .shadow-box {
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  border: 1px solid #e5e7eb;
  max-width: 700px;
  margin: 0 auto;
  padding: 2.5rem !important;
}

/* Labels del formulario */
#authentication .form-control-label {
  font-weight: 500;
  color: #374151;
  font-size: 0.9rem;
}

/* Inputs del formulario */
#authentication .form-control {
  border: 1px solid #d1d5db;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  font-size: 0.95rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}

#authentication .form-control:focus {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
  outline: none;
}

/* Botón mostrar contraseña */
#authentication .input-group .input-group-btn>.btn {
  background: #e5e7eb;
  color: #4b5563;
  border: 1px solid #d1d5db;
  border-left: none;
  border-radius: 0 8px 8px 0;
  font-size: 0.8rem;
  font-weight: 500;
}

#authentication .input-group .form-control {
  border-radius: 8px 0 0 8px;
}

/* Botón de login */
#authentication #submit-login {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  border: none;
  border-radius: 8px;
  padding: 0.85rem 2.5rem;
  font-size: 1rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
  transition: all 0.2s;
}

#authentication #submit-login:hover {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
  box-shadow: 0 6px 16px rgba(59, 130, 246, 0.4);
  transform: translateY(-1px);
}

#authentication #submit-login i {
  margin-left: 0.5rem;
}

/* Link olvidó contraseña */
#authentication .forgot-password {
  margin-top: 1.5rem;
}

#authentication .forgot-password a {
  color: #6b7280;
  font-size: 0.9rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  transition: color 0.2s;
}

#authentication .forgot-password a:hover {
  color: #3b82f6;
}

#authentication .forgot-password .material-icons {
  font-size: 1.1rem;
}

/* Botón crear cuenta */
#authentication .no-account .btn-secondary {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  border: none;
  border-radius: 8px;
  color: #fff;
  padding: 0.85rem 2rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
  transition: all 0.2s;
  margin-top: 1rem;
}

#authentication .no-account .btn-secondary:hover {
  background: linear-gradient(135deg, #059669 0%, #047857 100%);
  box-shadow: 0 6px 16px rgba(16, 185, 129, 0.4);
  transform: translateY(-1px);
}

/* ========================================
   FOOTER MINIMALISTA (USUARIOS NO LOGUEADOS)
   ======================================== */

body:not(.logged) #footer {
  background: #f8fafc;
  padding: 1rem 0;
  border-top: 1px solid #e2e8f0;
}

body:not(.logged) .copyright-payment {
  padding: 0;
}

body:not(.logged) .copyright-payment p {
  font-size: 0.75rem;
  color: #64748b;
  margin: 0;
}

body:not(.logged) .copyright-payment a {
  color: #3b82f6;
  text-decoration: none;
}

body:not(.logged) .copyright-payment a:hover {
  text-decoration: underline;
}

/* Ocultar elementos innecesarios del footer para no logueados */
body:not(.logged) #footer .footer-top,
body:not(.logged) #footer .footer-middle,
body:not(.logged) #footer .footer-left,
body:not(.logged) #footer .footer-right,
body:not(.logged) #footer .footer-links {
  display: none;
}

.ets_crosssell_tab_content button.slick-arrow::before,
.ets_crosssell_block .tab_content button.slick-arrow::before {
  border-top: 1px solid #fff !important;
  border-right: 1px solid #fff !important;
}

/* Dropdown cuenta cliente - z-index mayor y fix hover */
.customer-logged {
  position: relative;
}

.dropdown-customer-account-links {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 99999 !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.customer-logged:hover .dropdown-customer-account-links,
.dropdown-customer-account-links:hover {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.dropdown-customer-account-links .dropdown-menu {
  display: block !important;
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 99999 !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  padding: 8px 0;
  min-width: 220px;
  background: #fff;
}

/* ===== INSTALACIONES / STORES PAGE ===== */

/* Wrapper full width */
#stores #wrapper {
  width: 100% !important;
  max-width: none !important;
}

#stores .breadcrumb-wrapper {
  display: none !important;
}

#stores #content-wrapper {
  padding: 0 !important;
  max-width: none !important;
}

#instalaciones-page.instalaciones-wrapper {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* CSS Variables */
#instalaciones-page {
  --inst-color-primary: #0056b3;
  --inst-color-primary-dark: #003d82;
  --inst-color-primary-light: #e3f0ff;
  --inst-color-accent: #ff8c00;
  --inst-color-accent-light: #fff5e6;
  --inst-bg-light: #ffffff;
  --inst-bg-soft: #f5f7fa;
  --inst-text-dark: #1a202c;
  --inst-text-medium: #4a5568;
  --inst-text-light: #718096;
  --inst-color-success: #38a169;
  --inst-color-closed: #e53e3e;
  --inst-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --inst-shadow-hover: 0 20px 60px rgba(0, 0, 0, 0.15);
  --inst-radius-sm: 8px;
  --inst-radius-lg: 20px;
  --inst-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hero Section */
#instalaciones-page .instalaciones-hero {
  background: linear-gradient(135deg, #1e3a5f 0%, #0d2137 100%);
  padding: 80px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

#instalaciones-page .instalaciones-hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  opacity: 0.5;
}

#instalaciones-page .hero-container {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

#instalaciones-page .hero-title {
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 700;
  color: #ffffff;
  margin: 0 0 20px 0;
  letter-spacing: -0.02em;
}

#instalaciones-page .hero-subtitle {
  font-size: clamp(1rem, 2vw, 1.25rem);
  color: rgba(255, 255, 255, 0.8);
  margin: 0;
  line-height: 1.6;
}

/* Stores Section */
#instalaciones-page .stores-section {
  padding: 60px 20px;
  background: var(--inst-bg-soft);
}

#instalaciones-page .stores-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

/* Store Card */
#instalaciones-page .store-card {
  background: var(--inst-bg-light);
  border-radius: var(--inst-radius-lg);
  box-shadow: var(--inst-shadow-md);
  overflow: hidden;
  transition: var(--inst-transition);
}

#instalaciones-page .store-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--inst-shadow-hover);
}

#instalaciones-page .store-card-inner {
  display: grid;
  grid-template-columns: 300px 1fr;
  min-height: 320px;
}

@media (max-width: 900px) {
  #instalaciones-page .store-card-inner {
    grid-template-columns: 1fr;
  }
}

/* Store Image */
#instalaciones-page .store-image {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #e8ecf1 0%, #d1d9e6 100%);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 20px;
}

#instalaciones-page .store-image img {
  width: 100%;
  height: auto;
  object-fit: contain;
  transition: var(--inst-transition);
}

#instalaciones-page .store-card:hover .store-image img {
  transform: scale(1.02);
}

#instalaciones-page .store-image-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 100%);
  padding: 30px;
}

#instalaciones-page .store-image-logo img {
  width: 80%;
  height: auto;
  object-fit: contain;
}

#instalaciones-page .store-badge {
  position: absolute;
  top: 15px;
  left: 15px;
  background: var(--inst-color-primary);
  color: #fff;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

#instalaciones-page .store-badge.badge-virtual {
  background: var(--inst-color-accent);
}

/* Store Content */
#instalaciones-page .store-content {
  padding: 30px;
  display: flex;
  flex-direction: column;
}

#instalaciones-page .store-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 25px;
  flex-wrap: wrap;
}

#instalaciones-page .store-name {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--inst-text-dark);
  margin: 0;
  line-height: 1.3;
}

#instalaciones-page .store-location-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--inst-color-primary-light);
  color: var(--inst-color-primary);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 500;
  white-space: nowrap;
}

#instalaciones-page .store-location-tag.virtual {
  background: var(--inst-color-accent-light);
  color: var(--inst-color-accent);
}

#instalaciones-page .store-location-tag i {
  font-size: 1rem;
}

/* Store Info Grid */
#instalaciones-page .store-info-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 25px;
  flex: 1;
}

@media (max-width: 768px) {
  #instalaciones-page .store-info-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

#instalaciones-page .store-info-grid h4 {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--inst-text-light);
  margin: 0 0 12px 0;
  display: flex;
  align-items: center;
  gap: 6px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

#instalaciones-page .store-info-grid h4 i {
  font-size: 1.1rem;
  color: var(--inst-color-primary);
}

/* Address */
#instalaciones-page .store-address address {
  font-style: normal;
  color: var(--inst-text-medium);
  line-height: 1.6;
  font-size: 0.95rem;
}

/* Contact */
#instalaciones-page .store-contact ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

#instalaciones-page .store-contact li {
  margin-bottom: 10px;
}

#instalaciones-page .store-contact a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--inst-text-medium);
  text-decoration: none;
  font-size: 0.95rem;
  transition: var(--inst-transition);
}

#instalaciones-page .store-contact a:hover {
  color: var(--inst-color-primary);
}

#instalaciones-page .store-contact a i {
  font-size: 1.1rem;
  color: var(--inst-color-primary);
}

#instalaciones-page .contact-large a {
  font-size: 1.1rem;
  font-weight: 500;
}

/* Hours Table */
#instalaciones-page .hours-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

#instalaciones-page .hours-table tr {
  border-bottom: 1px solid #edf2f7;
}

#instalaciones-page .hours-table tr:last-child {
  border-bottom: none;
}

#instalaciones-page .hours-table th {
  text-align: left;
  font-weight: 500;
  color: var(--inst-text-medium);
  padding: 6px 0;
  width: 50px;
}

#instalaciones-page .hours-table td {
  text-align: right;
  color: var(--inst-color-success);
  font-weight: 500;
  padding: 6px 0;
}

#instalaciones-page .hours-table tr.closed td {
  color: var(--inst-color-closed);
}

/* Store Actions */
#instalaciones-page .store-actions {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #edf2f7;
}

#instalaciones-page .btn-directions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--inst-color-primary);
  color: #fff;
  padding: 12px 24px;
  border-radius: var(--inst-radius-sm);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  transition: var(--inst-transition);
}

#instalaciones-page .btn-directions:hover {
  background: var(--inst-color-primary-dark);
  transform: translateY(-2px);
  color: #fff;
}

#instalaciones-page .btn-directions i {
  font-size: 1.2rem;
}

/* Call Center Specific */
#instalaciones-page .callcenter-grid {
  grid-template-columns: 1fr 1fr !important;
}

@media (max-width: 768px) {
  #instalaciones-page .callcenter-grid {
    grid-template-columns: 1fr !important;
  }
}

#instalaciones-page .store-contact-full {
  grid-column: span 1;
}

/* CTA Section */
#instalaciones-page .cta-section {
  padding: 80px 20px;
  background: linear-gradient(135deg, #1e3a5f 0%, #0d2137 100%);
}

#instalaciones-page .cta-container {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap;
}

#instalaciones-page .cta-content {
  flex: 1;
  min-width: 280px;
}

#instalaciones-page .cta-content h2 {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 15px 0;
}

#instalaciones-page .cta-content p {
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.8);
  margin: 0;
  line-height: 1.6;
}

#instalaciones-page .cta-actions {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}

#instalaciones-page .btn-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 28px;
  border-radius: var(--inst-radius-sm);
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  transition: var(--inst-transition);
  white-space: nowrap;
}

#instalaciones-page .btn-cta.btn-primary {
  background: var(--inst-color-accent);
  color: #fff;
}

#instalaciones-page .btn-cta.btn-primary:hover {
  background: #e67e00;
  transform: translateY(-2px);
  color: #fff;
}

#instalaciones-page .btn-cta.btn-secondary {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  border: 2px solid rgba(255, 255, 255, 0.3);
}

#instalaciones-page .btn-cta.btn-secondary:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff;
}

#instalaciones-page .btn-cta i {
  font-size: 1.2rem;
}

/* Responsive */
@media (max-width: 600px) {
  #instalaciones-page .instalaciones-hero {
    padding: 50px 15px;
  }

  #instalaciones-page .stores-section {
    padding: 40px 15px;
  }

  #instalaciones-page .store-content {
    padding: 20px;
  }

  #instalaciones-page .store-header {
    flex-direction: column;
    align-items: flex-start;
  }

  #instalaciones-page .cta-container {
    flex-direction: column;
    text-align: center;
  }

  #instalaciones-page .cta-actions {
    width: 100%;
    flex-direction: column;
  }

  #instalaciones-page .btn-cta {
    justify-content: center;
  }
}

/* =====================================================
   BUNDLE "COMPLÉTALO CON..." — Bloque lateral producto
   ===================================================== */

.accessories-bundle-section {
  border-top: 2px solid var(--color-secondary);
  border-left: none;
  border-right: none;
  border-bottom: none;
  overflow: hidden;
  background: var(--color-lightest);
  margin-top: 0;
}

.bundle-header {
  background: linear-gradient(135deg, var(--color-secondary) 0%, var(--color-primary) 100%);
  color: #fff;
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 9px 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.bundle-header i {
  font-size: 13px;
  color: #ffd700;
}

/* Lista de ítems bundle — vertical (sidebar) */
.bundle-list {
  padding: 8px 12px 2px;
}

/* Grid horizontal para full-width */
.bundle-list-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
  gap: 10px;
  padding: 12px;
}

.bundle-list-grid .bundle-item-card {
  border: 1px solid var(--color-border);
  border-radius: 8px;
  padding: 10px;
  background: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.bundle-list-grid .bundle-item-card:hover {
  border-color: var(--color-secondary);
  box-shadow: 0 2px 10px rgba(75, 123, 236, 0.12);
}

.bundle-item-card {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid var(--color-border);
}

.bundle-item-card:last-child {
  border-bottom: none;
  padding-bottom: 4px;
}

.bundle-list-grid .bundle-item-card:last-child {
  border-bottom: 1px solid var(--color-border);
  padding-bottom: 10px;
}

/* Imagen accesorio en bundle */
.bundle-item-img-link {
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 7px;
  overflow: hidden;
  transition: border-color 0.2s;
}

.bundle-item-img-link:hover {
  border-color: var(--color-secondary);
}

.bundle-item-img {
  max-width: 58px;
  max-height: 58px;
  object-fit: contain;
  display: block;
}

/* Info del accesorio */
.bundle-item-details {
  flex: 1;
  min-width: 0;
}

.bundle-item-name {
  font-size: 11px;
  color: var(--color-dark);
  line-height: 1.4;
  display: block;
  text-decoration: none;
  font-weight: 500;
  margin-bottom: 5px;
  word-break: break-word;
  transition: color 0.15s;
}

.bundle-item-name:hover {
  color: var(--color-secondary);
  text-decoration: none;
}

/* Precio bundle */
.bundle-item-price-row {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
}

.bundle-item-price {
  font-weight: 700;
  font-size: 14px;
  color: var(--color-primary);
  line-height: 1;
}

.bundle-item-old-price {
  font-size: 11px;
  color: var(--color-gray);
  text-decoration: line-through;
  line-height: 1;
}

.bundle-item-badge {
  font-size: 10px;
  font-weight: 700;
  background: var(--color-sale);
  color: #fff;
  border-radius: 4px;
  padding: 1px 5px;
  line-height: 1.4;
}

/* CTA "ver todos los accesorios" */
.bundle-cta-row {
  padding: 8px 12px 10px;
  background: linear-gradient(to bottom, transparent, rgba(75, 123, 236, 0.06));
  border-top: 1px solid var(--color-border);
  text-align: center;
}

.bundle-see-all-link {
  font-size: 11px;
  color: var(--color-secondary);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-weight: 600;
  transition: color 0.15s;
}

.bundle-see-all-link i {
  font-size: 11px;
}

.bundle-see-all-link:hover {
  color: var(--color-primary);
  text-decoration: underline;
}

/* =====================================================
   MINIATURA ACCESORIO v2 (product-accesories.tpl)
   Usada en la sección inferior si hay más de 3
   ===================================================== */

.product-accesory-v2 {
  margin-bottom: 8px;
}

.product-accesory-v2 .accesory-card-inner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.product-accesory-v2 .accesory-card-inner:hover {
  border-color: var(--color-secondary);
  box-shadow: 0 2px 12px rgba(75, 123, 236, 0.12);
}

.product-accesory-v2 .accesory-card-img-wrap {
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-lightest);
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid var(--color-border);
}

.product-accesory-v2 .accesory-card-img {
  max-width: 74px;
  max-height: 74px;
  object-fit: contain;
  display: block;
}

.product-accesory-v2 .accesory-card-info {
  flex: 1;
  min-width: 0;
}

.product-accesory-v2 .accesory-card-name a {
  font-size: 12px;
  font-weight: 500;
  color: var(--color-dark);
  text-decoration: none;
  line-height: 1.4;
  display: block;
  margin-bottom: 5px;
}

.product-accesory-v2 .accesory-card-name a:hover {
  color: var(--color-secondary);
}

.product-accesory-v2 .accesory-card-price-row {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}

.product-accesory-v2 .accesory-card-price {
  font-weight: 700;
  font-size: 15px;
  color: var(--color-primary);
}

.product-accesory-v2 .accesory-card-old-price {
  font-size: 11px;
  color: var(--color-gray);
  text-decoration: line-through;
}

.product-accesory-v2 .accesory-card-badge {
  font-size: 10px;
  font-weight: 700;
  background: var(--color-sale);
  color: #fff;
  border-radius: 4px;
  padding: 1px 5px;
}

.product-accesory-v2 .accesory-card-ecotax {
  font-size: 10px;
  color: var(--color-gray);
  margin: 0 0 4px;
}

.product-accesory-v2 .accesory-card-actions {
  margin-top: 4px;
}

/* Responsive: apila la imagen sobre el texto en móvil muy estrecho */
@media (max-width: 400px) {
  .bundle-item-card {
    flex-direction: column;
    align-items: flex-start;
  }

  .bundle-separator {
    margin-left: 0;
  }
}

/* ============================================================
   PROMO COUNTDOWN V2 — Product page banner + miniature overlay
   ============================================================ */

/* ---- Entrance animations ---- */
@keyframes pcdSlideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pcdSlideUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pcdShimmer {
  0% {
    transform: translateX(-120%);
  }

  100% {
    transform: translateX(120%);
  }
}

@keyframes pcdFirePulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.25);
    opacity: .85;
  }
}

@keyframes pcdNumTick {
  0% {
    transform: translateY(0) scale(1);
  }

  40% {
    transform: translateY(-3px) scale(1.06);
  }

  70% {
    transform: translateY(1px) scale(.97);
  }

  100% {
    transform: translateY(0) scale(1);
  }
}

/* ---- Product-page full banner ---- */
.promo-countdown-v2 {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #1e3a76 0%, #2a4b84 55%, #4b7bec 100%);
  border-radius: var(--border-radius);
  box-shadow: 0 4px 18px rgba(30, 58, 118, .38);
  padding: 12px 14px 10px;
  margin: 10px 0 6px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  animation: pcdSlideDown .45s cubic-bezier(.16, 1, .3, 1) both;
  width: 100%;
}

/* Shimmer highlight */
.promo-countdown-v2::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg,
      transparent 0%,
      rgba(255, 255, 255, .08) 45%,
      rgba(255, 255, 255, .12) 50%,
      rgba(255, 255, 255, .08) 55%,
      transparent 100%);
  animation: pcdShimmer 3.5s ease-in-out infinite;
  pointer-events: none;
}

/* Label row */
.pcd-label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: rgba(255, 255, 255, .88);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.pcd-label .pcd-fire {
  color: #ffd166;
  font-size: 13px;
  animation: pcdFirePulse 1.6s ease-in-out infinite;
}

/* Segments row */
.pcd-segments {
  display: flex;
  align-items: center;
  gap: 5px;
}

.pcd-segment {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
}

.pcd-num {
  min-width: 50px;
  background: rgba(255, 255, 255, .14);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 7px;
  color: #fff;
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  text-align: center;
  padding: 6px 4px 5px;
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  letter-spacing: -.5px;
  transition: background .15s;
}

.pcd-num.pcd-tick {
  animation: pcdNumTick .22s ease-out both;
  background: rgba(255, 255, 255, .26);
}

.pcd-unit {
  color: rgba(255, 255, 255, .62);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.pcd-sep {
  color: rgba(255, 255, 255, .45);
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 16px;
  user-select: none;
}

/* Expired state */
.promo-countdown-v2.pcd-expired {
  background: rgba(0, 0, 0, .08);
  box-shadow: none;
}

.promo-countdown-v2.pcd-expired .pcd-expired-msg {
  display: block;
}

.pcd-expired-msg {
  display: none;
  color: rgba(255, 255, 255, .7);
  font-size: 11px;
  font-weight: 600;
}

/* ---- Miniature overlay ---- */
.mini-promo-countdown-v2 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(135deg,
      rgba(30, 58, 118, .94) 0%,
      rgba(42, 75, 132, .94) 100%);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  padding: 5px 8px 5px 7px;
  display: flex;
  align-items: center;
  gap: 5px;
  z-index: 6;
  animation: pcdSlideUp .35s cubic-bezier(.16, 1, .3, 1) both;
  pointer-events: none;
}

.mpcd-icon {
  color: #ffd166;
  font-size: 11px;
  flex-shrink: 0;
  animation: pcdFirePulse 1.6s ease-in-out infinite;
}

.mpcd-inner {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.mpcd-label {
  color: rgba(255, 255, 255, .68);
  font-size: 7.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  line-height: 1;
}

.mpcd-time {
  color: #fff;
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1;
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.mpcd-val {
  display: inline-block;
  min-width: 15px;
  text-align: center;
}

.mpcd-sep {
  color: rgba(255, 255, 255, .4);
  font-weight: 400;
}

/* Product thumbnail needs position relative for the overlay */
.product-thumbnail {
  position: relative;
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
  .promo-countdown-v2 {
    padding: 9px 10px 8px;
    gap: 6px;
  }

  .pcd-num {
    font-size: 20px;
    min-width: 38px;
    padding: 5px 3px 4px;
    border-radius: 5px;
  }

  .pcd-sep {
    font-size: 16px;
    margin-bottom: 13px;
  }

  .pcd-unit {
    font-size: 7.5px;
  }

  .pcd-label {
    font-size: 9px;
  }
}

@media (max-width: 400px) {
  .pcd-num {
    font-size: 17px;
    min-width: 32px;
  }

  .pcd-segments {
    gap: 3px;
  }
}

/* ---- End Promo Countdown V2 ---- */

/* ==========================================
   EMPTY CART BUTTON
   ========================================== */
.btn-empty-cart {
  background-color: transparent;
  color: var(--color-danger);
  border: 2px solid var(--color-danger);
  border-radius: var(--border-radius);
  padding: 0.5rem 1.25rem;
  font-family: var(--font-primary);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all var(--transition-base);
  width: 100%;
  justify-content: center;
}

.btn-empty-cart i {
  font-size: 18px;
  transition: transform var(--transition-base);
}

.btn-empty-cart:hover {
  background-color: var(--color-danger);
  color: var(--color-white);
  box-shadow: 0 4px 12px rgba(220, 53, 69, 0.35);
  transform: translateY(-1px);
}

.btn-empty-cart:hover i {
  transform: scale(1.1);
}

.btn-empty-cart:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(220, 53, 69, 0.25);
}

.btn-empty-cart:disabled,
.btn-empty-cart.is-loading {
  opacity: 0.6;
  pointer-events: none;
  cursor: not-allowed;
}

/* Sidebar cart version - slightly smaller */
.cart-dropdown .btn-empty-cart {
  font-size: 11px;
  padding: 0.4rem 1rem;
}

/* ==========================================
   CROSS-SELL BLOCKS — HIDE STOCK NOTIFICATION
   ========================================== */
.ets_crosssell_list_blocks #notificacion-stock-container {
  display: none !important;
}

/* ==========================================
   PRINT STYLESHEET — FICHA DE PRODUCTO
   Diseño limpio para imprimir/PDF sin precios
   ========================================== */
@media print {

  /* ---- RESET PAGE ---- */
  @page {
    size: A4;
    margin: 0;
  }

  *,
  *::before,
  *::after {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  html,
  body {
    background: #fff !important;
    background-image: none !important;
    color: #1a1a1a !important;
    font-family: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif !important;
    font-size: 11pt !important;
    line-height: 1.5 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
    margin: 0 !important;
    padding: 15mm 15mm 20mm 15mm !important;
  }

  /* ---- OCULTAR ELEMENTOS INNECESARIOS ---- */
  header,
  footer,
  .breadcrumb-wrapper,
  .st-menu,
  #pc-header-compare-nav,
  #pc-compare-mini-panel,
  .pc-comparison-list,
  .pc-compare-mini-panel,
  .sticky-product-block,
  #sticky-product-block,
  #notifications,
  .product-prices,
  .product-prices-wrapper,
  .price-ecotax,
  .product-actions,
  .product-add-to-cart,
  .product-quantity,
  .product-minimal-quantity,
  .product-availability-top,
  .product-out-of-stock,
  .product-discount,
  .product-promos,
  .product-flags,
  .product-badges-row,
  .product-flag-wishlist,
  .print-link,
  .container-actions-product,
  .price,
  .product-price,
  .tax-shipping-delivery-label,
  .product-information.light-box-bg,
  .more-btn,
  .thumbs-list,
  .scroll-box-arrows,
  .layer,
  .col-right-mod,
  .ets_crosssell_block,
  .totalcross-space,
  .js-product-refresh-pending-query,
  .product-additional-info,
  .open_wishlist_form,
  .pc-product-compare-button-wrapper,
  .addtocart-quantity,
  .buttons-sections,
  .instantlistcart-widget-wrapper,
  .grid-hover-btn,
  .flag-stock-quantity,
  .product-availability,
  .sidebar-cart,
  .cart-dropdown,
  [data-sidebar-cart-trigger],
  .sticky-icon-cart,
  .modal,
  .modal-backdrop,
  script,
  noscript,
  iframe,
  .turnstile-wrapper,
  .product-quantities,
  .product-condition,
  .attribute-item.product-reference:nth-of-type(n+3),
  [data-close-st-menu] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ---- LAYOUT: FULL WIDTH ---- */
  .container,
  .main-content,
  #content-wrapper,
  .center-wrapper,
  .center-column {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  #wrapper {
    padding: 0 !important;
    margin: 0 !important;
  }

  .row,
  .row-left-center-right {
    display: block !important;
    margin: 0 !important;
  }

  /* ---- PRODUCT TOP INFO BAR ---- */
  .bg-white.box-shadow.py-2.px-4.mb-3 {
    box-shadow: none !important;
    border-bottom: 2px solid #e0e7f1 !important;
    padding: 8pt 0 !important;
    margin-bottom: 12pt !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .product-info-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    gap: 16pt !important;
    flex-wrap: wrap !important;
  }

  .product-info-item {
    font-size: 9pt !important;
    color: #555 !important;
  }

  /* Hide stock info from info bar in print */
  .product-info-item:nth-child(n+3) {
    display: none !important;
  }

  .brand-logo {
    display: block !important;
  }

  .brand-logo img {
    max-height: 36pt !important;
    width: auto !important;
  }

  /* ---- PRODUCT IMAGE ---- */
  .product-left,
  .product-left.col-12 {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin-bottom: 12pt !important;
  }

  .product-left-content {
    box-shadow: none !important;
    padding: 0 !important;
    text-align: center !important;
  }

  .images-container {
    text-align: center !important;
  }

  .product-cover {
    margin: 0 auto 8pt !important;
    max-width: 280pt !important;
  }

  .product-cover img,
  .js-qv-product-cover {
    max-width: 260pt !important;
    max-height: 260pt !important;
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* ---- PRODUCT RIGHT: TITLE & DETAILS ---- */
  .product-right,
  .product-right.col-12 {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    background: none !important;
    box-shadow: none !important;
  }

  .product-right-content {
    padding: 0 !important;
  }

  h1.page-heading {
    font-size: 16pt !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    margin: 4pt 0 6pt !important;
    line-height: 1.3 !important;
    border-bottom: 2px solid #1e3a76 !important;
    padding-bottom: 8pt !important;
    font-family: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif !important;
  }

  /* Product short description */
  .product-description-short {
    max-height: none !important;
    overflow: visible !important;
    height: auto !important;
    font-size: 10pt !important;
    color: #444 !important;
    margin-bottom: 12pt !important;
    line-height: 1.6 !important;
    padding: 8pt 12pt !important;
    background: #f7f9fc !important;
    border-left: 3px solid #1e3a76 !important;
    border-radius: 0 4pt 4pt 0 !important;
  }

  /* Product attributes (Ref, EAN, brand – mobile version) */
  .js-product-attributes-destination {
    display: none !important;
  }

  /* ---- TABS: SHOW ALL CONTENT ---- */
  .main-product-bottom {
    page-break-before: auto !important;
  }

  .main-product-bottom .row {
    display: block !important;
  }

  .main-product-bottom .col-xl-9 {
    width: 100% !important;
    float: none !important;
  }

  /* Hide tab navigation, show all tab content */
  .product-tabs .nav-tabs {
    display: none !important;
  }

  .product-tabs .tab-content {
    display: block !important;
  }

  .product-tabs .tab-pane {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
  }

  .product-tabs .tab-pane.fade {
    opacity: 1 !important;
  }

  /* Tab panel titles */
  .product-description-block::before {
    content: "Descripción del Producto";
    display: block !important;
    font-size: 13pt !important;
    font-weight: 700 !important;
    color: #1e3a76 !important;
    margin: 16pt 0 8pt !important;
    padding-bottom: 4pt !important;
    border-bottom: 1px solid #d0d8e8 !important;
  }

  .product-features-block::before {
    content: "Ficha Técnica";
    display: block !important;
    font-size: 13pt !important;
    font-weight: 700 !important;
    color: #1e3a76 !important;
    margin: 16pt 0 8pt !important;
    padding-bottom: 4pt !important;
    border-bottom: 1px solid #d0d8e8 !important;
  }

  .product-additionalInfo-block::before {
    content: "Información Adicional";
    display: block !important;
    font-size: 13pt !important;
    font-weight: 700 !important;
    color: #1e3a76 !important;
    margin: 16pt 0 8pt !important;
    padding-bottom: 4pt !important;
    border-bottom: 1px solid #d0d8e8 !important;
  }

  .panel-content {
    padding: 0 !important;
  }

  /* ---- DESCRIPTION SPECS TABLE ---- */
  .product-description h2 {
    font-size: 12pt !important;
    font-weight: 700 !important;
    color: #1e3a76 !important;
    margin-bottom: 6pt !important;
  }

  .product-description table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-bottom: 12pt !important;
    page-break-inside: avoid !important;
    font-size: 9.5pt !important;
  }

  .product-description table th {
    background: #1e3a76 !important;
    color: #fff !important;
    font-weight: 600 !important;
    padding: 6pt 10pt !important;
    text-align: left !important;
    font-size: 9pt !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5pt !important;
  }

  .product-description table td {
    padding: 5pt 10pt !important;
    border-bottom: 1px solid #e4e9f0 !important;
    color: #333 !important;
    font-size: 9.5pt !important;
  }

  .product-description table tr:nth-child(even) td {
    background: #f7f9fc !important;
  }

  .product-description table td strong {
    color: #1a1a1a !important;
    font-weight: 600 !important;
  }

  /* ---- DESCRIPTION: LIST FORMAT (ul/li specs) ---- */
  .product-description ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 4pt 0 !important;
  }

  /* Category headers (top-level li > strong) */
  .product-description>ul>li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .product-description>ul>li>strong,
  .product-description>ul>li:first-child>strong {
    display: block !important;
    background: #1e3a76 !important;
    color: #fff !important;
    padding: 5pt 10pt !important;
    font-size: 9.5pt !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5pt !important;
    margin: 8pt 0 0 0 !important;
    page-break-after: avoid !important;
  }

  .product-description>ul>li:first-child>strong {
    margin-top: 0 !important;
  }

  /* Spec items (nested ul > li) */
  .product-description ul ul {
    padding: 0 !important;
    margin: 0 !important;
  }

  .product-description ul ul li {
    padding: 4pt 10pt !important;
    margin: 0 !important;
    border-bottom: 1px solid #e4e9f0 !important;
    font-size: 9pt !important;
    color: #333 !important;
    list-style: none !important;
    line-height: 1.5 !important;
  }

  .product-description ul ul li:nth-child(even) {
    background: #f7f9fc !important;
  }

  .product-description ul ul li strong {
    color: #1a1a1a !important;
    font-weight: 600 !important;
  }

  /* Remove bullet markers everywhere in print */
  .product-description li::marker {
    content: '' !important;
    display: none !important;
  }

  .product-description ul ul li::before {
    content: none !important;
  }

  /* ---- FICHA TÉCNICA (DATA SHEET) ---- */
  .product-features h5 {
    display: none !important;
    /* Hidden because we use ::before */
  }

  .data-sheet {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    page-break-inside: avoid !important;
  }

  .data-sheet dt.name {
    background: #f1f4f9 !important;
    padding: 5pt 10pt !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    font-size: 9.5pt !important;
    border-bottom: 1px solid #dce3ef !important;
    margin: 0 !important;
  }

  .data-sheet dd.value {
    padding: 5pt 10pt !important;
    color: #444 !important;
    font-size: 9.5pt !important;
    border-bottom: 1px solid #e4e9f0 !important;
    margin: 0 !important;
  }

  /* ---- ADDITIONAL INFO CARDS ---- */
  .product-additionalInfo-modern {
    padding: 0 !important;
  }

  .additional-info-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8pt !important;
  }

  .info-card {
    display: flex !important;
    align-items: center !important;
    gap: 6pt !important;
    padding: 6pt 10pt !important;
    background: #f7f9fc !important;
    border-radius: 4pt !important;
    page-break-inside: avoid !important;
  }

  .info-icon {
    display: none !important;
  }

  .info-label {
    font-weight: 600 !important;
    color: #555 !important;
    font-size: 8.5pt !important;
    display: block !important;
  }

  .info-value {
    color: #1a1a1a !important;
    font-size: 9.5pt !important;
    font-weight: 500 !important;
    display: block !important;
  }

  /* ---- PRODUCT DETAILS JSON BLOCK ---- */
  .js-product-attributes-source {
    display: none !important;
  }

  #product-details {
    display: block !important;
  }

  /* ---- FOOTER PRINT BRANDING ---- */
  body#product::after {
    content: "Comercial AV — online.comercialav.com";
    display: block !important;
    text-align: center !important;
    font-size: 8pt !important;
    color: #999 !important;
    margin-top: 24pt !important;
    padding-top: 8pt !important;
    border-top: 1px solid #ddd !important;
    font-style: italic !important;
  }

  /* ---- ENSURE LINKS DON'T SHOW URLS ---- */
  a[href]::after {
    content: "" !important;
  }

  /* ---- AVOID PAGE BREAKS INSIDE KEY BLOCKS ---- */
  .product-cover,
  .product-description table,
  .data-sheet,
  .additional-info-grid,
  .info-card {
    page-break-inside: avoid !important;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    page-break-after: avoid !important;
  }

  /* ---- HIDE ALL RELATED/CROSSSELL PRODUCTS ---- */
  .crosssell_product_list_wrapper,
  .ets_crosssell_list_blocks,
  .ets_crosssell_title,
  .featured-products,
  .product-miniature,
  .slick-slider,
  .slick-list,
  .slick-track {
    display: none !important;
  }

}