/*
 * WOPE child theme sobre Warehouse 4.8.1
 * Paleta: morado #7B3FA0 + mostaza #F5C842 + crema #FBF8F3
 * Compilado directo desde CSS (sin build). Editar aquí libremente.
 */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Poppins:wght@500;600;700;800&display=swap');

:root {
  --wope-purple: #7B3FA0;
  --wope-purple-dark: #5E2E7C;
  --wope-mustard: #F5C842;
  --wope-cream: #FBF8F3;
  --wope-ink: #1A1A1A;
  --wope-muted: #6B6B6B;
  --wope-border: #E8E4DC;
}

/* ===== Tipografías ===== */
body, .btn, input, select, textarea, button {
  font-family: 'Montserrat', system-ui, -apple-system, sans-serif;
  color: var(--wope-ink);
}
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .page-home h1, .page-home h2 {
  font-family: 'Poppins', system-ui, sans-serif;
  font-weight: 700;
}

/* ===== Header estilo BRAVA (encima de Warehouse) ===== */
#desktop-header { background: #fff; border-bottom: 1px solid var(--wope-border); }
.header-nav { background: var(--wope-cream); font-size: 12px; color: var(--wope-muted); }
.header-nav a { color: var(--wope-muted); }
.header-nav a:hover { color: var(--wope-purple); }

#_desktop_logo img, .logo img { max-height: 60px; width: auto; }

/* Menú principal en mayúsculas con separadores tipo Brava */
#iqitmegamenu-menu .iqitmegamenu-nav > li > a,
.iqit-menu > li > a,
.top-menu .top-menu__list > li > a {
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--wope-ink) !important;
}
#iqitmegamenu-menu .iqitmegamenu-nav > li:not(:last-child)::after {
  content: "|";
  color: var(--wope-border);
  align-self: center;
  margin: 0 4px;
}
#iqitmegamenu-menu .iqitmegamenu-nav > li > a:hover { color: var(--wope-purple) !important; }

/* Botón "TIENDA ONLINE" (utilidad reusable) */
.wope-btn-tienda {
  display: inline-block;
  padding: 10px 22px;
  border: 1.5px solid var(--wope-ink);
  color: var(--wope-ink);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  border-radius: 2px;
  text-decoration: none;
  transition: all .2s;
}
.wope-btn-tienda:hover { background: var(--wope-ink); color: #fff; }

/* ===== Home MUY limpio (ocultar cualquier bloque de destacados) ===== */
.page-home .featured-products,
.page-home .products-section-title,
.page-home #products.featured-products { display: none !important; }

.wope-hero {
  background: var(--wope-cream);
  padding: 80px 20px;
  text-align: center;
}
.wope-hero__title { font-size: 44px; margin-bottom: 12px; }
.wope-hero__lead  { color: var(--wope-muted); font-size: 17px; margin-bottom: 24px; }

.wope-benefits { padding: 60px 0; }
.wope-benefits h3 {
  font-family: 'Montserrat';
  font-size: 14px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--wope-purple);
  margin-bottom: 8px;
}
.wope-benefits p { color: var(--wope-muted); font-size: 14px; }

/* ===== Botones globales ===== */
.btn-primary,
.btn.btn-primary,
.add-to-cart {
  background: var(--wope-purple) !important;
  border-color: var(--wope-purple) !important;
  border-radius: 2px !important;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 600;
}
.btn-primary:hover { background: var(--wope-purple-dark) !important; border-color: var(--wope-purple-dark) !important; }

/* ===== Ficha producto compacta con Stock / desde / + IVA ===== */
.product-miniature .product-title a { color: var(--wope-ink); font-weight: 600; font-family: 'Montserrat'; }
.product-miniature .product-title a:hover { color: var(--wope-purple); }

.wope-stock { font-size: 12px; margin: 4px 0; }
.wope-stock .in  { color: #2f7a3d; }
.wope-stock .out { color: #b45309; }

.product-price-and-shipping .wope-from {
  display: block;
  font-size: 11px;
  color: var(--wope-muted);
  text-transform: uppercase;
  letter-spacing: .08em;
}
.product-price-and-shipping .product-price {
  font-size: 18px !important;
  font-weight: 700;
  color: var(--wope-ink);
}
.product-price-and-shipping .wope-tax {
  font-size: 11px;
  color: var(--wope-muted);
  margin-left: 4px;
}

/* ===== Sidebar categorías (estilo Merchi) ===== */
#left-column .block-categories,
#left-column .block { border: 1px solid var(--wope-border); border-radius: 4px; }
#left-column .block-categories a { color: var(--wope-ink); font-size: 14px; }
#left-column .block-categories a:hover,
#left-column .block-categories .current a { color: var(--wope-purple); font-weight: 600; }

/* ===== Footer ===== */
#footer, .footer-container { background: var(--wope-cream); color: var(--wope-muted); }
#footer h3, #footer h4 {
  color: var(--wope-ink); font-family: 'Montserrat';
  font-size: 13px; letter-spacing: .12em; text-transform: uppercase;
}

#footer-container-main a, #checkout-footer a{
  color: #000000;
}

/* ===== WhatsApp flotante fijo abajo-derecha ===== */
.wope-whatsapp {
  position: fixed; right: 24px; bottom: 24px;
  width: 58px; height: 58px; border-radius: 50%;
  background: #25D366;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 8px 24px rgba(0,0,0,.18);
  z-index: 9999; transition: transform .2s;
}
.wope-whatsapp:hover { transform: scale(1.06); }
.wope-whatsapp .fa-whatsapp {
  color: #fff;
  font-size: 32px;
  line-height: 1;
}

