/* ══════════════════════════════════════════════════════════
   EXICOMPRAS — CATALOG LISTING (MercadoLibre/Amazon style)
   CSS-only overrides. NO template overrides (manifest reverted).
   Uses aggressive specificity + !important to override Aimeos.
   Loaded ONLY on catalog/tree and catalog/list pages.
   ══════════════════════════════════════════════════════════ */

/* ── Tokens ── */
.exicatalog-wrap { padding-top: 1rem; }
.exicatalog-main { padding: 0 0.5rem; }
.exicatalog-aside { padding: 0 .5rem; }

/* Fondo sutil del body en páginas de catálogo */
body.page-catalog-list,
body.page-catalog-tree {
    background: linear-gradient(180deg, #F8F9FB 0%, #FFFFFF 220px) !important;
    background-attachment: fixed;
}

/* ══════════════════════════════════════════════════════════
   PRODUCT GRID — Cards estilo MercadoLibre
   ══════════════════════════════════════════════════════════ */

/* Grid: 2 cols mobile → 5 cols desktop */
.aimeos .catalog-list-items.product-list,
.catalog-list-items.product-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: clamp(.6rem, 1.2vw, 1rem) !important;
    padding: 0 !important;
    margin: 0 !important;
}
@media (min-width: 768px) {
    .aimeos .catalog-list-items.product-list,
    .catalog-list-items.product-list { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 1024px) {
    .aimeos .catalog-list-items.product-list,
    .catalog-list-items.product-list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (min-width: 1400px) {
    .aimeos .catalog-list-items.product-list,
    .catalog-list-items.product-list { grid-template-columns: repeat(5, 1fr) !important; }
}

/* Override width:23% de Aimeos aimeos.css líneas 796-820 */
.aimeos:not(.cms-page) .product-list .product,
.catalog-list-items .product {
    display: flex !important;
    flex-direction: column !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(0,0,0,.06) !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.06), 0 2px 8px rgba(0,0,0,.04) !important;
    overflow: hidden;
    height: 100%;
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
    animation: exi-fade-in .35s ease;
}
.aimeos .product-list .product:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,.10), 0 8px 24px rgba(0,0,0,.06) !important;
    transform: translateY(-2px);
    border-color: rgba(0,0,0,.12) !important;
}

/* Columns internas: display contents para no romper grid */
.aimeos .product-list .product .list-column {
    display: contents !important;
}

