.artists-directory,.artist-profile{max-width:1120px;margin:0 auto;padding:32px 0 48px}.artists-heading{margin-bottom:24px}.artists-heading h1{font-size:clamp(2rem,4vw,3rem);margin:6px 0}.artists-heading p,.artist-profile-header p{color:var(--muted,#746b87);margin:8px 0}.artist-search{display:flex;align-items:end;gap:10px;background:#fff;border:1px solid #e9e0f8;border-radius:18px;padding:14px;box-shadow:0 8px 28px #45236a08}.artist-search .field{flex:1;margin:0}.artist-search .button{min-height:44px}.artist-help{margin:18px 0 26px;border:1px solid #e9e0f8;border-radius:14px;background:#fcfaff}.artist-help summary{min-height:44px;padding:12px 16px;cursor:pointer;font-weight:650;color:#65339a}.artist-help>div{padding:0 16px 14px;color:#685d78;line-height:1.65}.artist-help p{margin:8px 0}.artist-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.artist-directory-card{display:flex;gap:14px;align-items:center;padding:20px;background:#fff;border:1px solid #e9e0f8;border-radius:18px;box-shadow:0 5px 16px #48256d06;text-decoration:none;color:inherit;min-width:0;transition:transform .18s ease,box-shadow .18s ease}.artist-directory-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #48256d12}.artist-directory-card h2{font-size:1.05rem;margin:0 0 5px;overflow-wrap:anywhere}.artist-directory-card p{font-size:.84rem;color:#786d87;margin:0}.artist-monogram{display:grid;place-items:center;flex:none;width:58px;height:58px;border-radius:18px;background:linear-gradient(140deg,#eaddff,#fff3b3);color:#7138b0;font-size:1.7rem;font-weight:750}.artist-card-arrow{margin-left:auto;color:#8c56cb}.artist-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:10px;font-size:.9rem}.artist-profile-header{background:linear-gradient(120deg,#f3ecff,#fff9dd);border:1px solid #e7dbf7;border-radius:24px;padding:28px}.artist-profile-intro{display:flex;align-items:center;gap:20px}.artist-profile-intro .artist-monogram{width:84px;height:84px;font-size:2.6rem;border-radius:23px;background:#ffffffa8}.artist-profile-intro h1{font-size:clamp(1.8rem,4vw,2.7rem);margin:6px 0;overflow-wrap:anywhere}.artist-profile-actions{display:flex;gap:9px;margin-top:24px;flex-wrap:wrap}.artist-profile-actions form{margin:0}.artist-profile-actions .button{min-height:44px}.artist-results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 16px}.artist-results-heading h2{font-size:1.3rem;margin:0}.artist-results-heading>span{color:#7f718f;font-size:.9rem}.artist-upcoming .event-list-item{min-width:0}.artist-date-cancelled .card-body{background:#fff5f5}.artist-directory-grid>.empty,.artist-upcoming .cards>.empty{grid-column:1/-1}.artist-profile .badge.red{background:#fee2e2;color:#a61c36}
@media(max-width:900px){.artist-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.artists-directory,.artist-profile{padding:18px 0 30px}.artists-heading{margin-bottom:16px}.artists-heading p{font-size:.9rem}.artist-search{display:grid;grid-template-columns:1fr;padding:12px;gap:8px;border-radius:16px}.artist-search .button{width:100%;min-height:44px}.artist-directory-grid{grid-template-columns:1fr;gap:10px}.artist-directory-card{padding:14px;gap:12px}.artist-monogram{width:48px;height:48px;font-size:1.4rem;border-radius:14px}.artist-profile-header{padding:18px;border-radius:20px}.artist-profile-intro{gap:13px;align-items:flex-start}.artist-profile-intro .artist-monogram{width:58px;height:58px;font-size:1.8rem;border-radius:16px}.artist-profile-intro h1{font-size:1.6rem}.artist-profile-intro p{font-size:.85rem}.artist-profile-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:18px}.artist-profile-actions .button,.artist-profile-actions form{width:100%;min-height:44px}.artist-profile-actions .button{justify-content:center}.artist-help{margin:14px 0 20px}.artist-results-heading{margin-top:22px}.artist-results-heading h2{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.artist-directory-card{transition:none}.artist-directory-card:hover{transform:none}}
@media(max-width:640px){.artist-upcoming .cards{grid-template-columns:minmax(0,1fr);gap:12px}}