/* ===== Registro estilo Merchi ===== */
.wope-register { max-width: 720px; margin: 0 auto; }
.wope-register__steps {
  display: flex; gap: 8px; list-style: none;
  padding: 0; margin: 0 0 24px;
}
.wope-register__steps li {
  flex: 1; padding: 10px; text-align: center;
  background: var(--wope-cream); border-radius: 3px;
  font-size: 12px; color: var(--wope-muted);
  text-transform: uppercase; letter-spacing: .1em;
}
.wope-register__steps li.active { background: var(--wope-purple); color: #fff; }

/* ===== WOPE Custom Header ===== */
.wope-header-row {
  min-height: 90px;
  padding: 18px 0;
}

.wope-header-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
}

.wope-header-actions .wope-btn-tienda {
  order: -1;
}

.wope-header-actions .ps-shoppingcart,
.wope-header-actions .header-cart-default,
.wope-header-actions .blockcart {
  display: inline-flex !important;
  align-items: center !important;
}

.wope-header-actions .cart-toogle,
.wope-header-actions .header-cart-btn,
.wope-header-actions .header-btn,
.wope-header-actions #cart-toogle,
.wope-header-actions .blockcart .header a,
.wope-header-actions a#cart-toogle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border: 1.5px solid var(--wope-ink) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--wope-ink) !important;
  font-size: 18px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  position: relative !important;
  padding: 0 !important;
  margin: 0 !important;
}

.wope-header-actions .cart-toogle:hover,
.wope-header-actions .header-btn:hover,
.wope-header-actions .header-cart-btn:hover,
.wope-header-actions #cart-toogle:hover,
.wope-header-actions a#cart-toogle:hover {
  background: var(--wope-ink) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.wope-header-actions .cart-toogle .info-wrapper,
.wope-header-actions .cart-toogle .title,
.wope-header-actions .cart-toogle .cart-toggle-details,
.wope-header-actions .cart-toogle .text-faded,
.wope-header-actions .cart-toogle span:not(.cart-products-count-btn) {
  display: none !important;
}

.wope-header-actions .cart-products-count-btn,
.wope-header-actions .cart-toogle .cart-products-count-btn {
  position: absolute !important;
  top: -6px !important;
  right: -6px !important;
  background: var(--wope-purple) !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  width: 20px !important;
  height: 20px !important;
  line-height: 20px !important;
  text-align: center !important;
  border-radius: 50% !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
}

.wope-header-actions .cart-toogle i,
.wope-header-actions .cart-toogle i.fa,
.wope-header-actions .cart-toogle i.icon,
.wope-header-actions .cart-toogle i.fa-shopping-bag,
.wope-header-actions .cart-toogle i.fa-fw {
  color: var(--wope-ink) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

.wope-header-actions .cart-toogle:hover i,
.wope-header-actions .cart-toogle:hover i.fa,
.wope-header-actions .cart-toogle:hover i.icon,
.wope-header-actions .cart-toogle:hover i.fa-shopping-bag,
.wope-header-actions .cart-toogle:hover i.fa-fw {
  color: #ffffff !important;
}

.wope-menu-bar {
  background: #ffffff !important;
  border-top: 1px solid var(--wope-border);
  border-bottom: 1px solid var(--wope-border);
}

.wope-menu-bar .container {
  padding: 0 15px;
}

/* Ajuste buscador en header */
.wope-header-row #search_widget,
.wope-header-row .search-widget {
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
}

.wope-header-row #search_widget input[type="text"],
.wope-header-row .search-widget input[type="text"] {
  border: 1.5px solid var(--wope-border);
  border-radius: 2px;
  padding: 12px 18px;
  font-size: 13px;
  color: var(--wope-ink);
  background: #fff;
}

.wope-header-row #search_widget input[type="text"]::placeholder,
.wope-header-row .search-widget input[type="text"]::placeholder {
  color: var(--wope-muted);
  font-size: 13px;
}

.wope-header-row #search_widget button,
.wope-header-row .search-widget button {
  background: var(--wope-purple);
  border-color: var(--wope-purple);
  color: #fff;
  border-radius: 0 2px 2px 0;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.1em;
  font-weight: 600;
}

.wope-header-row #search_widget button:hover,
.wope-header-row .search-widget button:hover {
  background: var(--wope-purple-dark);
  border-color: var(--wope-purple-dark);
}

/* Ocultar barra superior para mantener header limpio */
.header-nav { display: none !important; }

/* Ajuste logo */
#_desktop_logo img, .logo img { max-height: 60px; width: auto; }

/* ===== Ajustes para igualar maqueta Lovable ===== */

/* Ocultar texto de iniciar sesión, dejar solo icono */
.wope-header-actions #_desktop_user_info,
.wope-header-actions .user-info,
.wope-header-actions .header-login-btn,
.wope-header-actions .account-link {
  font-size: 0 !important;
}

.wope-header-actions #_desktop_user_info a,
.wope-header-actions .user-info a,
.wope-header-actions .header-login-btn a,
.wope-header-actions .account-link a {
  font-size: 0 !important;
}

.wope-header-actions #_desktop_user_info a i,
.wope-header-actions .user-info a i,
.wope-header-actions .header-login-btn a i,
.wope-header-actions .account-link a i,
.wope-header-actions #_desktop_user_info a .fa,
.wope-header-actions .user-info a .fa,
.wope-header-actions .header-login-btn a .fa,
.wope-header-actions .account-link a .fa {
  font-size: 20px !important;
}

/* Icono de carrito tipo cuadrado/outline (sin círculo) */
.wope-header-actions .cart-toogle,
.wope-header-actions .header-cart-btn,
.wope-header-actions .header-btn,
.wope-header-actions #cart-toogle,
.wope-header-actions .blockcart .header a,
.wope-header-actions a#cart-toogle {
  width: auto !important;
  height: auto !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--wope-ink) !important;
  font-size: 24px !important;
  padding: 0 !important;
}

