/*
 * tienda.css — Catálogo / Tienda · Nexora Luxury
 */

/* ─── Filtros ─── */
.tienda-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}
.filter-btn {
    font-family: var(--font-sans);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 8px 18px;
    border: 1px solid var(--border);
    background: transparent;
    color: var(--text-muted);
    border-radius: var(--r-sm);
    cursor: pointer;
    transition: border-color .3s, color .3s, background .3s;
}
.filter-btn:hover,
.filter-btn.active {
    border-color: var(--gold);
    color: var(--gold);
    background: rgba(201,169,110,.07);
}
.filter-btn.active { font-weight: 600; }

/* ─── Búsqueda ─── */
.tienda-search-wrap {
    position: relative;
    margin-bottom: 40px;
    max-width: 420px;
}
.tienda-search {
    width: 100%;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--r-sm);
    color: var(--text);
    font-family: var(--font-sans);
    font-size: 14px;
    padding: 12px 44px 12px 16px;
    outline: none;
    transition: border-color .3s;
}
.tienda-search::placeholder { color: var(--text-subtle); }
.tienda-search:focus { border-color: var(--gold); }
.tienda-search-icon {
    position: absolute;
    right: 14px; top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
}

/* ─── Sin resultados ─── */
.tienda-empty {
    text-align: center;
    padding: 80px 0;
    color: var(--text-muted);
}
.tienda-empty p { font-size: 15px; margin-bottom: 24px; }

/* ─── Productos — list transition ─── */
.product-card {
    animation: fadeInUp .4s ease-out both;
}
.product-card:nth-child(2) { animation-delay: .05s; }
.product-card:nth-child(3) { animation-delay: .1s; }
.product-card:nth-child(4) { animation-delay: .15s; }
.product-card:nth-child(5) { animation-delay: .2s; }
.product-card:nth-child(6) { animation-delay: .25s; }

/* ─── Responsive tienda ─── */
@media (max-width: 768px) {
    .tienda-filters { gap: 6px; margin-bottom: 20px; }
    .filter-btn { font-size: 9px; padding: 7px 14px; }
    .tienda-search-wrap { max-width: 100%; margin-bottom: 28px; }
    .tienda-empty { padding: 48px 0; }
    .product-card-cta { flex-direction: column; }
    .product-card-cta .btn { width: 100%; }
}
@media (max-width: 480px) {
    .filter-btn { font-size: 9px; padding: 6px 12px; letter-spacing: 1.5px; }
}
