/* ============================================================
   Responsive overrides
   ============================================================ */

@media (max-width: 768px) {
  .hero h1 { font-size: 56px; }
  section { padding: 48px 0; }
  .booking-card { padding: 22px; }
  .header-actions .btn-pill-outline { display: none; }
  .countdown-strip .row { justify-content: center; }
  .countdown-link { display: none; }
  .stats { gap: 14px 28px; }
  .stat .n { font-size: 26px; }
  .actions { justify-content: stretch; }
  .actions .btn { flex: 1; justify-content: center; }
  .review-block .grid2 { grid-template-columns: 1fr; }
  .review-block .grid2 dd { text-align: left; color: var(--ink-2); }
  .city-grid { grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); max-height: 360px; }
  .coupon-row { flex-direction: column; }
  .summary-row { font-size: 13px; }
  .site-header .row { padding: 10px 0; }
  .admin-wrap { padding: 32px 0; }
  table.tbl th, table.tbl td { white-space: nowrap; }
}

@media (max-width: 480px) {
  .container { padding: 0 16px; }
  .brand-sub, .brand-sep { display: none; }
  .brand-name { font-size: 12px; }
  .btn-whatsapp { padding: 8px 12px; letter-spacing: .08em; }
  .seat-counter { gap: 12px; }
  .counter-btn { width: 40px; height: 40px; }
  .seat-value { font-size: 28px; min-width: 64px; }
  .pass-card { padding: 22px; }
  .pass-card .price { font-size: 44px; }
  .thanks-wrap h1 { font-size: 30px; }
  .receipt .head { flex-direction: column; gap: 12px; }
  .step { width: 100%; justify-content: center; }
}

@media (min-width: 768px) and (max-width: 1024px) {
  .hero .grid { gap: 32px; }
  .hero h1 { font-size: 64px; }
}