.wope-header-actions .cart-toogle:hover,
.wope-header-actions .header-btn:hover,
.wope-header-actions .header-cart-btn:hover,
.wope-header-actions #cart-toogle:hover,
.wope-header-actions a#cart-toogle:hover {
  background: transparent !important;
  color: var(--wope-purple) !important;
}

.wope-header-actions .cart-toogle i,
.wope-header-actions .cart-toogle i.fa,
.wope-header-actions .cart-toogle i.icon,
.wope-header-actions .cart-toogle i.fa-shopping-bag,
.wope-header-actions .cart-toogle i.fa-fw {
  font-size: 24px !important;
  color: var(--wope-ink) !important;
}

.wope-header-actions .cart-toogle:hover i,
.wope-header-actions .cart-toogle:hover i.fa,
.wope-header-actions .cart-toogle:hover i.icon,
.wope-header-actions .cart-toogle:hover i.fa-shopping-bag,
.wope-header-actions .cart-toogle:hover i.fa-fw {
  color: var(--wope-purple) !important;
}

.wope-header-actions .cart-products-count-btn,
.wope-header-actions .cart-toogle .cart-products-count-btn {
  top: -8px !important;
  right: -8px !important;
}

/* Menú: fondo blanco completo, sin áreas oscuras */
#iqitmegamenu-wrapper,
#iqitmegamenu-horizontal,
.container-iqitmegamenu,
.cbp-hrmenu,
.cbp-horizontal,
.iqitmegamenu-wrapper,
.iqitmegamenu-all {
  background: #ffffff !important;
  border: none !important;
}

.wope-menu-bar .container,
.wope-menu-bar .container-iqitmegamenu,
#iqitmegamenu-wrapper .container,
#iqitmegamenu-horizontal .container {
  background: #ffffff !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
}

.container.iqit-megamenu-container{
  max-width: 1500px !important;
}

img.logo.img-fluid{
  width: 155px;
}

#cbp-hrmenu .cbp-hrsub {
    width: max-content;
    margin: 0 auto;
    position: absolute;
    top: 44px;
    left: 0;
    min-width: 100%;
}

.cbp-hrmenu .cbp-hrsub-inner .cbp-column-title, .cbp-hrmenu .cbp-hrsub-inner a.cbp-column-title:link{
  font-size: 12px !important;
    color: #7F3F93!important;
    padding: 0;
    margin: 0;
}

a.cbp-column-title.nav-link.cbp-category-title {
    font-size: 12px !important;
    color: #7F3F93!important;
    padding: 0;
    margin: 0;
}

.cbp-hrmenu .cbp-links li a{
  font-size: 12px;
}

div#search_widget{
      width: 100% !important;
    display: flex;
    justify-content: flex-end;
    max-width: 100% !important;
}

input.form-control.form-search-control {
    width: 300px;
}

/* Centrar items del menú */
#cbp-hrmenu > ul,
#cbp-hrmenu.cbp-horizontal > ul,
#iqitmegamenu-menu .iqitmegamenu-nav,
#iqitmegamenu-horizontal .cbp-hrmenu > ul,
.iqitmegamenu .cbp-hrmenu > ul {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  background: #ffffff !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  justify-content: flex-end !important;
}

#cbp-hrmenu > ul > li,
#cbp-hrmenu.cbp-horizontal > ul > li,
#iqitmegamenu-menu .iqitmegamenu-nav > li,
#iqitmegamenu-horizontal .cbp-hrmenu > ul > li,
.iqitmegamenu .cbp-hrmenu > ul > li,
.cbp-hrmenu-tab {
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
  position: relative !important;
}

#cbp-hrmenu > ul > li > a,
#cbp-hrmenu.cbp-horizontal > ul > li > a,
#iqitmegamenu-menu .iqitmegamenu-nav > li > a,
#iqitmegamenu-horizontal .cbp-hrmenu > ul > li > a,
.iqitmegamenu .cbp-hrmenu > ul > li > a,
.cbp-hrmenu-tab > a,
.cbp-hrmenu-tab > a.cbp-tab-title {
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--wope-ink) !important;
  padding: 16px 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
  text-decoration: none !important;
}

#cbp-hrmenu > ul > li > a:hover,
#cbp-hrmenu.cbp-horizontal > ul > li > a:hover,
#iqitmegamenu-menu .iqitmegamenu-nav > li > a:hover,
#iqitmegamenu-horizontal .cbp-hrmenu > ul > li > a:hover,
.iqitmegamenu .cbp-hrmenu > ul > li > a:hover,
.cbp-hrmenu-tab > a:hover,
.cbp-hrmenu-tab > a.cbp-tab-title:hover {
  color: var(--wope-purple) !important;
  background: transparent !important;
}

/* Separadores tipo Brava */
#cbp-hrmenu > ul > li:not(:last-child)::after,
#cbp-hrmenu.cbp-horizontal > ul > li:not(:last-child)::after,
#iqitmegamenu-menu .iqitmegamenu-nav > li:not(:last-child)::after,
#iqitmegamenu-horizontal .cbp-hrmenu > ul > li:not(:last-child)::after,
.iqitmegamenu .cbp-hrmenu > ul > li:not(:last-child)::after,
.cbp-hrmenu > ul > li:not(:last-child)::after {
  content: "|";
  color: var(--wope-border);
  align-self: center;
  font-size: 12px;
  font-weight: 300;
}

