/* ── RESPONSIVE ── */
@media (max-width: 680px) {
  .fg-2,
  .fg-3,
  .fg-city {
    grid-template-columns: 1fr;
  }

  .fg-3 {
    grid-template-columns: 1fr 1fr;
  }

  .form-card,
  .readme-panel {
    padding: 1.5rem 1.25rem;
  }

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

  .upsell-card.current {
    display: none;
  }
}

@media (max-width: 480px) {
  .stepper {
    padding: 1rem;
  }

  .step-label {
    font-size: 0.6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  #bg-canvas {
    display: none;
  }

  .form-card,
  .thankyou-card {
    animation: none;
  }
}
