@media (max-width: 960px) {
  nav { padding: 0 24px; }
  .nav-links { display: none; }

  /* Landing */
  .section-camino, .section-pilares, .section-cta { padding: 80px 24px; }
  .camino-inner { grid-template-columns: 1fr; gap: 48px; }
  .pilares-grid { grid-template-columns: 1fr; }

  /* Mapa */
  .mapa-hero { grid-template-columns: 1fr; padding: 110px 24px 60px; gap: 48px; }
  .hero-minimap { display: none; }
  .pasos-section { padding: 0 24px 80px; }
  .paso-bloque { grid-template-columns: 1fr; }
  .paso-sidebar { padding: 32px 28px; }
  .paso-big-num { font-size: 64px; }
  .paso-content { padding: 32px 28px; }
  .paso-conector { padding-left: 0; justify-content: center; }
  .mapa-cta-section { padding: 80px 24px; }
  .cta-box { flex-direction: column; text-align: center; }
  .cta-box-left { flex-direction: column; }

  /* Radiografía */
  .metricas-grid { grid-template-columns: 1fr; }
  .paso-highlight { padding: 0 20px; }
  .paso-highlight-card { grid-template-columns: 1fr; gap: 20px; padding: 40px 28px; text-align: center; }
  .paso-num-big { font-size: 72px; }
  .paso-highlight-name { font-size: 28px; }
  .email-input-wrap { flex-direction: column; }

  /* Footer */
  footer { padding: 48px 24px 32px; }
  .footer-top { flex-direction: column; }
  .footer-nav { grid-template-columns: repeat(2, auto); gap: 12px 32px; }
  .footer-bottom { flex-direction: column; gap: 10px; text-align: center; }

  /* Ecosistema */
  .eco-origen { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px; }
  .eco-que-es { padding: 60px 24px; }
  .eco-valores { grid-template-columns: 1fr; }

  /* Debt Free */
  .step-card { padding: 28px 24px; }
  .debt-row { grid-template-columns: auto 1fr auto; row-gap: 6px; column-gap: 12px; padding: 12px 14px; }
  .debt-row-balance { grid-column: 2 / 3; font-size: 17px; }
  .debt-row-delete { grid-column: 3 / 4; grid-row: 1 / 3; align-self: center; }
  .debt-add-form { padding: 18px; }
  .debt-add-actions { flex-direction: column-reverse; align-items: stretch; }
  .debt-add-actions .btn-next { margin-left: 0; justify-content: center; }
  .debt-add-actions .btn-back-step { align-self: center; }
  .debt-chart-wrap { padding: 18px 14px 14px; }
  .debt-metrics { grid-template-columns: 1fr; }
  .debt-timeline-item { grid-template-columns: auto 1fr; row-gap: 8px; }
  .debt-timeline-when { grid-column: 1 / 3; text-align: left; }
  .debt-timeline-when strong { display: inline; font-size: 16px; margin-right: 6px; }
  .debt-results-actions { flex-direction: column-reverse; align-items: stretch; gap: 12px; }
  .debt-results-actions .btn-next { margin-left: 0; justify-content: center; }

  /* Contact */
  .contact-card { padding: 40px 24px; }
  .contact-cta-row { flex-direction: column; align-items: stretch; gap: 12px; }
  .contact-cta-row .btn-next { margin-left: 0; justify-content: center; }
  .contact-copy-btn { justify-content: center; }
}