/* Submenús con fondo blanco */
.cbp-hrmenu .cbp-hrsub,
.cbp-hrmenu .cbp-hrsub-inner,
.cbp-hrmenu .cbp-tab-content,
.cbp-hrmenu .dropdown-menu,
.cbp-hrmenu .cbp-tab-pane {
  background: #ffffff !important;
  border: 1px solid var(--wope-border) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
}

/* Ajustar icono de búsqueda */
.wope-header-row #search_widget .input-group,
.wope-header-row .search-widget .input-group {
  align-items: center;
}

.wope-header-row #search_widget input[type="text"],
.wope-header-row .search-widget input[type="text"] {
  border-right: none !important;
  padding-left: 40px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B6B6B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: 14px center !important;
  background-size: 16px 16px !important;
}

.wope-header-row #search_widget button,
.wope-header-row .search-widget button {
  border-radius: 2px !important;
  padding: 12px 18px !important;
}


/* ===== Footer WOPE completo ===== */
.footer-style-wope-first {
  background: var(--wope-mustard) !important;
  color: var(--wope-ink) !important;
  padding: 30px 0;
  border-top: 1px solid var(--wope-border);
}

.footer-style-wope-first h5 {
  color: var(--wope-ink);
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.footer-style-wope {
  background: var(--wope-cream) !important;
  color: var(--wope-muted) !important;
  padding: 60px 0 30px;
  border-top: 1px solid var(--wope-border);
}

.footer-style-wope .footer-brand img {
  max-height: 50px;
  width: auto;
  margin-bottom: 20px;
}

.footer-style-wope .footer-brand p {
  font-size: 14px;
  line-height: 1.6;
  color: var(--wope-muted);
  margin-bottom: 20px;
}

.footer-style-wope .social-icons {
  display: flex;
  gap: 14px;
}

.footer-style-wope .social-icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--wope-ink);
  color: #fff!important;
  text-decoration: none;
  transition: background 0.2s;
}

.footer-style-wope .social-icons a:hover {
  background: var(--wope-purple);
  color: #fff;
}

.footer-style-wope .footer-col {
  margin-bottom: 30px;
}

.footer-style-wope .block-title {
  color: var(--wope-ink) !important;
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 20px;
  border: none !important;
  background: transparent !important;
}

.footer-style-wope .block-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-style-wope .block-links ul li {
  margin-bottom: 10px;
}

.footer-style-wope .block-links ul li a,
.footer-style-wope .contact-info li a,
.footer-style-wope .contact-info li span {
  color: var(--wope-muted);
  font-size: 14px;
  text-decoration: none;
  transition: color 0.2s;
}

.footer-style-wope .block-links ul li a:hover,
.footer-style-wope .contact-info li a:hover {
  color: var(--wope-purple) !important;
}

.footer-style-wope .contact-info li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  font-size: 14px;
  color: var(--wope-muted);
}

.footer-style-wope .contact-info li i {
  color: var(--wope-purple);
  margin-top: 3px;
  width: 16px;
}

.footer-copyrights-wope {
  background: var(--wope-ink) !important;
  color: var(--wope-muted) !important;
  padding: 20px 0;
  font-size: 13px;
}

.footer-copyrights-wope .copyright-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.footer-copyrights-wope .copyright-text {
  color: var(--wope-cream);
}

.footer-copyrights-wope .copyright-links {
  color: var(--wope-muted);
}

.footer-copyrights-wope .copyright-links strong {
  color: var(--wope-cream);
}

.cbp-hrmenu.cbp-vertical{
  display: none;
}

.btn-primary, .btn.btn-primary, .add-to-cart{
      color: #fff !important;
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 400 !important;
    margin-top: 25px;
    margin-bottom: 25px;
}

#product .row.extra-small-gutters.product-quantity{
      display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
}

#product .col.col-12.col-sm-auto.col-add-qty{
  height: fit-content!important;
}

#product .btn-primary, .btn.btn-primary, .add-to-cart{
  margin-top: 0;
  margin-bottom: 0;
}

.btn-product-list{
         color: #fff !important;
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 400 !important;
    margin-top: 25px;
    margin-bottom: 25px;
}

div#product-comments-list-header {
    display: none;
}

div#empty-product-comment {
    display: none;
}

h1.h1.page-title {
    font-family: 'Poppins';
}

.product-price{
      color: #7B3FA0;
}

@media (max-width: 768px) {
  .footer-style-wope {
    padding: 40px 0 20px;
  }
  .footer-style-wope .footer-col {
    margin-bottom: 30px;
  }
  .footer-copyrights-wope .copyright-content {
    flex-direction: column;
    text-align: center;
  }
}

/* ===== Esquinas redondeadas globales ===== */
.card,
.product-miniature,
.product-miniature .thumbnail-container,
.product-miniature img,
.product-miniature .product-thumbnail img,
.product-miniature-default,
.product-miniature-grid,
.btn,
.btn-primary,
.btn-secondary,
.form-control,
.input-group,
.alert,
.badge,
.cart-item,
.cart-summary,
.checkout-step,
.block,
.block-categories,
#left-column .block,
#left-column .block-categories,
.page-content,
.featured-products .product-miniature,
.page-home .card,
.modal-content {
  border-radius: 12px !important;
}

.btn, .btn-primary, .btn-secondary, .btn-product-list, .add-to-cart {
  border-radius: 8px !important;
}

.form-control, input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], input[type="password"], select, textarea {
  border-radius: 8px !important;
}

.product-miniature .product-thumbnail img,
.product-miniature img.product-thumbnail-first {
  border-radius: 12px 12px 0 0 !important;
}

.cart-container .cart-item {
  border-radius: 12px !important;
  overflow: hidden;
}

