.ec-artist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ec-artist-card{display:grid;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px}
.ec-artist-card .thumb{aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:#0d0d0d;border:1px solid var(--border)}
.ec-artist-card .thumb img{width:100%;height:100%;object-fit:cover}
.ec-artist-card h3{font-size:18px;font-weight:900}
.ec-artist-card p{color:var(--muted);font-size:15px}
.ec-artist-links{display:flex;gap:14px;margin-top:8px}
.ec-artist-links img{width:32px;height:32px;opacity:.95}

.ec-media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.ec-media-item{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:#0c0c0c}
.ec-media-item .cover{width:120px;height:120px;border-radius:10px;overflow:hidden;background:#101010;border:1px solid var(--border)}
.ec-media-item .cover img{width:100%;height:100%;object-fit:cover}
.ec-media-item h4{font-size:16px;font-weight:800;margin-bottom:6px}
.ec-media-item p{color:var(--muted);font-size:14px}
.ec-media-item .row{display:flex;gap:10px;align-items:center;margin-top:6px}

.ec-booking-card{max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px}
.ec-form{display:grid;gap:12px}
.ec-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ec-form input,.ec-form textarea,.ec-form select{background:#0f0f0f;color:#fff;border:1px solid #2a2a2a;border-radius:10px;padding:12px;font:inherit}
.ec-form textarea{min-height:120px}
.ec-form input:focus,.ec-form textarea:focus,.ec-form select:focus{outline:2px solid var(--brand);outline-offset:1px}
.ec-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}
.ec-note{color:var(--muted);font-size:14px;text-align:center;margin-top:10px}

@media(max-width:980px){
  .ec-artist-grid{grid-template-columns:repeat(2,1fr)}
  .ec-media-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .ec-artist-grid{grid-template-columns:1fr}
  .ec-media-item{grid-template-columns:100px 1fr}
  .ec-media-item .cover{width:100px;height:100px}
  .ec-form .row{grid-template-columns:1fr}
}