/* ── Header del listado ── */
.aimeos .catalog-list-head,
.catalog-list .catalog-list-head,
.catalog-list .catalog-list-footer {
    color: #1A1F36 !important;
    background: transparent !important;
    letter-spacing: 0 !important;
    padding: 1rem 0 .5rem !important;
}
.aimeos .catalog-list-head h1,
.catalog-list .catalog-list-head h1 {
    font-weight: 700 !important;
    font-size: clamp(1.4rem, 2.5vw, 1.8rem) !important;
    text-align: left !important;
    padding: 0 !important;
    letter-spacing: 0 !important;
    color: #1A1F36 !important;
    margin: 0 !important;
}
.aimeos .catalog-list .searchstring { color: #FF6B35 !important; font-weight: 600 !important; font-size: 100% !important; }

/* ── Imagen del producto ── */
.aimeos .product-list .media-list {
    display: block !important;
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1 !important;
    padding-top: 0 !important;
    background: #f8f8f8;
    overflow: hidden;
    border-bottom: 1px solid rgba(0,0,0,.04);
}

.aimeos .product-list .media-item {
    position: absolute !important;
    top: 0; left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    opacity: 0;
    transition: opacity .3s ease;
}
.aimeos .product-list .media-item:first-of-type {
    opacity: 1 !important;
    z-index: 1 !important;
}
.aimeos .product-list .media-list.multiple:hover .media-item:first-of-type {
    opacity: 0 !important;
    z-index: 1 !important;
}
.aimeos .product-list .media-item:nth-of-type(2) {
    z-index: 2 !important;
}
.aimeos .product-list .media-list.multiple:hover .media-item:nth-of-type(2) {
    opacity: 1 !important;
}
.aimeos .product-list .media-item img {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    padding: 8%;
    transition: transform .4s ease;
}
.aimeos .product-list .product:hover .media-item img {
    transform: scale(1.04);
}

/* ── Supplier + Rating ── */
.aimeos .product-list .product-info {
    display: block !important;
    padding: .5rem .85rem 0 !important;
    margin: 0 !important;
}
.aimeos .product-list .product-info .supplier {
    font-size: .68rem !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    color: #8a8f9c !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 0 !important;
}
.aimeos .product-list .rating { margin: .15rem 0 0 !important; line-height: 1; }
.aimeos .product-list .rating .stars { color: #FFA500 !important; font-size: .72rem !important; letter-spacing: 1px !important; }

/* ── Nombre + descripción ── */
.aimeos .product-list .text-list {
    padding: .25rem .85rem 0 !important;
    flex: 1 1 auto;
}
.aimeos .product-list .text-list .name {
    font-size: .82rem !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #1A1F36 !important;
    margin: 0 0 .25rem !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    min-height: 2.1em;
}
.aimeos .product-list .text-list .text-item {
    font-size: .72rem !important;
    color: #6b7280 !important;
    line-height: 1.35 !important;
    margin-bottom: .25rem !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
}

/* ── Oferta: precio + envío ── */
.aimeos .product-list .offer {
    padding: .25rem .85rem .85rem !important;
    margin-top: auto !important;
    width: 100%;
    text-align: left !important;
}
.aimeos .product-list .offer > .section {
    padding: 0 !important;
    margin: 0 0 .55rem !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    justify-content: flex-start !important;
}
.aimeos .product-list .stock-list { display: none !important; }

/* Precio estilo ML: grande bold, original tachado, % verde */
.aimeos .product-list .price-list { margin: 0 !important; padding: 0 !important; }
.aimeos .product-list .price-item {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: .3rem !important;
    line-height: 1.15 !important;
    padding: 0 !important;
    border: none !important;
}
.aimeos .product-list .price-item .quantity { display: none !important; }
.aimeos .product-list .price-item .original {
    font-size: .72rem !important;
    color: #9ca3af !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
    width: 100% !important;
    order: 1;
}
.aimeos .product-list .price-item .value {
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: #1A1F36 !important;
    letter-spacing: -.5px !important;
    order: 2;
}
.aimeos .product-list .price-item .rebate { display: none !important; }
.aimeos .product-list .price-item .rebatepercent {
    display: inline-block !important;
    font-size: .7rem !important;
    font-weight: 700 !important;
    color: #2F855A !important;
    background: rgba(47,133,90,.08) !important;
    padding: .08rem .35rem !important;
    border-radius: 4px !important;
    order: 3;
}
.aimeos .product-list .price-item .costs {
    font-size: .68rem !important;
    color: #6b7280 !important;
    width: 100% !important;
    order: 4;
}

/* Envío gratis badge */
.aimeos .product-list .offer > .section::after {
    content: "Envío gratis" !important;
    display: block !important;
    font-size: .68rem !important;
    font-weight: 600 !important;
    color: #2F855A !important;
    margin-top: .25rem !important;
    letter-spacing: .2px !important;
}

/* ── CTA Add to basket ── */
.aimeos .product-list .basket {
    width: 100% !important;
    margin: 0 !important;
}
.aimeos .product-list .basket .items-selection,
.aimeos .product-list .basket .items-attribute {
    display: none !important;
}
.aimeos .product-list .basket .addbasket { margin: 0 !important; }
.aimeos .product-list .basket .input-group {
    display: flex !important;
    gap: .35rem !important;
    align-items: stretch !important;
}
.aimeos .product-list .basket .input-group input[type="number"] { display: none !important; }
.aimeos .product-list .basket .btn-action {
    flex: 1 !important;
    background: #FF6B35 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: .8rem !important;
    font-weight: 600 !important;
    padding: .55rem .8rem !important;
    cursor: pointer !important;
    height: auto !important;
    min-height: 36px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    transition: background .18s ease, opacity .18s ease !important;
}
.aimeos .product-list .basket .btn-action::before { content: "Agregar"; }
.aimeos .product-list .basket .btn-action:hover { background: #E0552B !important; }
.aimeos .product-list .basket .btn-action:disabled { background: #cbd5e0 !important; cursor: not-allowed !important; opacity: .65 !important; }
.aimeos .product-list .basket .btn-action:disabled::before { content: "Agotado"; }
.aimeos .product-list .basket .btn-pin { display: none !important; }

/* ── Badges (Nuevo, Top, Sale) ── */
.aimeos .product .badges {
    position: absolute !important;
    top: .5rem !important;
    left: .5rem !important;
    text-align: start !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .25rem !important;
}
.aimeos .product .badge-item {
    display: none !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
    padding: .2rem .5rem !important;
    border-radius: 4px !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    color: #fff !important;
    box-shadow: 0 1px 3px rgba(0,0,0,.15) !important;
}
.aimeos .product.sale .badge-item.sale,
.aimeos .product.new .badge-item.new,
.aimeos .product.top .badge-item.top { display: inline-block !important; }
.aimeos .product.sale .badge-item.sale { background: #E53E3E !important; }
.aimeos .product.new .badge-item.new { background: #4A7EFF !important; }
.aimeos .product.top .badge-item.top { background: #2F855A !important; }

/* ══════════════════════════════════════════════════════════
   PAGINATION / SORT — pills minimalistas
   ══════════════════════════════════════════════════════════ */
.aimeos .catalog-list .pagination,
.catalog-list .pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: .35rem !important;
    padding: 1rem 0 !important;
    margin: .75rem 0 !important;
    background: transparent !important;
}
.aimeos .catalog-list .pagination .sort,
.catalog-list .pagination .sort {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: .25rem !important;
    font-size: .82rem !important;
    color: #6b7280 !important;
    font-weight: 400 !important;
}
.aimeos .catalog-list .pagination .sort > span,
.catalog-list .pagination .sort > span {
    font-weight: 600 !important;
    margin-right: .25rem !important;
    color: #1A1F36 !important;
}
.aimeos .catalog-list .pagination .sort ul,
.catalog-list .pagination .sort ul {
    list-style: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .25rem !important;
    padding: 0 !important;
    margin: 0 !important;
}
.aimeos .catalog-list .pagination .sort li,
.catalog-list .pagination .sort li { padding: 0 !important; margin: 0 !important; }
.aimeos .catalog-list .pagination .sort li a,
.catalog-list .pagination .sort li a {
    display: inline-block !important;
    padding: .35rem .75rem !important;
    border-radius: 999px !important;
    border: 1px solid rgba(0,0,0,.08) !important;
    color: #1A1F36 !important;
    font-size: .8rem !important;
    text-decoration: none !important;
    background: #ffffff !important;
    transition: all .15s ease;
    font-weight: 400 !important;
}
.aimeos .catalog-list .pagination .sort li a:hover,
.catalog-list .pagination .sort li a:hover {
    border-color: #FF6B35 !important;
    color: #FF6B35 !important;
}
.aimeos .catalog-list .pagination .sort li a.active,
.catalog-list .pagination .sort li a.active {
    background: #FF6B35 !important;
    color: #fff !important;
    border-color: #FF6B35 !important;
    font-weight: 700 !important;
}
.aimeos .catalog-list .pagination .browser,
.catalog-list .pagination .browser {
    display: flex !important;
    align-items: center !important;
    gap: .35rem !important;
    margin-left: auto !important;
    font-size: .85rem !important;
    color: #6b7280 !important;
}
.aimeos .catalog-list .pagination .browser span,
.catalog-list .pagination .browser span { padding: 0 .35rem !important; }
.aimeos .catalog-list .pagination .browser a,
.catalog-list .pagination .browser a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 2rem !important;
    height: 2rem !important;
    padding: 0 .5rem !important;
    border-radius: 6px !important;
    border: 1px solid rgba(0,0,0,.08) !important;
    color: #1A1F36 !important;
    font-size: .82rem !important;
    text-decoration: none !important;
    background: #ffffff !important;
    transition: all .15s ease;
}
.aimeos .catalog-list .pagination .browser a:hover,
.catalog-list .pagination .browser a:hover {
    border-color: #FF6B35 !important;
    color: #FF6B35 !important;
}

/* Toggle grid/list oculto */
.catalog-list-type { display: none !important; }

/* ══════════════════════════════════════════════════════════
   SIDEBAR FILTERS — MercadoLibre/Amazon style
   Specificidad MUY alta + !important en cada propiedad.
   NO toca templates — solo CSS sobre el HTML original de Aimeos.
   ══════════════════════════════════════════════════════════ */

/* Card contenedor del filter */
body:not(.catalog-home) .exicatalog-aside .catalog-filter,
body:not(.catalog-home) .exicatalog-aside .catalog-session {
    background: #ffffff !important;
    border: 1px solid #E5E7EB !important;
    border-top: 1px solid #E5E7EB !important;
    border-radius: 10px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,.04) !important;
    overflow: hidden;
    margin: 0 0 1rem !important;
    padding: 0 !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter > nav,
body:not(.catalog-home) .exicatalog-aside .catalog-filter > nav.container-xxl {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter form {
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* Cada bloque de filtro: Search, Price, Supplier, Attribute */
body:not(.catalog-home) .exicatalog-aside .catalog-filter .section {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-top: 1px solid #F0F1F3 !important;
    width: auto !important;
    display: block !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter .section:first-of-type {
    border-top: none !important;
}

/* Header del bloque — es <div class="header-name"> */
body:not(.catalog-home) .exicatalog-aside .catalog-filter .header-name {
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: #1A1F36 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 1rem 1.1rem .85rem !important;
    margin: 0 !important;
    display: block !important;
    background: transparent !important;
    text-align: left !important;
    cursor: pointer !important;
    user-select: none !important;
    border-bottom: 1px solid #F0F1F3 !important;
    font-family: inherit !important;
    line-height: 1.4 !important;
}

/* Contenido del filtro */
body:not(.catalog-home) .exicatalog-aside .catalog-filter .search-lists,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .price-lists,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .supplier-lists,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .tree-lists,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .attribute-lists {
    padding: .85rem 1.1rem 1.1rem !important;
    display: block !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    z-index: auto !important;
}

/* ── Search box dentro de filtros ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .input-group {
    display: flex !important;
    align-items: stretch !important;
    background: #F8F9FA !important;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    width: auto !important;
    transition: border-color .15s ease, box-shadow .15s ease;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .input-group:focus-within {
    border-color: #FF6B35 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10);
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search input.form-control,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search input.value {
    flex: 1 !important;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    padding: .55rem .85rem !important;
    font-size: .88rem !important;
    color: #1A1F36 !important;
    min-width: 0;
    box-shadow: none !important;
    height: auto !important;
    line-height: 1.4 !important;
    width: 100% !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search input::placeholder { color: #9ca3af !important; }
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .btn {
    background: transparent !important;
    border: none !important;
    color: #9ca3af !important;
    padding: 0 .7rem !important;
    cursor: pointer !important;
    box-shadow: none !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .btn:hover { color: #FF6B35 !important; }
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .btn-search {
    background: #FF6B35 !important;
    color: #ffffff !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-search .btn-search:hover {
    background: #E0552B !important;
    color: #ffffff !important;
}

/* ── Price inputs ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price .price-input,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price .input-group {
    display: flex !important;
    align-items: center !important;
    gap: .5rem !important;
    margin-bottom: .85rem !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price input[type="number"] {
    flex: 1 !important;
    width: 100% !important;
    min-width: 0;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: .55rem .65rem !important;
    font-size: .85rem !important;
    color: #1A1F36 !important;
    background: #ffffff !important;
    outline: none !important;
    transition: border-color .15s ease, box-shadow .15s ease;
    box-shadow: none !important;
    height: auto !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price input[type="number"]:focus {
    border-color: #FF6B35 !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10);
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price input[type="range"].price-slider {
    width: 100% !important;
    accent-color: #FF6B35 !important;
    margin: .75rem 0 1rem !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

/* Botón Save del price (submit) */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price button[type="submit"] {
    width: 100% !important;
    margin: .75rem 0 0 !important;
    background: #FF6B35 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: .65rem 1rem !important;
    font-size: .85rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    transition: background .15s ease, transform .1s ease !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price button[type="submit"]:hover { background: #E0552B !important; }
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price button[type="submit"]:active { transform: scale(.98); }

/* Reset link del price */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price .btn,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price a.btn {
    display: inline-block !important;
    width: 100% !important;
    text-align: center !important;
    background: transparent !important;
    color: #6b7280 !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: .5rem 1rem !important;
    font-size: .82rem !important;
    text-decoration: none !important;
    margin-top: .5rem !important;
    box-shadow: none !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-price a.btn:hover {
    color: #1A1F36 !important;
    border-color: #1A1F36 !important;
}

/* ── Proveedores: search + lista ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier input.form-control.search,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier input[type="search"] {
    width: 100% !important;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: .55rem .75rem !important;
    font-size: .85rem !important;
    color: #1A1F36 !important;
    background: #F8F9FA !important;
    margin-bottom: .75rem !important;
    box-shadow: none !important;
    outline: none;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier input.form-control.search:focus {
    border-color: #FF6B35 !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10);
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier .attr-list,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute .attr-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    max-height: 220px;
    overflow-y: auto;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier .attr-item,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute .attr-item {
    display: flex !important;
    align-items: center !important;
    gap: .55rem !important;
    padding: .4rem 0 !important;
    margin: 0 !important;
    font-size: .85rem !important;
    color: #1A1F36 !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier .attr-item input[type="checkbox"],
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute .attr-item input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    accent-color: #FF6B35 !important;
    cursor: pointer !important;
    flex: 0 0 auto !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-supplier .attr-item .attr-name,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute .attr-item .attr-name {
    flex: 1 !important;
    color: #1A1F36 !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
}

/* ── Attribute (Filtro) ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute .attribute-lists { padding: .85rem 1.1rem 1.1rem !important; }
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 0 .85rem !important;
    background: transparent !important;
    width: auto !important;
    display: block !important;
    color: #1A1F36 !important;
    line-height: 1 !important;
    text-align: left !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-attribute legend.attr-type {
    font-size: .72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .8px !important;
    color: #6b7280 !important;
    margin-bottom: .35rem !important;
    padding: 0 !important;
    display: block !important;
}

/* ── Tree (categorías) ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-item,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-link {
    display: flex !important;
    align-items: center !important;
    padding: .45rem .6rem !important;
    font-size: .85rem !important;
    color: #1A1F36 !important;
    text-decoration: none !important;
    border-radius: 6px !important;
    transition: background .15s ease, color .15s ease;
    margin-bottom: 2px !important;
    background: transparent !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-item:hover,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-link:hover {
    background: #F8F9FA !important;
    color: #FF6B35 !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-link.active,
body:not(.catalog-home) .exicatalog-aside .catalog-filter-tree .cat-item.active .cat-link {
    background: rgba(255,107,53,.08) !important;
    color: #FF6B35 !important;
    font-weight: 600 !important;
}

/* ── Botón "Show" (submit fuera del price) ── */
body:not(.catalog-home) .exicatalog-aside .catalog-filter button[type="submit"].filter,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .btn-primary:not([type="submit"]) {
    width: calc(100% - 2.2rem) !important;
    margin: .5rem 1.1rem 1.1rem !important;
    background: #FF6B35 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: .65rem 1rem !important;
    font-size: .85rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    transition: background .15s ease, transform .1s ease !important;
    display: block !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-filter button[type="submit"].filter:hover,
body:not(.catalog-home) .exicatalog-aside .catalog-filter .btn-primary:hover {
    background: #E0552B !important;
}

/* ══════════════════════════════════════════════════════════
   SESSION WIDGETS (Productos marcados / Últimos vistos)
   ══════════════════════════════════════════════════════════ */
body:not(.catalog-home) .exicatalog-aside .catalog-session {
    text-align: left !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-session .header {
    font-size: .82rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #1A1F36 !important;
    margin: 0 !important;
    padding: 1rem 1.1rem .85rem !important;
    border-bottom: 1px solid #F0F1F3 !important;
    text-align: left !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-session ul {
    list-style: none !important;
    padding: .85rem 1.1rem 1.1rem !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .65rem !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-session li {
    display: flex !important;
    align-items: center !important;
    gap: .65rem !important;
    padding: .5rem !important;
    border-radius: 8px !important;
    background: #F8F9FA !important;
    transition: background .15s ease;
}
body:not(.catalog-home) .exicatalog-aside .catalog-session li:hover { background: #F0F1F3 !important; }
body:not(.catalog-home) .exicatalog-aside .catalog-session li img {
    width: 44px !important;
    height: 44px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    flex: 0 0 auto !important;
}
body:not(.catalog-home) .exicatalog-aside .catalog-session li a.name,
body:not(.catalog-home) .exicatalog-aside .catalog-session .session-items a {
    font-size: .78rem !important;
    color: #1A1F36 !important;
    text-decoration: none !important;
    line-height: 1.25 !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    overflow: hidden !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* ══════════════════════════════════════════════════════════
   STAGE (breadcrumb) — limpio
   ══════════════════════════════════════════════════════════ */
.aimeos .catalog-stage,
.catalog-stage {
    background: transparent !important;
    padding: .5rem 0 !important;
    margin: 0 0 .25rem !important;
    border: none !important;
}
.aimeos .catalog-stage .breadcrumb,
.catalog-stage .breadcrumb {
    padding: .25rem 0 !important;
    margin: 0 !important;
    font-size: .8rem !important;
    background: transparent !important;
}
.aimeos .catalog-stage .breadcrumb a,
.catalog-stage .breadcrumb a {
    color: #4A7EFF !important;
    text-decoration: none !important;
}
.aimeos .catalog-stage .breadcrumb a:hover,
.catalog-stage .breadcrumb a:hover { text-decoration: underline !important; }
.aimeos .catalog-stage .breadcrumb-item.active,
.catalog-stage .breadcrumb-item.active {
    color: #1A1F36 !important;
    font-weight: 600 !important;
}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE + MISC
   ══════════════════════════════════════════════════════════ */
@media (min-width: 992px) {
    .exicatalog-aside {
        position: sticky !important;
        top: 1rem;
        align-self: start;
        max-height: calc(100vh - 2rem);
        overflow-y: auto;
    }
}
@media (max-width: 991px) {
    .exicatalog-aside {
        position: static !important;
        max-height: none !important;
        overflow: visible !important;
    }
}
@media (max-width: 479px) {
    .aimeos .product-list .text-list .name,
    .catalog-list-items .text-list .name { font-size: .78rem !important; }
    .aimeos .product-list .price-item .value { font-size: 1.05rem !important; }
    .aimeos .product-list .basket .btn-action { font-size: .75rem !important; padding: .45rem .6rem !important; min-height: 32px !important; }
    .exicatalog-aside { padding: 0 !important; }
    .aimeos .catalog-list-items.product-list,
    .catalog-list-items.product-list { gap: .4rem !important; }
}

@keyframes exi-fade-in {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Reset slider swiffy heredado */
.catalog-list.swiffy-slider { --swiffy-slider-item-count: 0; }

/* Promo grid: misma estética */
.catalog-list-promo {
    margin: 1rem 0 !important;
    border: none !important;
}

/* Footer del listado */
.catalog-list-footer {
    padding: 2rem 0 1rem !important;
    color: #6b7280 !important;
    font-size: .85rem !important;
    line-height: 1.6 !important;
}

/* ══════════════════════════════════════════════════════════
   EXI FILTER — Mobile bottom-sheet drawer
   Mobile (<lg): fixed bottom sheet, slide-up, backdrop, ESC.
   Desktop (lg+): drawer becomes invisible, sidebar inline.
   ══════════════════════════════════════════════════════════ */

/* ── Trigger button (mobile only, hidden en lg+) ── */
.exi-filter-trigger {
    display: inline-flex !important;
    align-items: center !important;
    gap: .5rem !important;
    width: auto !important;
    max-width: 100% !important;
    padding: .65rem 1rem !important;
    background: #FFFFFF !important;
    color: #1A1F36 !important;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 10px !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    margin: 0 0 .85rem !important;
    box-shadow: 0 1px 2px rgba(0,0,0,.04) !important;
    transition: border-color .15s, box-shadow .15s, transform .1s;
    font-family: inherit !important;
    line-height: 1.2 !important;
}
.exi-filter-trigger:hover,
.exi-filter-trigger:focus-visible {
    border-color: #FF6B35 !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10) !important;
    outline: none !important;
}
.exi-filter-trigger:active { transform: scale(.98); }
.exi-filter-trigger svg {
    color: #FF6B35 !important;
    flex-shrink: 0 !important;
    display: block !important;
}

/* ── Backdrop (mobile only, hidden por defecto, visible cuando root.is-open) ── */
.exi-filter-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(26, 31, 54, .45) !important;
    z-index: 1040 !important;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    display: none !important;
}
.exi-filter-root.is-open .exi-filter-backdrop {
    display: block !important;
}

/* ── Drawer container (mobile: fixed bottom sheet) ── */
.exi-filter-drawer {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1050 !important;
    background: #FFFFFF !important;
    border-top-left-radius: 16px !important;
    border-top-right-radius: 16px !important;
    box-shadow: 0 -4px 24px rgba(0,0,0,.18) !important;
    max-height: 88vh !important;
    display: flex !important;
    flex-direction: column !important;
    transform: translateY(100%) !important;
    transition: transform .28s cubic-bezier(.4,0,.2,1) !important;
    will-change: transform;
    overscroll-behavior: contain;
}
.exi-filter-drawer.is-open {
    transform: translateY(0) !important;
}

/* ── Drawer header (mobile only) ── */
.exi-filter-drawer-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: .5rem 1rem .85rem !important;
    border-bottom: 1px solid #F0F1F3 !important;
    flex-shrink: 0 !important;
    position: relative !important;
    background: #FFFFFF !important;
}
.exi-filter-handle {
    position: absolute !important;
    top: .35rem !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 40px !important;
    height: 4px !important;
    background: #D1D5DB !important;
    border-radius: 2px !important;
}
.exi-filter-drawer-title {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #1A1F36 !important;
    margin: 0 !important;
    padding: .55rem 0 0 !important;
    flex: 1 1 auto !important;
    text-align: center !important;
    line-height: 1.2 !important;
}
.exi-filter-close {
    background: transparent !important;
    border: none !important;
    color: #6B7280 !important;
    padding: .45rem !important;
    cursor: pointer !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background .15s, color .15s;
    flex-shrink: 0 !important;
}
.exi-filter-close:hover,
.exi-filter-close:focus-visible {
    background: #F3F4F6 !important;
    color: #1A1F36 !important;
    outline: none !important;
}

/* ── Drawer body (scrollable en mobile) ── */
.exi-filter-drawer-body {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    padding: 0 !important;
    background: #FFFFFF !important;
}

/* ── Drawer footer (mobile only) ── */
.exi-filter-drawer-footer {
    display: flex !important;
    align-items: center !important;
    gap: .75rem !important;
    padding: .85rem 1rem !important;
    border-top: 1px solid #F0F1F3 !important;
    background: #FFFFFF !important;
    flex-shrink: 0 !important;
    box-shadow: 0 -1px 4px rgba(0,0,0,.04) !important;
    padding-bottom: calc(.85rem + env(safe-area-inset-bottom)) !important;
}

/* ── Botones genéricos ── */
.exi-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: .7rem 1.25rem !important;
    border-radius: 10px !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    border: 1.5px solid transparent !important;
    transition: all .15s ease !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    font-family: inherit !important;
    min-height: 44px !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin: 0 !important;
}
.exi-btn-primary {
    background: #FF6B35 !important;
    color: #FFFFFF !important;
    border-color: #FF6B35 !important;
    flex: 1 1 auto !important;
}
.exi-btn-primary:hover,
.exi-btn-primary:focus-visible {
    background: #E0552B !important;
    border-color: #E0552B !important;
    outline: none !important;
    color: #FFFFFF !important;
}
.exi-btn-primary:active { transform: scale(.98); }
.exi-btn-ghost {
    background: transparent !important;
    color: #1A1F36 !important;
    border-color: #E5E7EB !important;
    flex: 0 0 auto !important;
}
.exi-btn-ghost:hover,
.exi-btn-ghost:focus-visible {
    background: #F8F9FA !important;
    border-color: #D1D5DB !important;
    outline: none !important;
    color: #1A1F36 !important;
}
.exi-btn-block { width: 100% !important; }

/* ══════════════════════════════════════════════════════════
   EXI PRICE — Mobile-friendly inputs + slider
   ══════════════════════════════════════════════════════════ */
.exi-price .price-lists {
    padding: .85rem 1.1rem 1.1rem !important;
    display: block !important;
}
.exi-price-row {
    display: flex !important;
    align-items: flex-end !important;
    gap: .5rem !important;
    margin: 0 0 .85rem !important;
}
.exi-price-field {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: .3rem !important;
    margin: 0 !important;
}
.exi-price-label {
    font-size: .7rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    color: #6B7280 !important;
}
.exi-price .price-low,
.exi-price .price-high {
    width: 100% !important;
    height: 44px !important;
    padding: 0 .75rem !important;
    background: #F8F9FA !important;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 8px !important;
    font-size: .95rem !important;
    color: #1A1F36 !important;
    margin: 0 !important;
    -moz-appearance: textfield;
    font-family: inherit !important;
}
.exi-price .price-low::-webkit-outer-spin-button,
.exi-price .price-high::-webkit-outer-spin-button,
.exi-price .price-low::-webkit-inner-spin-button,
.exi-price .price-high::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.exi-price .price-low:focus,
.exi-price .price-high:focus {
    background: #FFFFFF !important;
    border-color: #FF6B35 !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10) !important;
    outline: none !important;
}
.exi-price-sep {
    color: #9CA3AF !important;
    font-size: 1rem !important;
    padding-bottom: .85rem !important;
    flex-shrink: 0 !important;
    user-select: none !important;
}
.exi-price-slider {
    width: 100% !important;
    height: 28px !important;
    margin: .15rem 0 1rem !important;
    accent-color: #FF6B35 !important;
    background: transparent !important;
    cursor: pointer !important;
}
.exi-price-actions {
    display: flex !important;
    flex-direction: column !important;
    gap: .4rem !important;
}
.exi-price-reset {
    text-align: center !important;
    color: #6B7280 !important;
    font-size: .8rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: .35rem !important;
}
.exi-price-reset:hover { color: #FF6B35 !important; }

/* ══════════════════════════════════════════════════════════
   EXI SUPPLIER — Mobile-friendly list
   ══════════════════════════════════════════════════════════ */
.exi-supplier .supplier-lists {
    padding: .85rem 1.1rem 1.1rem !important;
    display: block !important;
}
.exi-supplier-reset {
    display: inline-block !important;
    margin: 0 0 .65rem !important;
    padding: .3rem .65rem !important;
    background: #FEF3F0 !important;
    color: #FF6B35 !important;
    border-radius: 6px !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: .3px !important;
}
.exi-supplier-search {
    width: 100% !important;
    height: 44px !important;
    padding: 0 .85rem !important;
    background: #F8F9FA !important;
    border: 1.5px solid #E5E7EB !important;
    border-radius: 8px !important;
    font-size: .95rem !important;
    color: #1A1F36 !important;
    margin: 0 0 .75rem !important;
    font-family: inherit !important;
}
.exi-supplier-search:focus {
    background: #FFFFFF !important;
    border-color: #FF6B35 !important;
    box-shadow: 0 0 0 3px rgba(255,107,53,.10) !important;
    outline: none !important;
}
.exi-supplier-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    max-height: 320px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    border-top: 1px solid #F3F4F6 !important;
}
.exi-supplier-item {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #F3F4F6 !important;
    list-style: none !important;
}
.exi-supplier-row {
    display: flex !important;
    align-items: center !important;
    gap: .65rem !important;
    padding: .65rem .15rem !important;
    margin: 0 !important;
    cursor: pointer !important;
    min-height: 48px !important;
    font-size: .9rem !important;
    line-height: 1.2 !important;
}
.exi-supplier-row:hover { background: #FAFAFB; }
.exi-supplier-check {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    accent-color: #FF6B35 !important;
    cursor: pointer !important;
}
.exi-supplier-icon {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: #F3F4F6 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}
.exi-supplier-icon img,
.exi-supplier-icon .media-item {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block !important;
}
.exi-supplier-name {
    font-size: .92rem !important;
    color: #1A1F36 !important;
    flex: 1 1 auto !important;
    word-break: break-word !important;
}

/* ══════════════════════════════════════════════════════════
   DESKTOP (lg+): drawer colapsa a sidebar inline
   ══════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
    /* Ocultar elementos exclusivos de mobile */
    .exi-filter-trigger,
    .exi-filter-backdrop,
    .exi-filter-drawer-header,
    .exi-filter-drawer-footer {
        display: none !important;
    }

    /* Drawer → contenedor inline normal */
    .exi-filter-drawer {
        position: static !important;
        transform: none !important;
        max-height: none !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        display: block !important;
        flex-direction: initial !important;
        z-index: auto !important;
        inset: auto !important;
    }

    .exi-filter-drawer-body {
        overflow: visible !important;
        padding: 0 !important;
        background: transparent !important;
        flex: 0 0 auto !important;
    }
}

/* ══════════════════════════════════════════════════════════
   MOBILE (<lg): neutralizar card styles del aside para que
   el drawer fixed pueda escapar del overflow:hidden.
   El drawer REEMPLAZA visualmente al card en mobile.
   ══════════════════════════════════════════════════════════ */
@media (max-width: 1023px) {
    body:not(.catalog-home) .exicatalog-aside .exi-filter-root,
    body:not(.catalog-home) .exicatalog-aside .catalog-filter.exi-filter-root {
        background: transparent !important;
        border: none !important;
        border-top: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .exi-filter-form,
    .exi-filter-nav {
        padding: 0 !important;
        margin: 0 !important;
        max-width: none !important;
        overflow: visible !important;
    }
}

/* iOS safe-area para el footer del drawer (notch / home indicator) */
@supports (padding: max(0px)) {
    .exi-filter-drawer-footer {
        padding-bottom: max(.85rem, env(safe-area-inset-bottom)) !important;
    }
}

/* ══════════════════════════════════════════════════════════
   INFLUENCERS — Hero fullscreen + stagger reveal
   Solo aplica cuando tree.blade.php detecta la categoria.
   ══════════════════════════════════════════════════════════ */

.exi-influencers-hero {
    position: relative;
    overflow: hidden;
    min-height: clamp(280px, 40vh, 480px);
    margin: 0 0 1.5rem;
    border-radius: var(--exi-radius-lg, 18px);
    background: linear-gradient(135deg, #1A1F36 0%, #2d1456 50%, #1A1F36 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1.5rem;
    text-align: center;
}
.exi-influencers-hero-bg {
    position: absolute; inset: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255, 180, 0, .25) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(74, 126, 255, .25) 0%, transparent 50%);
    animation: exi-influencers-bg-pan 8s ease-in-out infinite alternate;
    pointer-events: none;
}
@keyframes exi-influencers-bg-pan {
    0%   { transform: scale(1)   translate(0, 0); }
    100% { transform: scale(1.1) translate(-2%, -2%); }
}
.exi-influencers-hero-content {
    position: relative;
    max-width: 600px;
    animation: exi-influencers-reveal .8s cubic-bezier(.4,0,.2,1) both;
}
@keyframes exi-influencers-reveal {
    from { opacity: 0; transform: translateY(30px); }
    to   { opacity: 1; transform: translateY(0); }
}
.exi-influencers-badge {
    display: inline-block;
    background: linear-gradient(135deg, #FFB400 0%, #FF6B35 100%);
    color: #1A1F36;
    font-size: clamp(.7rem, 1.6vw, .85rem);
    font-weight: 800;
    letter-spacing: 2px;
    padding: .4rem 1.1rem;
    border-radius: 50px;
    margin-bottom: 1rem;
    box-shadow: 0 4px 16px rgba(255, 107, 53, .35);
    animation: exi-influencers-badge-pulse 2s ease-in-out infinite;
}
@keyframes exi-influencers-badge-pulse {
    0%, 100% { transform: scale(1);    }
    50%      { transform: scale(1.05); }
}
.exi-influencers-title {
    font-size: clamp(1.8rem, 6vw, 3.5rem);
    font-weight: 900;
    line-height: 1.05;
    margin: 0 0 .75rem;
    letter-spacing: -0.02em;
    color: #fff;
}
.exi-influencers-title span {
    background: linear-gradient(135deg, #FFB400 0%, #FF6B35 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.exi-influencers-subtitle {
    font-size: clamp(.9rem, 2vw, 1.1rem);
    color: rgba(255, 255, 255, .8);
    margin: 0;
    line-height: 1.4;
}

/* Stagger reveal de productos solo en Influencers */
.exicatalog-main--influencers .catalog-list-items > * {
    opacity: 0;
    transform: translateY(20px);
    animation: exi-product-reveal .5s cubic-bezier(.4,0,.2,1) forwards;
}
.exicatalog-main--influencers .catalog-list-items > *:nth-child(1)  { animation-delay: .30s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(2)  { animation-delay: .36s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(3)  { animation-delay: .42s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(4)  { animation-delay: .48s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(5)  { animation-delay: .54s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(6)  { animation-delay: .60s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(7)  { animation-delay: .66s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(8)  { animation-delay: .72s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(9)  { animation-delay: .78s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(10) { animation-delay: .84s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(11) { animation-delay: .90s; }
.exicatalog-main--influencers .catalog-list-items > *:nth-child(12) { animation-delay: .96s; }
@keyframes exi-product-reveal {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
    .exi-influencers-hero-bg,
    .exi-influencers-hero-content,
    .exi-influencers-badge,
    .exicatalog-main--influencers .catalog-list-items > * {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}