/* ── PAGE HEADER ───────────────────────────────── */

.page-header {
    padding: 120px 40px 80px;
    background: var(--surface);
    border-bottom: 1px solid var(--border);
}

.page-header .section-eyebrow { margin-bottom: 16px; }

.page-header h1 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(56px, 9vw, 120px);
    line-height: .93;
    letter-spacing: .03em;
    margin-bottom: 16px;
}

.page-header p {
    font-size: 15px;
    color: var(--dim);
    max-width: 480px;
    line-height: 1.75;
}

/* ── ARTIST GRID ───────────────────────────────── */

.artists-section {
    padding: 80px 40px 120px;
}

.artists-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2px;
}

.artist-card {
    position: relative;
    overflow: hidden;
    aspect-ratio: 3 / 4;
    display: block;
}

.artist-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(.82) grayscale(10%);
    transition: transform .5s ease, filter .5s ease;
}

.artist-card:hover img {
    transform: scale(1.06);
    filter: brightness(.7) grayscale(0%);
}

.artist-card-veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(6,6,6,.92) 0%,
        rgba(6,6,6,.18) 55%,
        transparent 100%
    );
}

.artist-card-border {
    position: absolute;
    inset: 0;
    border: 2px solid transparent;
    transition: border-color .3s;
    pointer-events: none;
}

.artist-card:hover .artist-card-border {
    border-color: var(--accent);
}

.artist-card-body {
    position: absolute;
    bottom: 0; left: 0; right: 0;
    padding: 28px 24px;
}

.artist-card-body h2 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: clamp(26px, 3vw, 38px);
    letter-spacing: .06em;
    line-height: 1;
    transform: translateY(4px);
    transition: transform .3s, color .3s;
}

.artist-card:hover .artist-card-body h2 {
    transform: translateY(0);
    color: var(--accent);
}

/* ── RESPONSIVE ────────────────────────────────── */

@media (max-width: 768px) {
    .page-header { padding: 96px 20px 60px; }
    .artists-section { padding: 60px 0 80px; }
    .artists-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    .artists-grid { grid-template-columns: 1fr; }
}
