/************************************************************
 * VARIABLES & RESETS
 ************************************************************/
:root{
  --brand:#2fb5d2;
  --brand-ink:#227a8e;
  --ink:rgba(0,0,0,.78);
  --ink-weak:rgba(0,0,0,.12);
  --ink-weak-2:rgba(0,0,0,.06);
  --ink-weak-3:rgba(0,0,0,.18);
  --bg:#fff;
  --chip-br:999px;
  --fx-1:0 2px 8px rgba(0,0,0,.05);
  --fx-2:0 6px 24px rgba(0,0,0,.08);
  --fx-brand:0 4px 12px rgba(47,181,210,.28);
  --fx-brand-2:0 8px 18px rgba(47,181,210,.18);
  --ring:0 0 0 3px rgba(47,181,210,.25);
  --ring-soft:0 0 0 3px rgba(47,181,210,.18);
}

.header-top{ background-color:#dfe0de; }

/************************************************************
 * CATEGORÍAS
 ************************************************************/
/* Oculta iconografía heredada y togglers nativos */
.block-categories .collapse-icons,
.block-categories .grower,
.block-categories .material-icons.add,
.block-categories .material-icons.remove,
.block-categories .navbar-toggler,
.block-categories .expander{ display:none !important; }

/* Flechas/estado */
.block-categories li{ position:relative; }
.block-categories li a{ padding-right:16px; }
.block-categories .collapse{ display:none; }
.block-categories .collapse.show{ display:block; }

.block-categories .arrows{ cursor:pointer; margin-left:6px; }
.block-categories .arrow,
.block-categories .arrow-down{
  display:inline-block; width:0; height:0; border-style:solid; vertical-align:middle;
}
.block-categories .arrow{ border-width:5px 0 5px 6px; border-color:transparent transparent transparent currentColor; }
.block-categories .arrow-down{ display:none; border-width:6px 5px 0 5px; border-color:currentColor transparent transparent transparent; }
.block-categories li.is-open > .arrows .arrow{ display:none; }
.block-categories li.is-open > .arrows .arrow-down{ display:inline-block; }

/* Quita chevron textual previo y estandariza > en casos necesarios */
.block-categories li a::after{ content:""; }
.block-categories--home .category-home-row > li > a::after{ content:"" !important; }

/* Niveles y estados */
#left-column .block-categories{ max-width:320px; }
.block-categories li[data-depth="0"] > a{ font-weight:700; }
.block-categories li.current > a{
  background:rgba(47,181,210,.12);
  outline:2px solid rgba(47,181,210,.35);
}

/************************************************************
 * BUSCADOR (HEADER)
 ************************************************************/
#header #search_widget{ width:100%; }
#header #search_widget form{
  position:relative; max-width:620px; margin:14px auto; z-index:5;
}
#header #search_widget input[type="text"],
#header #search_widget input[type="search"]{
  width:100%; height:46px; padding:10px 48px 10px 44px;
  border:1px solid rgba(0,0,0,.16); border-radius:var(--chip-br); background:var(--bg);
  box-shadow:var(--fx-1);
  transition:border-color .15s ease, box-shadow .15s ease; font-size:16px;
}
#header #search_widget input:focus{
  outline:0; border-color:var(--brand); box-shadow:var(--ring-soft);
}

/* Lupa CSS embebida (mobile & fallback) */
#header #search_widget form::before{
  content:""; position:absolute; left:14px; top:50%; width:18px; height:18px;
  transform:translateY(-50%); opacity:.55; pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
  background-repeat:no-repeat; background-position:center; background-size:contain;
}

#header #search_widget button[type="submit"]{
  position:absolute; right:6px; top:50%; transform:translateY(-50%);
  width:36px; height:36px; border:none; border-radius:var(--chip-br); background:var(--brand); color:#fff; cursor:pointer;
  display:flex; align-items:center; justify-content:center; box-shadow:var(--fx-brand);
  transition:filter .15s ease, transform .05s ease;
}
#header #search_widget button[type="submit"]:hover{ filter:brightness(.95); }
#header #search_widget button[type="submit"]:active{ transform:translateY(-50%) scale(.98); }
#header #search_widget button[type="submit"] span{ display:none; }
#header #search_widget button[type="submit"]::before{
  content:""; width:0; height:0; border-style:solid; border-width:6px 0 6px 8px; border-color:transparent transparent transparent #fff;
}

/* Autocomplete por encima del header */
.ui-autocomplete{ z-index:9999 !important; }

/* Quitar iconos nativos del buscador */
#search_widget .material-icons,
#search_widget .search,
#search_widget .clear{ display:none !important; }

/************************************************************
 * HEADER – COMUN ESCRITORIO
 ************************************************************/
@media (min-width:992px){
  /* Layout común */
  #header .header-top .container,
  #header .header-top .row{ display:flex; align-items:center; justify-content:flex-start !important; }

  /* Grid de 3 zonas */
  .desktop-header-bar{
    display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:20px; min-height:96px; width:100%;
  }
  .desktop-header-bar .dh-left,
  .desktop-header-bar .dh-right{ display:flex; align-items:center; gap:16px; }
  .desktop-header-bar .dh-left{ justify-self:center; }
  .desktop-header-bar .dh-center{ justify-self:center; text-align:center; }
  .desktop-header-bar .dh-right{ justify-self:end; }

  #_desktop_logo img{ max-height:80px; width:auto; }
  #search_widget{ flex:1 1 520px; max-width:620px; }

  /* Contacto / Usuario / Carrito pills */
  #header #_desktop_contact_link,
  #header #_desktop_user_info,
  #header #_desktop_cart{
    display:inline-flex; align-items:center; height:40px; padding:8px 12px; margin:0 10px;
    border-radius:var(--chip-br); background:transparent;
    transition:background-color .15s ease, box-shadow .15s ease, filter .15s ease;
  }

  #header #_desktop_contact_link a,
  #header #_desktop_user_info a{
    color:rgba(0,0,0,.72); text-decoration:none; font-weight:600; letter-spacing:.2px; white-space:nowrap;
  }

  #header #_desktop_contact_link:hover,
  #header #_desktop_user_info:hover{
    background:rgba(255,255,255,.6); box-shadow:0 1px 3px rgba(0,0,0,.06);
  }

  /* Usuario: separar nombre y logout */
  #header #_desktop_user_info{ gap:10px; }
  #header #_desktop_user_info a.account{
    padding:6px 10px; border-radius:var(--chip-br); background:var(--ink-weak-2);
  }
  #header #_desktop_user_info a.logout{
    padding:6px 12px; border-radius:var(--chip-br); background:rgba(0,0,0,.12); font-weight:700;
  }
  #header #_desktop_user_info a.logout:hover{ background:#ff4da6; }
  #header #_desktop_user_info a.logout::before{ content:""; display:inline-block; width:1px; height:16px; background:rgba(0,0,0,.15); margin:0 10px 0 2px; vertical-align:middle; }

  /* Carrito destacado */
  #header #_desktop_cart{ background:var(--brand); box-shadow:var(--fx-brand); }
  #header #_desktop_cart a{ color:#fff; font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:8px; }
  #header #_desktop_cart:hover{ background:#ff4da6; filter:none; }
  #header #_desktop_cart .cart-products-count,
  #header #_desktop_cart .cart-quantity{
    display:inline-flex; min-width:22px; height:22px; padding:0 6px; align-items:center; justify-content:center;
    font-size:12px; line-height:1; color:#fff; background:rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.45); border-radius:var(--chip-br);
  }

  /* Iconos */
  #header #_desktop_contact_link i,
  #header #_desktop_user_info i,
  #header #_desktop_cart i,
  #header #_desktop_user_info .material-icons,
  #header #_desktop_cart .material-icons{
    font-size:18px; line-height:1; margin-right:6px; opacity:.9; vertical-align:middle;
  }

  /* Divisor sutil bajo la franja */
  #header .header-top .container::after{
    content:""; display:block; height:0; margin-top:10px; border-bottom:1px solid var(--ink-weak-2);
  }
}

