/* Shop Page Specific Styles */
.shop-product-card {
    position: relative;
    background: white;
    border: 1px solid var(--color-border);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    overflow: hidden;
}

.shop-product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.01);
}

.product-image-container {
    position: relative;
    overflow: hidden;
    background: #f5f5f4;
    aspect-ratio: 1/1;
}

.product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.shop-product-card:hover .product-image {
    transform: scale(1.05);
}

.filter-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    background: white;
    border: 1px solid var(--color-border);
    border-radius: 9999px;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.filter-tag:hover, .filter-tag.active {
    background: var(--color-text);
    color: white;
    border-color: var(--color-text);
}

/* Shop-specific animations */
.shop-product-card {
    animation: fadeInUp 0.8s ease-out;
    animation-fill-mode: both;
}

.shop-product-card:nth-child(1) { animation-delay: 0.1s; }
.shop-product-card:nth-child(2) { animation-delay: 0.2s; }
.shop-product-card:nth-child(3) { animation-delay: 0.3s; }
.shop-product-card:nth-child(4) { animation-delay: 0.4s; }