/* ===== Guía de técnicas - CMS page ===== */
.wope-guia-tecnicas .wope-tecnica-card {
  border: 1px solid #E8E4DC;
  border-radius: 12px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.wope-guia-tecnicas .wope-tecnica-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(123, 63, 160, 0.1);
}
.wope-guia-tecnicas .wope-tecnica-icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #F0E6F6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7B3FA0;
  margin-bottom: 12px;
}
.wope-guia-tecnicas .wope-tecnica-card h3 {
  color: #7B3FA0;
  font-family: 'Montserrat', sans-serif;
}

/* ===== Cotizador form card ===== */
.wope-quote-form-card {
  border-radius: 12px !important;
  border: 1px solid #E8E4DC;
  background: #FDFCFA;
}
.wope-quote-form-title {
  color: #7B3FA0;
  font-weight: 600;
}
.wope-quote-form-card .form-control {
  border-radius: 8px !important;
  border: 1px solid #E8E4DC;
}
.wope-quote-form-card .form-control:focus {
  border-color: #7B3FA0;
  box-shadow: 0 0 0 2px rgba(123, 63, 160, 0.15);
}
.wope-quote-form-card .btn-primary {
  border-radius: 10px !important;
  padding: 14px 20px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
}

/* ===== Quote Confirmation page ===== */
.wope-quote-confirmation {
  max-width: 750px;
  margin: 0 auto;
  padding: 30px 0;
}
.wope-check-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #F0E6F6;
}
.wope-check-icon i {
  font-size: 48px;
  color: #7B3FA0;
}
.wope-confirmation-card {
  border-radius: 12px !important;
  border: 1px solid #E8E4DC;
}
.wope-confirmation-card .card-body h3 {
  color: #7B3FA0;
}
.wope-next-steps {
  background: #F8F0FC;
  border-radius: 12px;
  padding: 10px;
}
.wope-next-steps h3 {
  color: #5E2E7C;
}

/* ===== Cotización: tipografía y precios desde + IVA ===== */
body#cart h1,
body#cart h2,
body#cart h3,
body#cart h4,
body#cart h5,
body#cart h6,
.wope-quote-confirmation h1,
.wope-quote-confirmation h2,
.wope-quote-confirmation h3,
.wope-quote-confirmation h4,
.wope-quote-confirmation h5,
.wope-quote-confirmation h6 {
  font-family: 'Montserrat', system-ui, -apple-system, sans-serif !important;
}

body#cart .page-title::after,
body#cart .section-title::after {
  display: none !important;
}

.wope-quote-total {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.wope-quote-total .value,
.wope-quote-iva {
  margin-left: 5px;
}
.wope-quote-price-note {
  display: block;
  flex-basis: 100%;
  margin-top: 4px;
  color: #6B6B6B;
  font-size: 12px;
  font-weight: 400;
}

/* ===== DESDE $xxxx + IVA en listado ===== */
.wope-from {
  font-size: 11px;
  font-weight: 600;
  color: #7B3FA0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-right: 3px;
}
.wope-tax {
  font-size: 11px;
  font-weight: 500;
  color: #6B6B6B;
  margin-left: 3px;
}

/* Stock visible y consistente en grilla, lista y ficha */
.wope-stock,
.wope-product-stock {
  display: block;
  margin-top: 6px;
  font-size: 11px;
  line-height: 1.35;
  font-weight: 600;
}
.wope-stock.in,
.wope-product-stock.in { color: #2f7a3d; }
.wope-stock.out,
.wope-product-stock.out { color: #b45309; }

/* El buscador no debe mostrar la categoría técnica PRODUCT ni el subrayado azul. */
.product-category-name,
#js-product-list-header .page-title::after,
#js-product-list-header .page-title span::after {
  display: none !important;
}
#js-product-list-header .page-title {
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* En resultados, el CTA conserva la estética WOPE y no el azul de Warehouse. */
.btn-product-list {
  background: #fff !important;
  border: 1px solid var(--wope-purple) !important;
  color: var(--wope-purple) !important;
}
.btn-product-list:hover {
  background: var(--wope-purple) !important;
  color: #fff !important;
}

/* ===== Ajustes solicitados agosto 2026 ===== */
.product-miniature-default .variant-links .color {
  border-radius: 50px;
}

.wope-header-row .col-header-center { display: flex; justify-content: center; }
.wope-header-row #search_widget,
.wope-header-row .search-widget {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  margin: 0 auto !important;
  justify-content: center !important;
}
.wope-header-row #search_widget form,
.wope-header-row .search-widget form,
.wope-header-row #search_widget .input-group,
.wope-header-row .search-widget .input-group { width: 100%; }
.wope-header-row input.form-search-control { width: 100% !important; }

/* Acceso del menú representado únicamente por la casita. */
#cbp-hrmenu > ul > li:has(> a .fa-home),
#cbp-hrmenu > ul > li:has(> .cbp-main-link .fa-home) { display: none !important; }

/* Ficha enfocada en variantes, precio y personalización. */
#product .product-description-section,
#product #product-details-wrapper,
#product .product-features,
#product .product-additional-info .social-sharing,
#product .product-additional-info .social-sharing-wrapper { display: none !important; }

/* Selectores de color circulares. */
#product .product-variants-item ul,
#product .product-variants-item .input-container { list-style: none; }
#product .product-variants-item .color,
#product .product-variants-item .input-color + .color {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px;
  border-radius: 50% !important;
  overflow: hidden;
  box-shadow: 0 0 0 1px var(--wope-border);
}
#product .product-variants-item .input-color:checked + .color {
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--wope-purple);
}

.wope-product-tax {
  margin-left: 7px;
  color: var(--wope-muted);
  font-family: 'Montserrat', sans-serif;
  font-size: .7em;
  font-weight: 600;
  white-space: nowrap;
  vertical-align: middle;
}