/************************************************************
 * MENÚ / SUBCATEGORÍAS VISIBILIDAD POR BREAKPOINT
 ************************************************************/
/* <= 991.98px: ocultar lateral, mostrar top menu y subcategorías */
@media (max-width:991.98px){
  #left-column, #left-column .block-categories{ display:none !important; }

  #_desktop_top_menu, #_mobile_top_menu,
  .header-nav .top-menu, .header-top .top-menu{ display:block !important; }

  .page-category #subcategories,
  .page-category .subcategories,
  .page-category .category-subcategories{ display:block !important; }

  /* Home móvil: ocultar bloque categorías */
  .page-index .block-categories--home,
  .page-index #left-column .block-categories{ display:none !important; }

  /* Logo móvil centrado */
  #header #_mobile_logo{ display:flex; justify-content:center; align-items:center; width:100%; }
  #header #_mobile_logo img{ margin:8px; height:auto; max-height:70px; }

  /* Buscador responsive móvil */
  #header #search_widget{ order:3; padding:25px 25px; }
  #header #search_widget form{ max-width:none; }
  #header #search_widget input{ height:44px; font-size:16px; }
  #header #search_widget button[type="submit"]{ width:34px; height:34px; }
}

/* >= 992px: ocultar top menu y subcategorías centrales; mostrar lateral */
@media (min-width:992px){
  #_desktop_top_menu, .header-nav .top-menu, .header-top .top-menu{ display:none !important; }
  .page-category #subcategories, .page-category .subcategories, .page-category .category-subcategories{ display:none !important; }
  #left-column{ display:block !important; }

  /* Logo centrado absoluto + buscador a la derecha (variantes compatibles) */
  #header .header-top .container,
  #header .header-nav .container{
    display:flex; align-items:center; justify-content:flex-start; position:relative; min-height:110px;
  }
  #header #_desktop_logo{
    position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); margin:0; z-index:2; text-align:center;
  }
  #header #_desktop_logo img{ height:70px !important; max-height:none !important; width:auto; max-width:none; }
  #header #search_widget{ margin-left:auto; flex:0 1 500px; max-width:500px; }
  #header #_desktop_logo, #header #search_widget{ order:initial; }

  /* Home desktop: mostrar lateral y chips */
  .page-index #left-column{ display:block !important; }
  .page-index #left-column .block-categories{ max-width:none; }
  .page-index #left-column .block-categories .category-top-menu > li > ul.category-sub-menu{
    display:flex !important; flex-wrap:wrap !important; gap:12px 16px; margin:0; padding:0; list-style:none;
  }
  .page-index #left-column .block-categories .category-top-menu > li > ul.category-sub-menu > li{
    width:auto !important; flex:0 0 auto !important; display:inline-flex !important;
  }
  .page-index #left-column .block-categories .category-top-menu > li > ul.category-sub-menu > li > a{
    display:inline-block !important; padding:8px 12px; border:1px solid var(--ink-weak); border-radius:var(--chip-br);
    background:var(--bg); transition:all .15s ease; text-transform:none;
  }
  .page-index #left-column .block-categories .category-top-menu > li > ul.category-sub-menu > li > a:hover{
    border-color:rgba(0,0,0,.3); box-shadow:0 1px 3px rgba(0,0,0,.06);
  }
  .page-index #left-column .block-categories .collapse,
  .page-index #left-column .block-categories .collapse-icons,
  .page-index #left-column .block-categories .grower{ display:none !important; }
  .page-index #left-column .block-categories .category-top-menu > li > a{ display:none !important; }

  /* HOME desktop: fila + dropdown suave */
  .block-categories--home .category-home-row{
    display:flex; flex-wrap:wrap; gap:12px 16px; margin:0; padding:0; list-style:none;
  }
  .block-categories--home .category-home-row > li{ flex:0 0 auto; }
  .block-categories--home .category-home-row > li > a,
  .block-categories--home .category-root-link{
    display:inline-block; padding:8px 12px; border:1px solid var(--ink-weak); border-radius:var(--chip-br);
    background:var(--bg); text-decoration:none; transition:border-color .15s ease, box-shadow .15s ease;
    text-transform:none;
  }
  .block-categories--home .category-home-row > li > a:hover,
  .block-categories--home .category-root-link:hover,
  .block-categories--home .category-root-link:focus{
    border-color:rgba(0,0,0,.3); box-shadow:0 1px 3px rgba(0,0,0,.06); outline:0;
  }
  .block-categories--home .category-root{ position:relative; }
  .block-categories--home .category-submenu{
    position:absolute; top:100%; left:0; z-index:5; min-width:220px; display:none;
    margin:0; padding:8px 0; list-style:none; background:var(--bg); border:1px solid var(--ink-weak); border-radius:8px;
    box-shadow:var(--fx-2);
  }
  .block-categories--home .category-submenu::before{
    content:""; position:absolute; top:-10px; left:0; right:0; height:12px;
  }
  .block-categories--home .category-root:hover > .category-submenu,
  .block-categories--home .category-root:focus-within > .category-submenu,
  .block-categories--home .category-submenu:hover{ display:block; }
  .block-categories--home .category-submenu li a{
    display:block; padding:8px 12px; white-space:nowrap; text-decoration:none;
  }
  .block-categories--home .category-submenu li a:hover,
  .block-categories--home .category-submenu li a:focus{ background:rgba(0,0,0,.04); outline:0; }
}

