  /* ── ARTISTE HERO ── */
  .artiste-hero {
    display: grid; grid-template-columns: 1fr 1fr;
    min-height: 420px;
  }
  .ah-visuel {
    background: var(--violet); position: relative; overflow: hidden;
    display: flex; align-items: center; justify-content: center;
  }
  .ah-visuel::before { content:''; position:absolute; inset:0; background-image: repeating-linear-gradient(0deg, transparent, transparent 47px, rgba(251,238,9,0.05) 48px), repeating-linear-gradient(90deg, transparent, transparent 47px, rgba(251,238,9,0.05) 48px); pointer-events:none; }
  .ah-initials { font-size: 7rem; font-weight: 900; color: var(--jaune); letter-spacing: -0.06em; opacity: 0.7; position: relative; z-index: 1; }
  .ah-img { width: 100%; height: 100%; object-fit: cover; display: block; }
 
  .ah-content {
    background: var(--noir); padding: 3rem;
    display: flex; flex-direction: column; justify-content: center;
  }
  .breadcrumb { font-size: 0.52rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: #666; margin-bottom: 1.25rem; }
  .breadcrumb a { color: var(--jaune); text-decoration: none; }
  .ah-style { font-size: 0.62rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--jaune); margin-bottom: 0.6rem; }
  .ah-name { font-size: clamp(2rem, 5vw, 3.25rem); font-weight: 900; line-height: 0.95; letter-spacing: -0.03em; color: var(--blanc); margin-bottom: 1rem; }
  .ah-region { font-size: 0.7rem; color: #aaa; display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1.5rem; }
  .ah-region::before { content: ''; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--violet); flex-shrink: 0; }
  .ah-tags { display: flex; gap: 0.5rem; flex-wrap: wrap; }
  .ah-tag { font-size: 0.55rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; padding: 0.28rem 0.7rem; }
  .tag-concert { background: var(--jaune); color: var(--noir); }
  .tag-bal     { background: var(--violet); color: var(--blanc); }
  .tag-atelier { background: #333; color: #ccc; }
 
  /* ── CONTENU PRINCIPAL ── */
  .artiste-body { max-width: 1060px; margin: 0 auto; padding: 4rem 2rem; display: grid; grid-template-columns: 2fr 1fr; gap: 4rem; align-items: start; }
 
  /* BIO */
  .section-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: var(--violet); margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--bord); }
  .bio-text { font-size: 0.95rem; line-height: 1.8; color: #3d3d3d; }
  .bio-text p + p { margin-top: 1rem; }
 
  /* VIDÉOS */
  .videos-section { margin-top: 3rem; }
  .videos-grid { display: grid; grid-template-columns: 1fr ; gap: 1rem; margin-top: 1rem; }
  .video-embed iframe {
    aspect-ratio: 16/9; 
    width:100%;
    border:none;
    background: var(--noir);
    position: relative; overflow: hidden;
    display: flex; 
    align-items: center; 
    justify-content: center;
    cursor: pointer;
  }
  .video-thumb { background: var(--violet); width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 0.5rem; }
  .video-play { width: 44px; height: 44px; border-radius: 50%; background: var(--jaune); display: flex; align-items: center; justify-content: center; }
  .video-play::after { content: ''; border: 0 solid transparent; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 14px solid var(--noir); margin-left: 3px; }
  .video-title { font-size: 0.65rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255,255,255,0.7); }
 
  /* AGENDA ARTISTE */
  .dates-section { margin-top: 3rem; }
  .date-item { padding: 1rem 0; border-bottom: 1px solid var(--bord); display: flex; gap: 1rem; align-items: center; text-decoration: none; color: inherit; transition: background 0.12s, padding 0.12s; }
  .date-item:hover { background: var(--gris); padding-left: 0.75rem; padding-right: 0.75rem; margin-left: -0.75rem; margin-right: -0.75rem; }
  .di-date { text-align: center; min-width: 44px; }
  .di-num { font-size: 1.6rem; font-weight: 900; line-height: 1; color: var(--violet); }
  .di-mois { font-size: 0.48rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #595959; }
  .di-info h4 { font-size: 0.85rem; font-weight: 700; color: var(--noir); }
  .di-info p { font-size: 0.7rem; color: #595959; margin-top: 0.1rem; }
  .di-arrow { margin-left: auto; color: var(--bord); transition: color 0.15s; }
  .date-item:hover .di-arrow { color: var(--violet); }
 
  /* SIDEBAR */
  .sidebar {}
  .sidebar-card { background: var(--gris); padding: 1.5rem; margin-bottom: 1.5rem; }
  .sidebar-card h3 { font-size: 0.58rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--violet); margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--bord); }
  .sidebar-list { list-style: none; display: flex; flex-direction: column; gap: 0.5rem; }
  .sidebar-list li { font-size: 0.78rem; color: #3d3d3d; display: flex; gap: 0.5rem; }
  .sidebar-list li strong { color: var(--noir); min-width: 70px; }
 
  /* RÉSEAUX */
  .reseaux-list { display: flex; flex-direction: column; gap: 0.5rem; margin-top: 0.5rem; }
  .reseau-link {
    display: flex; align-items: center; gap: 0.75rem;
    font-size: 0.72rem; font-weight: 700; color: var(--noir); text-decoration: none;
    padding: 0.6rem 0.75rem; background: var(--blanc); border: 1px solid var(--bord);
    transition: border-color 0.15s, background 0.15s;
  }
  .reseau-link:hover { border-color: var(--violet); background: var(--blanc); color: var(--violet); }
  .reseau-icon { width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: 900; background: var(--violet); color: var(--blanc); }
  .reseau-icon.yt { background: #cc0000; }
  .reseau-icon.ig { background: #c13584; }
  .reseau-icon.fb { background: #1877f2; }
  .reseau-icon.sc { background: #ff5500; }
 