 .filter-btn {
        background: transparent;
        border: 1px solid #e0ddd5;
        padding: 10px 25px;
        border-radius: 30px;
        color: #555;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.3s ease;
        font-size: 0.95rem;
    }
    .filter-btn:hover, .filter-btn.active {
        background: #1a1a1a;
        color: #fff;
        border-color: #1a1a1a;
        box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    }

    .gallery-card-premium { display: block; text-decoration: none; cursor: zoom-in; }
    .gallery-overlay {
        position: absolute;
        inset: 0;
        background: rgba(26, 26, 26, 0.4);
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0;
        transition: all 0.4s ease;
        backdrop-filter: blur(2px);
    }
    .gallery-card-premium:hover .gallery-overlay { opacity: 1; }
    .gallery-card-premium:hover img { transform: scale(1.1); }
    
    .overlay-content { text-align: center; transform: translateY(20px); transition: transform 0.4s ease; }
    .gallery-card-premium:hover .overlay-content { transform: translateY(0); }
    
    .category-tag {
        display: block;
        color: #fff;
        font-size: 0.8rem;
        font-weight: 700;
        background: rgba(255,255,255,0.2);
        padding: 4px 12px;
        border-radius: 15px;
        margin-bottom: 10px;
        backdrop-filter: blur(5px);
    }

    @keyframes fadeInUp {
        from { opacity: 0; transform: translateY(30px); }
        to { opacity: 1; transform: translateY(0); }
    }