/************************************************************
 * ORIENTACIÓN & TABLET AJUSTES
 ************************************************************/
/* Solo landscape móvil/tablet (incluye coarse pointers) */
@media (orientation:landscape) and (max-width:991.98px),
       (orientation:landscape) and (hover:none) and (pointer:coarse) and (max-width:1199.98px){
  #header #_mobile_logo{ padding:10px 0 6px !important; }
  #header #_mobile_logo img{ max-height:300px !important; height:auto !important; }

  #header #search_widget{ padding:0 8px 10px !important; }
  #header #search_widget form{ max-width:none !important; width:100% !important; margin:0 auto !important; }
  #header #search_widget input{ width:100% !important; }
  #header .header-top #search_widget,
  #header .header-nav #search_widget{ left:8px !important; right:8px !important; }
  #header #search_widget button[type="submit"]{ width:32px !important; height:32px !important; }
}

/* Landscape táctil: ocultar solo submenús del header */
@media (orientation:landscape) and (hover:none) and (pointer:coarse){
  #header .header-nav .top-menu .sub-menu,
  #header .header-top .top-menu .sub-menu,
  #header .top-menu .dropdown-menu,
  #header .ps_megamenu .dropdown-menu,
  #header .megamenu .dropdown-menu{
    display:none !important; pointer-events:none !important; visibility:hidden !important; opacity:0 !important;
  }
  #header .top-menu li:hover > .sub-menu,
  #header .ps_megamenu li:hover > .dropdown-menu,
  #header .megamenu li:hover > .dropdown-menu{ display:none !important; }
  #header .top-menu .has-submenu > a .material-icons,
  #header .top-menu .has-submenu > a::after,
  #header .ps_megamenu .dropdown-toggle::after,
  #header .megamenu .caret{ display:none !important; }

  .block-categories--home .category-submenu{ display:none !important; }

  body.page-category #subcategories,
  body.page-category .subcategories,
  body.page-category .category-subcategories{
    display:block !important; pointer-events:auto !important; visibility:visible !important; opacity:1 !important;
  }
}

/* Tablets portrait 768–1024: centrar y agrandar logo + buscador debajo */
@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){
  #header .header-top .container,
  #header .header-top .row{
    display:flex !important; justify-content:center !important; align-items:center !important; position:relative !important;
  }
  #header #_desktop_logo{
    position:static !important; transform:none !important; margin:0 auto !important; text-align:center !important;
    flex:0 0 auto !important; order:1 !important;
  }
  #header #_desktop_logo img{ max-height:120px !important; height:auto !important; width:auto !important; }
  #header #search_widget{
    order:2 !important; flex:0 1 80% !important; max-width:600px !important; margin:12px auto 0 !important;
    display:flex !important; justify-content:center !important;
  }
  #header #search_widget form{ width:100% !important; max-width:100% !important; }
}

/* S-only: ajustar ancho de buscador agrupado del tema */
@media (min-width:576px){
  .header-top .search-widgets{ max-width:25rem; }
}

/* Landscape táctil: acota tamaño logo para no romper header */
@media (orientation:landscape) and (max-width:1199.98px) and (hover:none) and (pointer:coarse){
  #header #_mobile_logo img,
  #header #header_logo img,
  #header #_desktop_logo img,
  #header .logo img{
    max-width:8rem !important; height:2rem !important; margin:-30px !important;
  }
}

/************************************************************
 * BUSCADOR – ENHANCED ESCRITORIO
 ************************************************************/
@media (min-width:992px){
  #header #search_widget input[type="text"],
  #header #search_widget input[type="search"]{
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");
    background-repeat:no-repeat; background-position:14px center; background-size:18px 18px; padding-left:44px;
  }
  #header #search_widget form::before{ content:none !important; background:none !important; }
}

/************************************************************
 * USER INFO (VARIANTES COMPATIBLES EN PC)
 ************************************************************/
/* Variante: pills limpias y orden */
@media (min-width:992px){
  #header #_desktop_user_info{
    display:flex !important; align-items:center !important; gap:10px !important; padding:0 !important; margin:0 10px !important;
    background:transparent !important; box-shadow:none !important; flex-wrap:nowrap !important;
  }
  #header #_desktop_user_info:hover{ background:transparent !important; box-shadow:none !important; }
  #header #_desktop_user_info a{
    display:inline-flex !important; align-items:center !important; height:36px !important; padding:6px 12px !important;
    border-radius:var(--chip-br) !important; white-space:nowrap !important; text-decoration:none !important;
    font-weight:600 !important; color:var(--ink) !important;
  }
  #header #_desktop_user_info a.account{ order:1 !important; background:var(--ink-weak-2) !important; }
  #header #_desktop_user_info a.logout{ order:2 !important; background:rgba(0,0,0,.12) !important; font-weight:700 !important; }
  #header #_desktop_user_info a.logout:hover{ background:rgba(0,0,0,.18) !important; }
  #header #_desktop_user_info a.logout::before{ content:none !important; }
  #header #_desktop_user_info i,
  #header #_desktop_user_info .material-icons{
    font-size:18px !important; line-height:1 !important; margin-right:6px !important; opacity:.9 !important;
  }
}

/* Variante: apilar nombre/ logout en columna */
@media (min-width:992px){
  #header .user-info{
    display:flex !important; flex-direction:column !important; align-items:flex-start !important;
    gap:6px !important; padding:0 !important; background:transparent !important; box-shadow:none !important;
  }
  #header .user-info a{
    display:inline-flex !important; align-items:center !important; height:36px !important; padding:6px 12px !important;
    border-radius:var(--chip-br) !important; white-space:nowrap !important; text-decoration:none !important;
    font-weight:600 !important; color:var(--ink) !important;
  }
  #header .user-info a.account{ order:1 !important; background:var(--ink-weak-2) !important; }
  #header .user-info a.logout{ order:2 !important; background:rgba(0,0,0,.12) !important; }
  #header .user-info a.logout:hover{ background:rgba(0,0,0,.18) !important; }
}

