.featured-artist-block {
  position: relative;
  padding: 3rem 2rem;
  margin-bottom: 4rem;
  overflow: hidden;
  min-height: 320px; 
  border-radius: 1.5rem;
  backdrop-filter: blur(8px);
 
  overflow: hidden;
}

.gradient-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(135deg, #ff7e5f 0%, #feb47b 40%, #86a8e7 80%, #91eae4 100%);
  opacity: 0.28;
  background-size: 200% 200%; 
  animation: gradientMove 15s ease infinite;
}

.featured-artist {
  position: relative;
  z-index: 2; 
} 

@keyframes gradientMove {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Juste pour être certain que le contenu passe au-dessus */
.featured-artist {
    position: relative;
    z-index: 5;
}
.artist-img-wrapper, .artist-link, .cta-premium {
    position: relative;
    z-index: 6;
}

.item-card {
    background: #fff;
    border-radius: 20px;
    border: 1px solid rgba(8, 145, 178, 0.12);
    transition: all .3s ease;
}

.item-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(0,0,0,0.12);
    border-color: var(--vert-default);
}

.item-tags .tag {
    display: inline-block;
    background: var(--text-dark);
    color: var(--white);
    padding: 4px 12px;
    font-size: .75rem;
    border-radius: 20px;
    margin-right: 6px;
    transition: .3s ease;
}

.item-tags .tag:hover {
    background: var(--vert-logo);
    color: #fff;
}

.category-hero {
    background: linear-gradient(135deg, var(--sky-light), var(--sand-beige));
    border-radius: 28px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

.icon-circle i {
    font-size: 3.2rem;
    color: var(--vert-logo);
}

.separator-custom {
    width: 70px;
    height: 4px;
    background: var(--vert-logo);
    border-radius: 5px;
}

/* Glow animé */
.icon-glow {
    animation: glowPulse 2.5s infinite;
}

@keyframes glowPulse {
    0%, 100% { opacity: .5; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.15); }
}

/* Fade + slide */
.fade-slide-in {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeSlide 0.9s ease-out forwards;
}

@keyframes fadeSlide {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