/* Ocultar la leyenda adicional de impuestos/envío en la ficha. */
#product .tax-shipping-delivery-label {
  display: none !important;
}

/* Armonía tipográfica de páginas informativas, incluida Quiénes somos. */
.page-cms .page-title,
.page-cms .page-content h1,
.page-cms .page-content h2,
.page-cms .page-content h3,
.page-cms .page-content h4 {
  font-family: 'Poppins', system-ui, sans-serif !important;
  color: var(--wope-ink);
  line-height: 1.25;
}
.page-cms .page-content,
.page-cms .page-content p,
.page-cms .page-content li {
  font-family: 'Montserrat', system-ui, sans-serif !important;
  line-height: 1.7;
}

/* ===== Mega-menú: ancho completo y sin recorte ===== */
.wope-menu-bar,
.wope-menu-bar .container,
.wope-menu-bar .container-iqitmegamenu,
.wope-menu-bar #iqitmegamenu-horizontal,
.wope-menu-bar #cbp-hrmenu,
.wope-menu-bar #cbp-hrmenu > ul {
  overflow: visible !important;
}
.wope-menu-bar {
  position: relative;
  z-index: 1050;
}
.wope-menu-bar #cbp-hrmenu {
  position: relative;
}
.wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu {
  position: static !important;
}
.wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub {
  top: 100% !important;
  left: 0 !important;
  right: auto !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  z-index: 1060 !important;
}
.wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  overflow-x: hidden;
}
.wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner > .container {
  width: 100% !important;
  max-width: 1500px !important;
  margin: 0 auto !important;
}

/* ===== Orden del cotizador en ficha de producto ===== */
#product .wope-customization-box {
  margin-top: 18px !important;
}
#product .wope-customization-quantity {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid var(--wope-border);
  border-radius: 10px;
}
#product .wope-customization-quantity label {
  margin: 0;
  font-weight: 600;
}
#product .wope-quantity-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 26px;
  grid-template-rows: 21px 21px;
  width: 112px;
  height: 42px;
  flex: 0 0 112px;
}
#product .wope-quantity-input {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 100%;
  height: 42px;
  min-height: 42px;
  padding: 0 8px;
  text-align: center;
  border: 1px solid var(--wope-border);
  border-radius: 8px 0 0 8px !important;
  appearance: textfield;
}
#product .wope-quantity-input::-webkit-inner-spin-button,
#product .wope-quantity-input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
#product .wope-quantity-button {
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 21px;
  padding: 0;
  color: var(--wope-purple);
  line-height: 1;
  cursor: pointer;
  background: #fff;
  border: 1px solid var(--wope-border);
}
#product .wope-quantity-button--up {
  grid-column: 2;
  grid-row: 1;
  border-left: 0;
  border-radius: 0 8px 0 0;
}
#product .wope-quantity-button--down {
  grid-column: 2;
  grid-row: 2;
  border-top: 0;
  border-left: 0;
  border-radius: 0 0 8px 0;
}
#product .wope-quantity-button:hover {
  background: #F8F0FC;
}
#product .wope-quantity-button:focus-visible {
  outline: 2px solid var(--wope-purple);
  outline-offset: 1px;
}
@media (max-width: 575px) {
  #product .wope-quantity-control {
    width: 104px;
    flex-basis: 104px;
  }
}
#product .wope-product-quote-button {
  margin-top: 20px;
  padding-top: 20px !important;
  border-top: 1px solid var(--wope-border);
}
#product .wope-product-quote-button .add-to-cart {
  width: 100%;
  min-height: 50px;
}

/* El botón de retorno del tema queda eliminado para no tapar WhatsApp. */
#back-to-top { display: none !important; }

/* El carrito lateral debe quedar por encima del header, menu y widgets flotantes. */
.ps-shoppingcart.side-cart,
.ps-shoppingcart.side-cart #blockcart,
.ps-shoppingcart.side-cart #blockcart-content {
  z-index: 20000 !important;
}
.ps-shoppingcart.side-cart {
  position: relative !important;
}
.ps-shoppingcart.side-cart #blockcart-content {
  isolation: isolate;
}
.ps-shoppingcart.side-cart #_desktop_blockcart-content,
.ps-shoppingcart.side-cart #_mobile_blockcart-content,
.ps-shoppingcart.side-cart #blockcart-content {
  background: #FDFCFA !important;
  background-color: #FDFCFA !important;
  color: var(--wope-ink) !important;
}

/* El contador se muestra cuando el carrito tiene productos. */
.ps-shoppingcart .cart-toogle,
.ps-shoppingcart #cart-toogle {
  position: relative !important;
}
.ps-shoppingcart .cart-products-count-btn:not(.d-none) {
  position: absolute !important;
  top: -8px !important;
  right: -8px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 20px !important;
  width: 20px !important;
  height: 20px !important;
  padding: 0 !important;
  color: #fff !important;
  background: var(--wope-purple) !important;
  border: 0 !important;
  border-radius: 50% !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-align: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .18);
}

/* Estilo global de títulos de contenido y confirmación de cotización. */
#content-wrapper .page-title:after {
  border-bottom: solid 5px #F5E70F !important;
}
#module-wopequote-confirmation header.page-header {
  display: none !important;
}

/* El enlace de inicio de sesión debe conservar contraste al pasar el cursor. */
.wope-header-actions #user_info > a:hover,
.wope-header-actions #user_info > a:focus-visible,
.wope-header-actions #user_info > .dropdown > a:hover,
.wope-header-actions #user_info > .dropdown > a:focus-visible,
.wope-header-actions .header-user-btn:hover,
.wope-header-actions .header-user-btn:focus-visible {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--wope-purple) !important;
  text-decoration: none !important;
}
.wope-header-actions #user_info > a:hover i,
.wope-header-actions #user_info > a:focus-visible i,
.wope-header-actions #user_info > .dropdown > a:hover i,
.wope-header-actions #user_info > .dropdown > a:focus-visible i,
.wope-header-actions .header-user-btn:hover i,
.wope-header-actions .header-user-btn:focus-visible i,
.wope-header-actions .header-user-btn:hover span,
.wope-header-actions .header-user-btn:focus-visible span {
  color: var(--wope-purple) !important;
}