/* Variante: horizontal (si se forzó columna en otro sitio) */
@media (min-width:992px){
  #header .user-info{ flex-direction:row !important; align-items:center !important; gap:10px !important; }
  #header .user-info a.account{ order:1 !important; background:var(--ink-weak-2) !important; }
  #header .user-info a.logout{ order:2 !important; background:rgba(0,0,0,.12) !important; }
}

/************************************************************
 * BOTONES “ATRÁS” (producto / categoría)
 ************************************************************/
.product-backline, .category-backline{ margin:10px 0 14px; }
.product-backline .btn,
.category-backline .btn{
  display:inline-block; padding:8px 16px; border-radius:var(--chip-br);
  border:1px solid rgba(0,0,0,.25); color:rgba(0,0,0,.85);
  font-weight:600; letter-spacing:.2px; text-decoration:none;
  transition:background .15s ease, box-shadow .15s ease, transform .12s ease;
}
.product-backline .btn:hover,
.category-backline .btn:hover{
  background:var(--ink-weak-2); box-shadow:0 2px 6px rgba(0,0,0,.08); transform:translateY(-1px);
}

/************************************************************
 * HOME BUTTON (solo desktop)
 ************************************************************/
#_desktop_home_button{ display:none; }
@media (min-width:992px){
  #_desktop_home_button{ display:inline-flex; align-items:center; margin-right:10px; vertical-align:middle; }
  #_desktop_home_button .home-pill{
    display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:var(--chip-br);
    background:var(--bg); border:1px solid var(--ink-weak); text-decoration:none; font-weight:700; letter-spacing:.2px;
    color:var(--brand-ink); box-shadow:var(--fx-1);
    transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background-color .12s ease; line-height:1; white-space:nowrap;
  }
  #_desktop_home_button .home-pill::before{
    content:""; display:inline-block; width:14px; height:14px; border:2px solid var(--brand); border-bottom:none; transform:rotate(45deg);
    margin-right:2px; position:relative; top:-1px; box-sizing:border-box;
  }
  #_desktop_home_button .home-pill:hover{
  border-color:#ff4da6; background:#ff4da6; box-shadow:0 6px 18px rgba(255,77,166,.25); transform:translateY(-1px);
}
  /* Quita “tejado” sólido si molestaba */
  #_desktop_home_button .home-pill::after{ display:none !important; }
}

/************************************************************
 * CTA “CONTINUAR COMPRANDO” (carrito)
 ************************************************************/
.page-cart a.label{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  box-sizing:border-box; padding:12px 20px; min-height:40px; line-height:1.25;
  border-radius:var(--chip-br); border:1px solid rgba(47,181,210,.45); background:var(--bg);
  color:var(--brand-ink); font-weight:700; letter-spacing:.2px; text-decoration:none !important;
  box-shadow:0 4px 14px rgba(47,181,210,.12); white-space:nowrap; text-align:center; text-overflow:ellipsis; overflow:hidden;
  transition:transform .12s ease, box-shadow .12s ease, background-color .12s ease, border-color .12s ease;
}
.page-cart a.label .material-icons{
  font-size:18px; line-height:1; width:28px; height:28px; display:inline-flex; align-items:center; justify-content:center;
  border-radius:50%; background:rgba(47,181,210,.12); color:var(--brand); flex-shrink:0;
}
.page-cart a.label:hover{
  transform:translateY(-1px); box-shadow:var(--fx-brand-2); border-color:var(--brand); background:#f7fdff;
}
.page-cart a.label:focus{ outline:0; box-shadow:var(--ring); }
@media (max-width:575.98px){
  .page-cart a.label{ padding:10px 16px; gap:8px; min-height:38px; font-weight:600; }
  .page-cart a.label .material-icons{ width:26px; height:26px; font-size:17px; }
}

/************************************************************
 * PRECIOS & LABELS (pequeños ajustes)
 ************************************************************/
.product-line-grid-body>.product-line-info>.label{
  padding:3px; font-weight:600; line-height:inherit; text-align:center; white-space:inherit;
}
.product-price{
  display:inline-block; max-width:100%; color:#24b9d7; padding:5px;
}

/************************************************************
 * SUBCATEGORÍAS – TARJETAS RESPONSIVE
 ************************************************************/
.page-category #subcategories,
.page-category .subcategories,
.page-category .category-subcategories{ margin:20px 0 26px; }

/* Grid */
.page-category #subcategories ul,
.page-category .subcategories ul,
.page-category .category-subcategories ul{
  display:grid !important; grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px; list-style:none; padding:0; margin:0;
}

/* Item & tarjeta */
.page-category #subcategories li,
.page-category .subcategories li,
.page-category .category-subcategories li{ margin:0 !important; }

.page-category #subcategories .subcategory,
.page-category .subcategories .subcategory,
.page-category .category-subcategories .subcategory{
  display:flex; align-items:center; gap:12px; padding:12px;
  border:1px solid rgba(0,0,0,.10); border-radius:12px; background:var(--bg);
  text-decoration:none; transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease;
  height:100%;
}

/* Clickable completa */
.page-category #subcategories .subcategory a,
.page-category .subcategories .subcategory a,
.page-category .category-subcategories .subcategory a{
  text-decoration:none; color:inherit; display:flex; align-items:center; gap:12px; width:100%;
}

/* Imagen */
.page-category #subcategories .subcategory img,
.page-category .subcategories .subcategory img,
.page-category .category-subcategories .subcategory img{
  width:56px; height:56px; object-fit:cover; border-radius:10px; border:1px solid var(--ink-weak-2); background:#fafafa; flex:0 0 56px;
}

