@media (max-width: 768px) {
  header {
    padding: 1rem;
    flex-wrap: wrap;
    gap: 12px;
  }

  header h1 {
    font-size: 1.3rem;
  }

  nav ul {
    flex-wrap: wrap;
    gap: 12px;
  }

  nav ul li {
    margin-left: 0;
  }

  .hero {
    min-height: 70vh;
  }

  .hero h2 {
    font-size: 2rem;
  }

  .hero p {
    font-size: 1rem;
  }

  .menu,
  .cart-page,
  .order {
    padding: 3rem 1rem;
  }

  .menu-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
}

@media (max-width: 480px) {
  header {
    flex-direction: column;
    text-align: center;
  }

  nav ul {
    justify-content: center;
  }

  .hero {
    min-height: 60vh;
  }

  .hero-content {
    padding: 1.5rem 1rem;
  }

  .hero h2 {
    font-size: 1.7rem;
  }

  .tabs {
    gap: 0.5rem;
  }

  .tab {
    padding: 0.5rem 0.9rem;
  }

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

  .card img {
    height: 200px;
  }

  .cart {
    bottom: 12px;
    right: 12px;
  }

  footer {
    padding: 20px 12px;
    font-size: 13px;
  }

  .toast {
    bottom: 20px;
    font-size: 14px;
  }
}