/* ===== Tipografía global y página Sobre nosotros ===== */
body,
body p,
body li,
body label,
body input,
body select,
body textarea,
body button,
body .btn {
  font-family: 'Montserrat', system-ui, sans-serif !important;
}
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .h1,
body .h2,
body .h3,
body .h4,
body .h5,
body .h6 {
  font-family: 'Poppins', system-ui, sans-serif !important;
}

.page-about-us {
  padding: 0 !important;
  color: var(--wope-ink);
  background: #fff;
}
.page-about-us .container {
  max-width: 1180px;
}
.page-about-us .about-hero {
  padding: 72px 0 80px;
  background: #FDFCFA;
}
.page-about-us .about-hero .row {
  row-gap: 36px;
}
.page-about-us .about-title {
  margin: 0 0 18px;
  color: var(--wope-ink);
  font-size: 48px;
  line-height: 1.12;
  letter-spacing: 0;
}
.page-about-us .about-subtitle {
  max-width: 500px;
  margin: 0 0 20px;
  color: var(--wope-purple);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.5;
}
.page-about-us .about-description {
  max-width: 540px;
  margin: 0;
  color: var(--wope-muted);
  font-size: 16px;
  line-height: 1.75;
}
.page-about-us .about-hero img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 8px !important;
  box-shadow: 0 12px 30px rgba(26, 26, 26, .12);
}
.page-about-us .about-values,
.page-about-us .about-why {
  padding: 72px 0;
}
.page-about-us .about-values {
  background: #fff;
}
.page-about-us .section-title {
  margin: 0 0 34px;
  color: var(--wope-ink);
  font-size: 30px;
  line-height: 1.2;
}
.page-about-us .section-title::after {
  display: block;
  width: 38px;
  margin-top: 14px;
  border-bottom: 4px solid #F5E70F;
  content: '';
}
.page-about-us .value-card,
.page-about-us .mission-card {
  height: 100%;
  padding: 28px;
  border: 1px solid var(--wope-border);
  border-radius: 8px;
  background: #fff;
}
.page-about-us .value-card {
  transition: transform .2s ease, box-shadow .2s ease;
}
.page-about-us .value-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(26, 26, 26, .08);
}
.page-about-us .value-icon,
.page-about-us .why-item > i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 20px;
  border-radius: 50%;
  background: #F0E6F6;
  color: var(--wope-purple);
  font-size: 20px;
}
.page-about-us .value-card h3,
.page-about-us .mission-card h2,
.page-about-us .why-item h4 {
  margin: 0 0 10px;
  color: var(--wope-ink);
  font-size: 21px;
  line-height: 1.3;
}
.page-about-us .value-card p,
.page-about-us .mission-card p,
.page-about-us .why-item p {
  margin: 0;
  color: var(--wope-muted);
  font-size: 14px;
  line-height: 1.7;
}
.page-about-us .about-stats {
  padding: 46px 0;
  background: var(--wope-purple);
  color: #fff;
}
.page-about-us .stat-item {
  padding: 12px 16px;
}
.page-about-us .stat-number {
  margin: 0 0 6px;
  color: #fff;
  font-size: 34px;
  line-height: 1.1;
}
.page-about-us .stat-label {
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .04em;
}
.page-about-us .about-mission {
  padding: 72px 0;
  background: #FDFCFA;
}
.page-about-us .mission-card {
  border-top: 4px solid var(--wope-purple);
}
.page-about-us .mission-card h2 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 23px;
}
.page-about-us .mission-card h2 i {
  color: var(--wope-purple);
  font-size: 20px;
}
.page-about-us .about-why {
  background: #fff;
}
.page-about-us .why-item {
  height: 100%;
  padding: 8px 0;
}
.page-about-us .why-item > i {
  margin-bottom: 16px;
  font-size: 18px;
}
.page-about-us .why-item h4 {
  font-size: 17px;
}
.page-about-us .about-cta {
  padding: 72px 0;
  background: var(--wope-ink);
  color: #fff;
}
.page-about-us .about-cta h2 {
  margin: 0 0 12px;
  color: #fff;
  font-size: 32px;
}
.page-about-us .about-cta p {
  margin: 0 auto 26px;
  color: rgba(255, 255, 255, .8);
  font-size: 16px;
}
.page-about-us .about-cta .btn {
  min-width: 170px;
  border: 0;
  border-radius: 6px !important;
  background: #F5E70F;
  color: var(--wope-ink) !important;
  font-weight: 700;
}
.page-about-us .about-cta .btn:hover,
.page-about-us .about-cta .btn:focus-visible {
  background: #fff;
  color: var(--wope-purple) !important;
}
@media (max-width: 767px) {
  .page-about-us .about-hero,
  .page-about-us .about-values,
  .page-about-us .about-mission,
  .page-about-us .about-why,
  .page-about-us .about-cta {
    padding: 48px 0;
  }
  .page-about-us .about-title {
    font-size: 36px;
  }
  .page-about-us .stat-item {
    padding: 14px 8px;
  }
  .page-about-us .stat-number {
    font-size: 28px;
  }
}