/* Texto */
.page-category #subcategories .subcategory-name,
.page-category .subcategories .subcategory-name,
.page-category .category-subcategories .subcategory-name{
  font-weight:700; font-size:15px; line-height:1.2; color:#222; margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}

.page-category #subcategories .cat-desc,
.page-category .subcategories .cat-desc,
.page-category .category-subcategories .cat-desc{ display:none; }

/* Contador/badge */
.page-category #subcategories .subcategory .subcategory-count,
.page-category .subcategories .subcategory .subcategory-count,
.page-category .category-subcategories .subcategory .subcategory-count{
  margin-left:auto; font-size:12px; color:#555; background:var(--ink-weak-2); padding:4px 8px; border-radius:var(--chip-br); line-height:1; white-space:nowrap;
}

/* Hover/Focus */
.page-category #subcategories .subcategory:hover,
.page-category .subcategories .subcategory:hover,
.page-category .category-subcategories .subcategory:hover,
.page-category #subcategories .subcategory:focus,
.page-category .subcategories .subcategory:focus,
.page-category .category-subcategories .subcategory:focus{
  border-color:rgba(47,181,210,.45); box-shadow:0 6px 18px rgba(47,181,210,.12); transform:translateY(-1px); outline:0;
}

/* Breakpoints de grid */
@media (max-width:575.98px){
  .page-category #subcategories ul,
  .page-category .subcategories ul,
  .page-category .category-subcategories ul{ grid-template-columns:1fr; gap:12px; }
  .page-category #subcategories .subcategory img,
  .page-category .subcategories .subcategory img,
  .page-category .category-subcategories .subcategory img{ width:52px; height:52px; }
}
@media (min-width:576px) and (max-width:991.98px){
  .page-category #subcategories ul,
  .page-category .subcategories ul,
  .page-category .category-subcategories ul{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media (min-width:992px){
  .page-category #subcategories ul,
  .page-category .subcategories ul,
  .page-category .category-subcategories ul{ grid-template-columns:repeat(4, minmax(0, 1fr)); gap:16px; }
  .page-category #subcategories .subcategory,
  .page-category .subcategories .subcategory,
  .page-category .category-subcategories .subcategory{ padding:14px 16px; }
}

/* Chip cuando no hay imagen */
.page-category .subcategory:not(:has(img)){
  padding:10px 14px; justify-content:space-between;
}
.page-category .subcategory:not(:has(img)) .subcategory-name{ font-weight:700; }

/************************************************************
 * MICRO-AJUSTES
 ************************************************************/
/* Mejora de icono en inputs solo desktop ya aplicada; anula pseudo en form ahí arriba */

/* Compat: botón Home + Contacto/Usuario Logout con estilo pill como Home */
@media (min-width:992px){
  #header #_desktop_contact_link,
  #header #_desktop_user_info{
    display:inline-flex !important; align-items:center !important; gap:10px !important;
    background:transparent !important; box-shadow:none !important; padding:0 !important; margin:0 10px 0 0 !important;
  }
  #header #_desktop_contact_link a,
  #header #_desktop_user_info a.account,
  #header #_desktop_user_info a.logout{
    display:inline-flex !important; align-items:center !important; gap:8px !important; height:40px !important;
    padding:8px 14px !important; border-radius:var(--chip-br) !important; background:var(--bg) !important;
    border:1px solid var(--ink-weak) !important; color:var(--brand-ink) !important; text-decoration:none !important;
    font-weight:700 !important; letter-spacing:.2px !important; line-height:1 !important; white-space:nowrap !important;
    box-shadow:var(--fx-1) !important;
    transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background-color .12s ease !important;
  }
  #header #_desktop_contact_link a:hover,
  #header #_desktop_user_info a.account:hover,
  #header #_desktop_user_info a.logout:hover{
    border-color:var(--brand) !important; background:#f7fdff !important; box-shadow:0 6px 18px rgba(47,181,210,.12) !important;
    transform:translateY(-1px) !important;
  }
  #header #_desktop_contact_link a .material-icons,
  #header #_desktop_contact_link a i,
  #header #_desktop_user_info a .material-icons,
  #header #_desktop_user_info a i{
    width:28px !important; height:28px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important;
    border-radius:50% !important; background:rgba(47,181,210,.12) !important; color:var(--brand) !important;
    font-size:18px !important; line-height:1 !important; margin:0 !important; flex-shrink:0 !important;
  }
}

/* Pequeño detalle de buscador en sm+ (tema) */
@media (min-width:576px){ .header-top .search-widgets{ max-width:25rem; } }


/* ===== HEADER DESKTOP: 3 zonas (izq | centro | der) ===== */
@media (min-width:992px){

  /* Contenedor: una sola fila flex sin wraps raros */
  #header .header-top .container,
  #header .header-top .row{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:16px !important;
    flex-wrap:nowrap !important;
    position:relative !important;
    min-height:110px !important;
  }

  /* --- IZQUIERDA: Inicio + Contacto + Buscador --- */
  #_desktop_home_button,
  #_desktop_contact_link,
  #search_widget{
    order:1 !important;              /* se agrupan a la izquierda */
  }
  /* ancho razonable del buscador en desktop */
  #search_widget{
    flex:0 1 420px !important;
    max-width:420px !important;
    min-width:260px !important;
    margin:0 !important;
  }
  #header #search_widget form{ margin:0 !important; }

  /* --- CENTRO: LOGO (centro real con márgenes auto) --- */
  #header #_desktop_logo{
    order:2 !important;
    position:static !important;      /* anula el centrado absoluto previo */
    left:auto !important; top:auto !important; transform:none !important; z-index:auto !important;
    margin-left:auto !important;     /* ? esto lo centra de verdad en el contenedor */
    margin-right:auto !important;
    text-align:center !important;
  }
  #header #_desktop_logo img{
    max-height:80px !important; height:auto !important; width:auto !important;
  }

  /* --- DERECHA: Usuario (nombre + logout) + Carrito --- */
  #_desktop_user_info,
  #_desktop_cart{
    order:3 !important;              /* se agrupan a la derecha */
    margin-left:10px !important;
  }

  /* Quita la línea divisoria y posibles celdas vacías que “empujan” */
  #header .header-top .container::after{ content:none !important; }
  #header .header-top .row > *:empty{ display:none !important; }
}

