/* Plug & Play — Responsive Breakpoints
   Mobile-first: base styles are mobile. Min-width adds desktop features. */

/* ===== MOBILE L (480px+) ===== */
@media (min-width: 480px) {
  .hero__title { font-size: 64px; }
}

/* ===== TABLET (768px+) ===== */
@media (min-width: 768px) {
  .navbar__links { display: flex; }
  .navbar__hamburger { display: none; }
  .navbar__cta { display: block; }

  .hero__title { font-size: 80px; }

  .video-grid--2col { grid-template-columns: repeat(2, 1fr); }
  .masonry-grid { columns: 2; }

  .footer__inner { grid-template-columns: 1fr 1fr; }

  .shows-strip__inner { flex-wrap: nowrap; }
}

/* ===== DESKTOP (992px+) ===== */
@media (min-width: 992px) {
  .hero__title { font-size: 96px; }
  .video-grid--3col { grid-template-columns: repeat(3, 1fr); }
  .masonry-grid { columns: 3; }
  .footer__inner { grid-template-columns: 1fr 1fr 1fr; }
}

/* ===== WIDE (1200px+) ===== */
@media (min-width: 1200px) {
  .container { padding: 0 var(--spacing-lg); }
}

/* ===== MOBILE BASE (max 767px) ===== */
@media (max-width: 767px) {
  .navbar__links { display: none; }
  .navbar__cta.desktop-only { display: none; }
  .navbar__hamburger { display: flex; }

  .hero__title { font-size: 48px; letter-spacing: 4px; }
  .hero__buttons { flex-direction: column; align-items: center; }

  .section-heading h2 { font-size: 28px; }

  .video-grid--3col,
  .video-grid--2col { grid-template-columns: 1fr; }

  .masonry-grid { columns: 1; }

  .members-grid { grid-template-columns: repeat(2, 1fr); }

  .shows-strip__inner { flex-direction: column; align-items: flex-start; gap: var(--spacing-md); }
  .shows-strip__all { margin-right: 0; }

  .show-row { flex-direction: column; align-items: flex-start; gap: var(--spacing-xs); }
  .show-row__tickets { margin-right: 0; }

  .footer__inner { grid-template-columns: 1fr; gap: var(--spacing-md); }

  .not-found h1 { font-size: 80px; }
}

/* Touch target minimum (accessibility) */
button, a, input, select, textarea {
  min-height: 44px;
}
button, a { min-width: 44px; }
