.filters-panel-accordion{
    position: sticky;
    top: 110px;
}

.filter-accordion{
    border-top: 1px solid rgba(0,0,0,.06);
}

.filter-accordion-item{
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

.filter-accordion-btn{
    padding: 1rem 0;
    background: transparent !important;
    box-shadow: none !important;
    font-family: 'Cinzel', serif;
    font-size: .88rem;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: #34485d !important;
}

.filter-accordion-btn:not(.collapsed){
    color: #9a7d18 !important;
}

.filter-accordion-btn::after{
    transform: scale(.85);
    opacity: .75;
}

.filter-accordion-body{
    padding: 0 0 1rem 0;
}

.filter-select{
    width: 100%;
    min-height: 48px;
    padding: .85rem 1rem;
    border: 1px solid rgba(0,0,0,.10);
    border-radius: 16px;
    background: rgba(255,255,255,.92);
    color: #34485d;
    font-family: 'Cinzel', serif;
    font-size: .88rem;
    letter-spacing: .04em;
    outline: none;
    box-shadow: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.filter-select:focus{
    border-color: rgba(201,170,84,.55);
    box-shadow: 0 0 0 3px rgba(201,170,84,.10);
}

.filter-placeholder{
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: .85rem 1rem;
    border: 1px dashed rgba(0,0,0,.10);
    border-radius: 16px;
    background: rgba(255,255,255,.55);
    color: rgba(52,72,93,.55);
    font-size: .82rem;
    letter-spacing: .04em;
}
.filter-head-premium{
    position: relative;
    margin-bottom: 1.15rem;
    padding: 0 0 1rem 0;
}

.filter-head-premium::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 72px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        rgba(201,170,84,.95) 0%,
        rgba(201,170,84,.35) 70%,
        rgba(201,170,84,0) 100%
    );
}

.filter-head-kicker{
    display: inline-block;
    margin-bottom: .45rem;
    font-size: .68rem;
    letter-spacing: .22em;
    text-transform: uppercase;
    color: rgba(154,125,24,.88);
}

.filter-head-premium h3{
    margin: 0 0 .45rem 0;
    font-family: 'Cinzel', serif;
    font-size: 1.08rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #34485d;
}

.filter-head-text{
    margin: 0;
    max-width: 22ch;
    font-size: .78rem;
    line-height: 1.5;
    color: rgba(52,72,93,.62);
}

.filter-accordion-btn--featured{
    position: relative;
    padding-right: 2.2rem !important;
    color: #9a7d18 !important;
}

.filter-accordion-btn--featured::before{
    content: "Nuevo";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-52%);
    padding: .18rem .45rem;
    border: 1px solid rgba(201,170,84,.28);
    border-radius: 999px;
    background: rgba(201,170,84,.08);
    font-family: inherit;
    font-size: .56rem;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #9a7d18;
}

.filter-accordion-btn--featured:not(.collapsed){
    color: #9a7d18 !important;
}
@media (max-width: 991px) {
    .catalogo-body{
        display: flex !important;
        flex-direction: column !important;
        gap: 1rem;
    }

    .filters-panel,
    .filters-panel-accordion{
        order: 1;
        position: static !important;
        top: auto !important;
        width: 100%;
        margin-bottom: .5rem;
    }

    .productos-grid{
        order: 2;
        width: 100%;
    }
}
.filter-model-list{
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.filter-model-item{
    position: relative;
    display: flex;
    align-items: center;
    gap: .8rem;
    width: 100%;
    min-height: 48px;
    padding: .85rem 1rem;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 16px;
    background: rgba(255,255,255,.88);
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.filter-model-item:hover{
    border-color: rgba(154,125,24,.35);
    background: rgba(255,255,255,.98);
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(0,0,0,.04);
}

.filter-model-input{
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: #9a7d18;
    flex-shrink: 0;
}

.filter-model-text{
    font-size: .86rem;
    line-height: 1.35;
    color: #34485d;
    letter-spacing: .02em;
}

.filter-model-item:has(.filter-model-input:checked){
    border-color: rgba(154,125,24,.55);
    background: rgba(201,170,84,.08);
    box-shadow: 0 10px 24px rgba(154,125,24,.08);
}

.filter-model-item:has(.filter-model-input:checked) .filter-model-text{
    color:   #7c6326;
}

/*filtro de color*/
.filter-color-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.filter-color-item{
    display:flex;
    align-items:center;
    gap:12px;
    width:100%;
    padding:4px 0;
    border:0;
    background:transparent;
    text-align:left;
    cursor:pointer;
}

.filter-color-dot{
    width:22px;
    height:22px;
    min-width:22px;
    border-radius:50%;
    border:1px solid rgba(0,0,0,.16);
    box-shadow:0 4px 10px rgba(0,0,0,.08);
    transition:transform .18s ease, box-shadow .18s ease;
}

.filter-color-name{
    font-size:14px;
    line-height:1.2;
    color:#2e2e2e;
    letter-spacing:.03em;
}

.filter-color-item:hover .filter-color-dot{
    transform:scale(1.08);
    box-shadow:0 8px 18px rgba(0,0,0,.14);
}

.filter-color-item:hover .filter-color-name{
    color:#8a6a2f;
}

.filter-color-item:focus{
    outline:none;
}

.filter-color-item:focus .filter-color-name{
    color:#8a6a2f;
}

/*piel*/
.filter-piel-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.filter-piel-item{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:10px 12px;
    border:1px solid rgba(0,0,0,.08);
    background:#fff;
    cursor:pointer;
    text-align:left;
    transition:all .18s ease;
}

.filter-piel-item:hover{
    border-color:rgba(138,106,47,.35);
    background:#faf8f3;
}

.filter-piel-item:focus{
    outline:none;
    border-color:rgba(138,106,47,.45);
    box-shadow:0 0 0 2px rgba(138,106,47,.08);
}

.filter-piel-name{
    font-size:14px;
    line-height:1.2;
    color:#2e2e2e;
    letter-spacing:.03em;
}

.filter-price-box{
    display:flex;
    flex-direction:column;
    gap:14px;
}

.filter-price-values{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:14px;
    color:#2e2e2e;
    letter-spacing:.03em;
}

.filter-price-range-wrap{
    padding:2px 0 4px;
}

.filter-price-range{
    width:100%;
    appearance:none;
    -webkit-appearance:none;
    background:transparent;
}

.filter-price-range:focus{
    outline:none;
}

.filter-price-range::-webkit-slider-runnable-track{
    height:4px;
    border-radius:999px;
    background:linear-gradient(to right, #b08a4a 0%, #d7c2a1 100%);
}

.filter-price-range::-webkit-slider-thumb{
    -webkit-appearance:none;
    appearance:none;
    width:18px;
    height:18px;
    border-radius:50%;
    background:#fff;
    border:1px solid rgba(0,0,0,.18);
    box-shadow:0 4px 12px rgba(0,0,0,.18);
    margin-top:-7px;
    cursor:pointer;
}

.filter-price-range::-moz-range-track{
    height:4px;
    border-radius:999px;
    background:linear-gradient(to right, #b08a4a 0%, #d7c2a1 100%);
}

.filter-price-range::-moz-range-thumb{
    width:18px;
    height:18px;
    border:none;
    border-radius:50%;
    background:#fff;
    box-shadow:0 4px 12px rgba(0,0,0,.18);
    cursor:pointer;
}