/* ===== HEADER DESKTOP: izquierda | centro | derecha ===== */
@media (min-width:992px){

  /* Contenedor del header: una fila flex, sin wraps */
  #header .header-top .container,
  #header .header-top .row{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:16px !important;
    flex-wrap:nowrap !important;
    position:relative !important;
    min-height:110px !important;
  }

  /* --- IZQUIERDA: Inicio + Contacto + Buscador --- */
  #_desktop_home_button{ order:10 !important; }
  #_desktop_contact_link{ order:11 !important; }

  /* el buscador va a la izquierda y con ancho controlado */
  #search_widget{
    order:12 !important;
    flex:0 1 460px !important;
    max-width:460px !important;
    min-width:260px !important;
    width:auto !important;         /* anula el width:100% global */
    margin:0 !important;
  }
  #header #search_widget form{ margin:0 !important; }

  /* --- CENTRO: LOGO (centrado real) --- */
  #header #_desktop_logo{
    order:20 !important;
    position:static !important;    /* quita el absolute + translate */
    left:auto !important; top:auto !important; transform:none !important; z-index:auto !important;
    margin-left:auto !important;   /* lo centra entre izquierda y derecha */
    margin-right:auto !important;
    text-align:center !important;
  }
  #header #_desktop_logo img{ max-height:80px !important; height:auto !important; width:auto !important; }

  /* --- DERECHA: Usuario + Carrito --- */
  #_desktop_user_info{ order:30 !important; margin-left:10px !important; }
  #_desktop_cart{ order:31 !important; margin-left:8px !important; }

  /* Misma altura visual para todos los pills */
  #_desktop_home_button .home-pill,
  #_desktop_contact_link a,
  #_desktop_user_info a,
  #_desktop_cart a{
    height:40px !important;
    display:inline-flex !important;
    align-items:center !important;
  }

  /* ===== El “bloque blanco” (solo ocultar en desktop) ===== */
  #mobile_top_menu_wrapper,
  #_mobile_top_menu,
  .js-top-menu.mobile,
  #header .header-top .row > .hidden-md-up{
    display:none !important;
    height:0 !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  /* Quita la línea divisoria si estaba quedando suelta */
  #header .header-top .container::after{ content:none !important; }
}

/* ===== Footer azul ===== */
#footer .footer-container{
  background-color:#126872 !important; /* usa tu azul del tema (#2fb5d2) */
  color:#fff !important;
}

/* si tu tema tiene una franja inferior separada, unifícala también */
#footer .footer-bottom,
#footer .copyright,
#footer .footer-after{
  background-color: var(--brand) !important;
  color:#fff !important;
}

/* texto y enlaces en blanco para contraste */
#footer .footer-container a,
#footer .footer-bottom a{
  color:#fff !important;
}
#footer .footer-container a:hover,
#footer .footer-bottom a:hover{
  opacity:.9;
  text-decoration:underline;
}

/* títulos y bordes */
#footer .footer-container h1,
#footer .footer-container h2,
#footer .footer-container h3,
#footer .footer-container h4,
#footer .footer-container h5,
#footer .footer-container h6{
  color:#fff !important;
}
#footer .footer-container .block,
#footer .footer-container .links{
  border-color: rgba(255,255,255,.25) !important;
}

#footer,
#custom-text {
  background-color: #f24b6a;
}

#custom-text,
#custom-text * {
  color: #fff !important;
}
/* Hover unificado para pills del header */
@media (min-width:992px){
  /* Fondo y borde rosa + texto en blanco */
  #_desktop_home_button .home-pill:hover,
  #_desktop_contact_link a:hover,
  #_desktop_user_info a:hover,          /* nombre y cerrar sesión */
  #_desktop_cart:hover{
    background:#f24b6a !important;
    border-color:#f24b6a !important;
    color:#fff !important;
    box-shadow:0 6px 18px rgba(242,75,106,.25) !important;
  }

  /* Asegura iconos en blanco al hacer hover */
  #_desktop_home_button .home-pill:hover i,
  #_desktop_home_button .home-pill:hover .material-icons,
  #_desktop_contact_link a:hover i,
  #_desktop_contact_link a:hover .material-icons,
  #_desktop_user_info a:hover i,
  #_desktop_user_info a:hover .material-icons,
  #_desktop_cart:hover i,
  #_desktop_cart:hover .material-icons{
    color:#fff !important;
    background:rgba(255,255,255,.18) !important;
  }

  /* El texto dentro del carrito también en blanco en hover */
  #_desktop_cart:hover a{ color:#fff !important; }

  /* Accesibilidad: mismo estilo al enfocar con teclado */
  #_desktop_home_button .home-pill:focus,
  #_desktop_contact_link a:focus,
  .account a:focus,
  #_desktop_cart:focus-within{
    background:#f24b6a !important;
    border-color:#f24b6a !important;
    color:#fff !important;
    outline:0 !important;
    box-shadow:0 0 0 3px rgba(242,75,106,.25) !important;
  }
}

/* Hover rosa #f24b6a en Contacto + Usuario (nombre y logout) */
@media (min-width:992px){
  /* Contacte con nosotros */
  #header #_desktop_contact_link a:hover{
    background:#f24b6a !important;
    border-color:#f24b6a !important;
    color:#fff !important;
    box-shadow:0 6px 18px rgba(242,75,106,.25) !important;
  }

  /* Nombre de usuario */
  #header #_desktop_user_info a.account:hover{
    background:#f24b6a !important;
    border-color:#f24b6a !important;
    color:#fff !important;
    box-shadow:0 6px 18px rgba(242,75,106,.25) !important;
  }

  /* Cerrar sesión */
  #header #_desktop_user_info a.logout:hover{
    background:#f24b6a !important;
    border-color:#f24b6a !important;
    color:#fff !important;
    box-shadow:0 6px 18px rgba(242,75,106,.25) !important;
  }

  /* Iconos y spans en blanco al hover */
  #header #_desktop_contact_link a:hover i,
  #header #_desktop_user_info a.account:hover i,
  #header #_desktop_user_info a.logout:hover i,
  #header #_desktop_user_info a.account:hover span,
  #header #_desktop_user_info a.logout:hover span{
    color:#fff !important;
    background:rgba(255,255,255,.18) !important;
  }
}

