/* ── RESPONSIVE ────────────────────────────────────────── */
@media (max-width: 1024px) {
  #hero { grid-template-columns: 1fr }
  .h-img { position: absolute; inset: 0; aspect-ratio: auto }
  .h-img::after { background: linear-gradient(to top, var(--0) 0%, rgba(0,0,0,.5) 60%, transparent 100%) }
  .h-text { position: relative; z-index: 2; padding: 0 32px 90px; height: 100vh; justify-content: flex-end }
  .h-meta, .h-scroll { display: none }

  #artist { grid-template-columns: 1fr }
  .art-img { aspect-ratio: 4/3 }
  .art-info { padding: 48px 32px }

  .sec-head { padding: 52px 32px 40px; flex-direction: column; gap: 12px; align-items: flex-start }

  .ev-row { grid-template-columns: 80px 1fr auto; gap: 16px; padding: 18px 32px }
  .ev-type { display: none }
  .ev-cards { grid-template-columns: 1fr }
  .ev-card { aspect-ratio: auto; min-height: 240px }

  .music-grid { grid-template-columns: 1fr }

  .gal-grid { grid-template-columns: repeat(6, 1fr) }
  .gc1 { grid-column: span 3; grid-row: span 3 }
  .gc2 { grid-column: span 3; grid-row: span 2 }
  .gc3 { grid-column: span 3; grid-row: span 2 }
  .gc4 { grid-column: span 3; grid-row: span 2 }
  .gc5 { grid-column: span 3; grid-row: span 2 }
  .gc6 { grid-column: span 3; grid-row: span 2 }
  .gc7 { grid-column: span 3; grid-row: span 2 }

  #epk { grid-template-columns: 1fr }
  .epk-r { display: none }
  .epk-l { padding: 52px 32px }

  #contact { grid-template-columns: 1fr }
  .ct-l { border-right: none; border-bottom: 1px solid var(--10) }
  .ct-l, .ct-r { padding: 52px 32px }

  footer { grid-template-columns: 1fr; text-align: center }
  .ft-q, .ft-r { text-align: center }

  .sb { flex-wrap: wrap }
  .sb-label { width: 100%; border-right: none; border-bottom: 1px solid var(--10) }
  .sb-links { flex-wrap: wrap }
  .sb-a { min-width: 50%; border-bottom: 1px solid var(--10) }
}

@media (max-width: 640px) {
  #nav { padding: 0 20px }
  .nav-links { display: none }
  .ham { display: flex }

  .h-text { padding: 0 20px 80px }
  h1 { font-size: 72px }

  .ev-row { grid-template-columns: 64px 1fr; gap: 12px; padding: 16px 20px }
  .ev-pill { display: none }
  .ev-card { padding: 32px 24px }

  .music-card { padding: 24px 20px }

  .gal-grid { grid-template-columns: 1fr 1fr; grid-auto-rows: 120px }
  .gc1, .gc2, .gc3, .gc4, .gc5, .gc6, .gc7 { grid-column: span 1; grid-row: span 2 }

  footer { padding: 24px 20px }
  .frow { grid-template-columns: 1fr }
}
