/* ════════════════════════════════════════════════════════
   RESPONSIVE — 5 Breakpoints adaptativos
   Orden: Desktop XL → Tablet Landscape → Tablet → Mobile → Mobile S
════════════════════════════════════════════════════════ */

/* ── Desktop XL (≤ 1280px) ──────────────────────────── */

@media (max-width: 1280px) {
  .hero-layout           { gap: 2.5rem; }
  .footer-top            { gap: 2rem; }
}

/* ── Tablet landscape (≤ 1024px) ────────────────────── */

@media (max-width: 1024px) {
  /* Nav → hamburger */
  .nav-links             { display: none; }
  .nav-right .btn-ghost-nav { display: none; }
  .nav-right .btn-cta-nav   { display: none; }
  .hamburger             { display: flex; }

  /* Hero */
  .hero-layout           { grid-template-columns: 1fr; }
  .mockup-wrap           { display: none; }

  /* Grids */
  .pilares-grid          { grid-template-columns: repeat(2, 1fr); }
  .pricing-grid          { grid-template-columns: repeat(2, 1fr); }
  .more-lines            { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
  .pricing-grid > .price-card:last-child:nth-child(odd) { grid-column: 1 / -1; max-width: calc(50% - 1rem); margin: 0 auto; }
  .price-card.feat       { transform: none; }
  .price-card.feat:hover { transform: translateY(-5px); }
  .faq-grid              { grid-template-columns: 1fr; }
  .demo-grid             { grid-template-columns: 1fr; gap: 3rem; }
  .specs-4               { grid-template-columns: repeat(2, 1fr); }
  .footer-top            { grid-template-columns: 1fr 1fr; }

  /* Table */
  table                  { font-size: .78rem; }
  .scroll-hint           { display: block; }
}

/* ── Tablet portrait (≤ 768px) ──────────────────────── */

@media (max-width: 768px) {
  section                { padding: 4.5rem 5vw; }
  .prob-grid             { grid-template-columns: 1fr; }
  .launch-banner         { flex-direction: column; text-align: center; }
  .lb-counter            { margin-left: 0; }
  .lb-headline-row       { justify-content: center; }
  .lb-pills              { justify-content: center; }
  .lb-right              { width: 100%; }
  .lb-ver-planes         { display: block; text-align: center; }
  .lb-ea-tag             { align-self: auto; }

  /* ERP Promo */
  .erp-promo-body        { flex-direction: column; text-align: center; gap: 1.5rem; padding: 1.5rem; }
  .erp-promo-desc        { max-width: none; }
  .erp-promo-price-row   { justify-content: center; }
  .erp-promo-highlights  { justify-content: center; }
  .erp-promo-right       { width: 100%; }
  .hero-stats            { gap: 2rem; }
  .demo-grid             { gap: 2.5rem; }
  .footer-top            { grid-template-columns: 1fr; gap: 2rem; }

  /* Tabs horizontal scroll */
  .tabs-row {
    flex-wrap: nowrap; overflow-x: auto;
    scrollbar-width: none;
    padding-bottom: .5rem;
  }
  .tabs-row::-webkit-scrollbar { display: none; }
  .tab { flex-shrink: 0; }
}

/* ── Mobile (≤ 640px) ───────────────────────────────── */

@media (max-width: 640px) {
  section                { padding: 3.5rem 4vw; }
  h2                     { font-size: clamp(1.6rem, 5.5vw, 2.2rem); }
  .prob-grid             { grid-template-columns: 1fr; }
  .pilares-grid          { grid-template-columns: 1fr; }
  .form-row              { grid-template-columns: 1fr; }
  .footer-top            { grid-template-columns: 1fr; }
  .specs-4               { grid-template-columns: 1fr; }

  /* Hero stats 2x2 */
  .hero-stats            { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
  .hero-btns             { flex-direction: column; }
  .hero-btns a           { width: 100%; justify-content: center; text-align: center; }
  .launch-strip          { font-size: .78rem; }

  /* Pricing: stack to 1 column on mobile */
  .pricing-grid          { grid-template-columns: 1fr; max-width: 480px; margin: 0 auto; }
  .pricing-grid > .price-card:last-child:nth-child(odd) { grid-column: auto; max-width: none; margin: 0; }
  .feat-ribbon           { font-size: .6rem; padding: .22rem .8rem; }
  .erp-promo-body        { padding: 1.2rem; gap: 1.2rem; }
  .erp-promo-title       { font-size: 1.15rem; }
  .erp-promo-highlights  { flex-direction: column; gap: .3rem; align-items: center; }
  .more-lines            { grid-template-columns: 1fr; max-width: 400px; }
  .more-line-card        { padding: .7rem .9rem; }

  /* Table scroll */
  .comp-wrap             { overflow-x: auto; }
  table                  { min-width: 600px; }

  /* Stack grid */
  .stack-grid            { grid-template-columns: 1fr 1fr; }

  /* PACAY branding */
  .pacay-acronym         { padding: 1.4rem 1.2rem; }
  .pa-letter             { font-size: 1.4rem; min-width: 1.7rem; }
  .pacay-cierre          { padding: .85rem 1.2rem; margin-top: 1.8rem; }
  .hero-tagline          { font-size: .87rem; }
}

/* ── Mobile S (≤ 380px) ─────────────────────────────── */

@media (max-width: 380px) {
  section                { padding: 3rem 3.5vw; }
  h1                     { font-size: 2rem; letter-spacing: -1px; }
  h2                     { font-size: 1.5rem; }
  .section-sub           { font-size: .88rem; }
  .hero-desc             { font-size: .92rem; }
  nav                    { padding: .7rem 3.5vw; }
  .nav-name              { font-size: .9rem; }

  .pilar                 { padding: 1.5rem 1.2rem; }
  .price-card            { padding: 1.5rem 1.2rem; }
  .form-card             { padding: 1.5rem; }

  .hero-stats            { gap: .8rem; }
  .stat-n                { font-size: 1.6rem; }
  .stack-grid            { grid-template-columns: 1fr; }
}