/* ===== SOLO PC y SOLO cuando NO hay sesión (no existe .logout) ===== */
@media (min-width:992px){

  /* Contenedor del header-top en grid 3 cols × 2 filas */
  #header .header-top:not(:has(#_desktop_user_info .logout)) .container{
    display:grid !important;
    grid-template-columns: 1fr auto 1fr !important;  /* izq | centro | der */
    grid-template-rows: auto auto !important;        /* fila1 + buscador debajo */
    align-items:center !important;
    gap:10px 20px !important;
    min-height:120px !important;
    position:relative !important;
  }

  /* La .row de bootstrap no debe aportar caja: evita el “bloque blanco” */
  #header .header-top:not(:has(#_desktop_user_info .logout)) .container > .row{
    display:contents !important;
  }

  /* Quita cualquier pseudo-línea blanca bajo el header (solo en guest) */
  #header .header-top:not(:has(#_desktop_user_info .logout)) .container::after{
    content:none !important;
  }

  /* LOGO centrado (anula absolute del tema SOLO en guest) */
  #header .header-top:not(:has(#_desktop_user_info .logout)) #_desktop_logo{
    position:static !important; left:auto !important; top:auto !important;
    transform:none !important; z-index:auto !important; margin:0 !important;
    grid-column:2 !important; grid-row:1 !important;
    justify-self:center !important; text-align:center !important;
  }
  #header .header-top:not(:has(#_desktop_user_info .logout)) #_desktop_logo img{
    max-height:80px !important; height:auto !important; width:auto !important;
  }

  /* Buscador debajo del logo, centrado y con pequeño espacio */
  #header .header-top:not(:has(#_desktop_user_info .logout)) #search_widget{
    grid-column:2 !important; grid-row:2 !important;
    justify-self:center !important;
    width:min(620px, 90%) !important; max-width:620px !important; margin:0 !important;
  }
  #header .header-top:not(:has(#_desktop_user_info .logout)) #search_widget form{
    margin-top:8px !important; max-width:100% !important;
  }
  #header .header-top:not(:has(#_desktop_user_info .logout)) #search_widget input{
    width:100% !important;
  }

  /* IZQUIERDA: Inicio + Contacte con nosotros */
  #header .header-top:not(:has(#_desktop_user_info .logout)) #_desktop_home_button{
    grid-column:1 !important; grid-row:1 !important; justify-self:start !important;
  }
  #header .header-top:not(:has(#_desktop_user_info .logout)) #_desktop_contact_link{
    grid-column:1 !important; grid-row:1 !important; justify-self:start !important; margin-left:10px !important;
  }

  /* DERECHA: solo “Iniciar sesión” (bloque user) */
  #header .header-top:not(:has(#_desktop_user_info .logout)) #_desktop_user_info{
    grid-column:3 !important; grid-row:1 !important; justify-self:end !important; margin-left:10px !important;
  }

/* === HEADER (PC) SOLO INVITADO: izquierda (Contacto + Inicio) | centro (Logo + Buscador) | derecha (Login) === */
@media (min-width: 992px){
  /* Grid base tal y como lo tienes */
  #header:not(:has(#_desktop_user_info .logout)){
    
    align-items: center !important;
    column-gap: 20px !important;
    row-gap: 8px !important;
    justify-content: space-evenly;
    background-color: #dfe0de;
    position: relative !important; /* necesario para centrar absoluto el logo */
  }
  #header:not(:has(#_desktop_user_info .logout)) .header-nav,
  #header:not(:has(#_desktop_user_info .logout)) .header-top,
  #header:not(:has(#_desktop_user_info .logout)) .header-top .container,
  #header:not(:has(#_desktop_user_info .logout)) .header-top .row{
    display: contents !important;
  }

  /* Reset de reglas conflictivas */
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_contact_link,
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_home_button,
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_logo,
  #header:not(:has(#_desktop_user_info .logout)) #search_widget,
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_user_info{
    margin: 0 !important;
    left: auto !important; right: auto !important; top: auto !important; bottom: auto !important;
  }

  /* IZQUIERDA */
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_contact_link{
    grid-column: 1; grid-row: 1; justify-self: start; align-self: center;
  }
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_home_button{
    grid-column: 2; grid-row: 1; justify-self: start; align-self: center;
    display: inline-flex !important;
  }

  /* LOGO: centrado horizontal absoluto respecto al header */
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_logo{
    position: absolute !important;
    left: 50% !important; transform: translateX(-50%) !important;
    top: 12px !important;                /* ajusta si necesitas moverlo un poco arriba/abajo */
    z-index: 2 !important;
    text-align: center !important;
  }
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_logo img{
    max-height: 80px !important; height: auto !important; width: auto !important;
  }

  /* BUSCADOR: debajo y centrado (se mantiene en la rejilla) */
  #header:not(:has(#_desktop_user_info .logout)) #search_widget{
    grid-column: 3; grid-row: 2; justify-self: center;
    width: min(620px, 90%) !important; max-width: 620px !important;
  }
  #header:not(:has(#_desktop_user_info .logout)) #search_widget form{
    margin-top: 8px !important; max-width: 100% !important;
  }

  /* DERECHA */
  #header:not(:has(#_desktop_user_info .logout)) #_desktop_user_info{
    grid-column: 4; grid-row: 1; justify-self: end; align-self: center;
  }

  /* Evita divisor bajo el header en invitado */
  #header:not(:has(#_desktop_user_info .logout)) .header-top .container::after{
    content: none !important;
  }
}

/* ===========================
   HEADER INVITADO – Layout fijo
   =========================== */
@media (min-width: 992px){
  .header-top--guest .container{
    /* asegura que NO se aplique tu flex global del header */
    display: block !important;
  }

  .header-top--guest .guest-grid{
    display: grid !important;
    grid-template-columns: 1fr auto 1fr; /* izquierda | centro | derecha */
    grid-template-rows: auto auto;       /* fila 1 (links+logo+login) + fila 2 (buscador) */
    align-items: center;
    column-gap: 20px;
    row-gap: 10px;
    min-height: 110px;
  }

  /* IZQUIERDA */
  .header-top--guest .guest-left{
    grid-column: 1; grid-row: 1;
    display: inline-flex; gap: 12px; align-items: center;
  }

  /* CENTRO (logo) */
  .header-top--guest #_desktop_logo{
    grid-column: 2; grid-row: 1;
    position: static !important; left: auto !important; top: auto !important; transform: none !important;
    margin: 0 auto !important; text-align: center !important; z-index: 1 !important;
  }
  .header-top--guest #_desktop_logo img{
    max-height: 80px !important; height: auto !important; width: auto !important;
  }

  /* DERECHA (login) */
  .header-top--guest .guest-right{
    grid-column: 3; grid-row: 1; justify-self: end; align-self: center;
  }

  /* BUSCADOR centrado debajo del logo */
  .header-top--guest .guest-search{
    grid-column: 1 / -1; grid-row: 2; display: flex; justify-content: center;
  }
  .header-top--guest #search_widget{
    width: min(620px, 90%) !important; max-width: 620px !important; margin: 0 !important;
  }
  .header-top--guest #search_widget form{ margin-top: 8px !important; }
}