/* Datos de contacto reales compartidos con el footer. */
.wope-contact-layout {
  row-gap: 28px;
}
.wope-contact-info {
  height: 100%;
  padding: 28px;
  border: 1px solid var(--wope-border);
  border-radius: 8px;
  background: #FDFCFA;
}
.wope-contact-info h2 {
  margin: 0 0 12px;
  color: var(--wope-ink);
  font-size: 24px;
  line-height: 1.3;
}
.wope-contact-intro {
  margin: 0 0 26px;
  color: var(--wope-muted);
  font-size: 14px;
  line-height: 1.65;
}
.wope-contact-list {
  display: grid;
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.wope-contact-list li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin: 0;
  color: var(--wope-muted);
  font-size: 14px;
  line-height: 1.5;
}
.wope-contact-list li > i {
  width: 20px;
  padding-top: 3px;
  color: var(--wope-purple);
  font-size: 17px;
  text-align: center;
}
.wope-contact-list li > div {
  display: grid;
  gap: 2px;
}
.wope-contact-label {
  color: var(--wope-ink);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.wope-contact-list a {
  color: var(--wope-muted);
  text-decoration: none;
}
.wope-contact-list a:hover,
.wope-contact-list a:focus-visible {
  color: var(--wope-purple);
}
.wope-contact-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 28px;
  color: var(--wope-purple) !important;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
}
.wope-contact-whatsapp:hover,
.wope-contact-whatsapp:focus-visible {
  color: var(--wope-purple-dark) !important;
}

/* El megamenú muestra las subcategorías solo cuando se solicitan. */
.cbp-hrmenu .cbp-category-children {
  display: none !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 6px 0 0 !important;
  padding: 4px 0 4px 14px !important;
  white-space: normal !important;
  border: 0 !important;
  box-shadow: none !important;
}
.cbp-hrmenu .cbp-category-children.is-open {
  display: block !important;
}
.cbp-hrmenu .cbp-category-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--wope-purple);
  cursor: pointer;
}
.cbp-hrmenu .cbp-category-toggle:hover,
.cbp-hrmenu .cbp-category-toggle:focus-visible {
  color: var(--wope-purple-dark);
}
.cbp-hrmenu .cbp-category-toggle i {
  pointer-events: none;
}
.cbp-hrmenu .cbp-category-children .cbp-category-toggle {
  width: 20px;
  height: 20px;
}
/* Alinea el nombre y el control en una sola fila para evitar saltos visuales. */
.cbp-hrmenu .cbp-category-link-w {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.cbp-hrmenu .cbp-category-link-w > a:not(.cbp-category-thumb) {
  display: inline-flex !important;
  flex: 0 1 auto;
  width: auto !important;
  align-items: center;
}
.cbp-hrmenu .cbp-category-link-w > .cbp-category-toggle {
  flex: 0 0 auto;
}
.cbp-hrmenu .cbp-category-link-w > .cbp-category-children {
  flex: 0 0 100%;
}
.cbp-hrmenu .cbp-hrsub .cbp-category-link-w > a:after {
  display: none !important;
}

/* El panel de categorías se ajusta a sus columnas, sin una franja vacía lateral. */
@media (min-width: 992px) {
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub {
    left: 50% !important;
    width: fit-content !important;
    min-width: 0 !important;
    max-width: calc(100vw - 32px) !important;
    transform: translateX(-50%) !important;
  }
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner,
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner > .container {
    width: fit-content !important;
    max-width: calc(100vw - 32px) !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row {
    width: fit-content !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div {
    flex: 0 0 300px;
    max-width: 300px;
  }
}

/* La línea azul de los productos relacionados no pertenece a la paleta WOPE. */
.category-products .section-title::after {
  display: none !important;
}

/* Presentación tipo catálogo para el menú de categorías. */
@media (min-width: 992px) {
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub {
    width: min(920px, calc(100vw - 32px)) !important;
    max-width: calc(100vw - 32px) !important;
  }
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner {
    box-sizing: border-box;
    width: 100% !important;
    background: #FDFCFA !important;
    border-top: 3px solid var(--wope-purple) !important;
    border-radius: 0 0 8px 8px;
  }
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner > .container {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    padding: 18px 22px 20px !important;
  }
  .wope-menu-bar #cbp-hrmenu > ul > li.cbp-has-submeu > .cbp-hrsub > .cbp-hrsub-inner > .container > .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start;
    width: auto !important;
    margin: 0 !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-menu-column {
    box-sizing: border-box;
    flex: 0 0 280px !important;
    width: 280px !important;
    max-width: 280px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 16px !important;
    float: none !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-menu-column.cbp-empty-column {
    display: none !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-menu-column + .cbp-menu-column {
    border-left: 1px solid var(--wope-border);
  }
  .wope-menu-bar #cbp-hrmenu .cbp-menu-column-inner {
    width: 100% !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div > .cbp-category-link-w {
    min-height: 36px;
    padding: 6px 0;
    border-bottom: 1px solid var(--wope-border);
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div > .cbp-category-link-w > a.cbp-category-title {
    min-width: 0;
    color: var(--wope-ink) !important;
    font-size: 13px !important;
    font-weight: 700;
    line-height: 1.35;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div > .cbp-category-link-w > .cbp-category-toggle {
    flex: 0 0 24px;
    margin-left: auto;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div > .cbp-category-link-w:hover > a.cbp-category-title,
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row > div > .cbp-category-link-w > a.cbp-category-title:hover {
    color: var(--wope-purple) !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row .cbp-category-children {
    padding: 8px 0 8px 12px !important;
    background: transparent !important;
  }
  .wope-menu-bar #cbp-hrmenu .cbp-categories-row .cbp-category-children li {
    margin: 2px 0 !important;
  }
}
@media (max-width: 767px) {
  .wope-contact-info {
    padding: 24px;
  }
}