/* Píldoras: reusa tus estilos existentes */
@media (min-width: 992px){
  .header-top--guest #_desktop_contact_link a,
  .header-top--guest #_desktop_home_button .home-pill,
  .header-top--guest #_desktop_user_info a{
    display: inline-flex; align-items: center; gap: 8px;
    height: 40px; padding: 8px 14px; border-radius: var(--chip-br);
    background: var(--bg); border: 1px solid var(--ink-weak);
    color: var(--brand-ink); text-decoration: none; font-weight: 700; letter-spacing: .2px;
    box-shadow: var(--fx-1);
    transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease, background-color .12s ease;
  }
  .header-top--guest #_desktop_contact_link a:hover,
  .header-top--guest #_desktop_home_button .home-pill:hover,
  .header-top--guest #_desktop_user_info a:hover{
    border-color: var(--brand); background: #f7fdff; box-shadow: 0 6px 18px rgba(47,181,210,.12);
    transform: translateY(-1px);
  }
}

/* ===== HEADER INVITADO: centro perfecto + responsive desktop ===== */
@media (min-width:992px){
  /* Desactiva cualquier flex heredado del tema en el contenedor invitado */
  .header-top--guest .container{ display:block !important; }

  /* Rejilla: izq | centro | der, con el centro fijo */
  .header-top--guest .guest-grid{
    display:grid !important;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important; /* lados flexibles, centro del tamaño del logo */
    grid-template-rows: auto auto !important;                            /* fila 1: links+logo+login | fila 2: buscador */
    align-items:center !important;
    justify-items:center !important;   /* el logo queda centrado SIEMPRE */
    column-gap:24px; row-gap:10px;
    min-height:110px;
  }

  /* IZQUIERDA: Inicio + Contacto (permitimos wrap para que no empuje nada) */
  .header-top--guest .guest-left{
    grid-column:1; grid-row:1;
    display:flex; gap:12px; align-items:center;
    flex-wrap:wrap;                       /* <- clave para que no “empujen” al centro */
    justify-self:start !important;
  }

  /* CENTRO: logo */
  .header-top--guest #_desktop_logo{
    grid-column:2; grid-row:1;
    position:static !important; left:auto !important; top:auto !important; transform:none !important;
    margin:0 !important; text-align:center !important; z-index:1 !important;
  }
  .header-top--guest #_desktop_logo img{
    max-height:80px !important; height:auto !important; width:auto !important;
  }

  /* DERECHA: login */
  .header-top--guest .guest-right{
    grid-column:3; grid-row:1;
    justify-self:end !important;
  }

  /* BUSCADOR: centrado JUSTO debajo del logo, con ancho elástico */
  .header-top--guest .guest-search{
    grid-column:2 / 3 !important;    /* <- bajo el logo (no a lo ancho de toda la fila) */
    grid-row:2 !important;
    display:flex; justify-content:center;
    width:100%;
  }
  .header-top--guest #search_widget{
    width:clamp(280px, 48vw, 620px) !important; /* 280px–620px, ~50% de viewport */
    max-width:100% !important; margin:0 !important;
  }
  .header-top--guest #search_widget form{ margin-top:8px !important; }

  /* Evita que los botones crezcan/encojan de formas raras */
  .header-top--guest .guest-left > *,
  .header-top--guest .guest-right > *{ flex:0 0 auto; }
}

/* Pequeño ajuste en anchos “estrechos” de escritorio (<=1200) */
@media (min-width:992px) and (max-width:1200px){
  .header-top--guest .guest-left{ column-gap:10px; row-gap:8px; }
}

@media (max-width: 767.98px){
  .header-nav .mobile-right{
    display:flex; gap:10px; align-items:center;
  }
  .header-nav .mobile-right .mobile-link{
    display:inline-flex; align-items:center; justify-content:center;
    width:36px; height:36px; border-radius:999px;
    border:1px solid var(--ink-weak); background:var(--bg); box-shadow:var(--fx-1);
    text-decoration:none;
  }
  .header-nav .mobile-right .mobile-link i{ font-size:20px; line-height:1; }
}

@media (max-width:767.98px){
  .mobile-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid var(--ink-weak);background:var(--bg);box-shadow:var(--fx-1);text-decoration:none}
  .mobile-link i{font-size:20px;line-height:1}
  #menu-icon{display:block}
  #mobile_top_menu_wrapper{display:block}
}

.header-top .right-nav #contact-link,
.header-nav .right-nav #contact-link{ display:none !important; }

/* ================================
   SOLO PC / ESCRITORIO (=1200px)
   Oculta los bloques de móvil/tablet
   ================================ */
@media (min-width:1200px){

  /* Fila TABLET/MÓVIL (la que no quieres en PC) */
  #header .header-top .row.hidden-sm-down{        /* tu fila con contacto / logo / user/cart en tablet */
    display:none !important;
  }

  /* Filas MÓVIL (menú hamburguesa + logo + acciones + wrapper del menú) */
  #header .header-top .row.hidden-md-up,
  #header #mobile_top_menu_wrapper{
    display:none !important;
  }

  /* Por si algún estilo previo forzó a mostrarlos: */
  #header #menu-icon,
  #header #_mobile_logo,
  #header .mobile-right{
    display:none !important;
  }

  /* Placeholders que mostraste (por si aparecen en PC) */
  #header .ph-contact,
  #header .ph-logo,
  #header .ph-user,
  #header .ph-cart{
    display:none !important;
  }
}

/* ================================
   TABLET (768–1199px)
   Asegura que *sí* se ve tu fila de tablet
   ================================ */
@media (min-width:768px) and (max-width:1199.98px){
  #header .header-top .row.hidden-sm-down{
    display:flex !important;       /* fuerza visibilidad en tablet */
  }
}

.product-flag.new { display: none !important; }

/* Ocultar todas las banderas en las miniaturas */
.product-flags,
.product-flags li.product-flag,
.product-flags li.product-flag::before,
.product-flags li.product-flag::after {
  display: none !important;
}

/* Si solo quieres ocultar la de "Nuevo" y dejar otras (p.ej. Oferta) */
.product-flags li.product-flag.new,
.product-flags li.product-flag.new::before,
.product-flags li.product-flag.new::after {
  display: none !important;
}


























