/* Ajustes finais para telas pequenas: leitura sem cortes e áreas de toque confortáveis. */
@media (max-width: 780px) {
  body { overflow-x: hidden; }

  .wrap { width: min(100% - 32px, 560px); }
  h1 { font-size: clamp(2.7rem, 13vw, 3.35rem); letter-spacing: -.065em; }
  h2 { font-size: clamp(2.15rem, 10vw, 2.8rem); }

  .header { position: relative; height: 70px; }
  .header nav { top: 62px; left: 0; right: 0; gap: 4px; padding: 12px; box-shadow: 0 18px 42px #000b; }
  .header nav a { min-height: 42px; display: flex; align-items: center; padding-inline: 10px; }
  .header nav .button { justify-content: center; }

  .hero { padding: 38px 0 58px; gap: 30px; }
  .lead { margin: 21px 0; font-size: 15px; }
  .actions { align-items: stretch; flex-direction: column; gap: 13px; }
  .actions .button, .actions .link { width: 100%; min-height: 49px; }
  .actions .link { justify-content: center; border: 1px solid #244968; border-radius: 10px; }
  .quiet { line-height: 1.8; }
  .hero-image { height: auto; min-height: 0; padding: 0; }
  .hero-image::before, .hero-image .badge { display: none; }
  .hero-image > img { position: relative; top: auto; right: auto; display: block; width: 100%; height: auto; transform: none; border-radius: 12px; }

  .problem, .features, .showcase, .telegram-section, .competitor-comparison, .testimonials, .plans, .plan-comparison, .roadmap, .faq, .cta { padding-block: 68px; }
  .pains { grid-template-columns: 1fr; gap: 10px; margin: 30px 0 43px; }
  .pains article { min-height: 0; padding: 16px; }
  blockquote { font-size: 1.35rem; }
  .section-text, .gallery-intro, .comparison-intro { font-size: 14px; }
  .feature-grid article { min-height: 0; padding: 21px; }

  .gallery-label { align-items: flex-start; }
  .gallery-label small { line-height: 1.45; }
  .screen-group { margin-top: 38px; }
  .desktop-gallery .screens { gap: 18px; }
  .desktop-gallery .screens figure { padding: 8px; }
  .desktop-gallery .screens figcaption { padding: 14px 5px 4px; }
  .desktop-gallery .screens figcaption b { font-size: 14px; }
  .desktop-gallery .screens figcaption span { font-size: 11px; line-height: 1.5; }
  .mobile-gallery { padding: 22px 10px; border-radius: 18px; }
  .mobile-devices .phone-frame, .telegram-captures figure { width: min(100%, 286px); }

  .telegram-copy ul { gap: 10px; margin: 24px 0; }
  .telegram-copy li { display: flex; align-items: center; min-height: 28px; line-height: 1.45; }
  .telegram-copy .button { width: 100%; }
  .telegram-captures { gap: 28px; }

  .comparison-table-wrap, .plan-table-wrap { position: relative; margin-top: 30px; border-radius: 13px; }
  .comparison-table-wrap::after, .plan-table-wrap::after { content: 'Deslize para comparar →'; position: sticky; left: 0; display: block; padding: 9px 14px; border-top: 1px solid #173957; background: #09182a; color: #72e7cd; font-size: 10px; font-weight: 700; }
  .comparison-table th, .comparison-table td, .plan-table th, .plan-table td { padding: 15px 16px; font-size: 11px; }
  .comparison-note { max-width: 280px; margin-inline: auto; line-height: 1.45; }

  .testimonials-heading { margin-bottom: 26px; }
  .rating-summary { max-width: 100%; }
  .testimonial-grid { gap: 14px; }
  .testimonial-grid article { padding: 22px; }
  .testimonial-grid blockquote { margin: 19px 0 24px; font-size: 15px; line-height: 1.6; }

  .plan-grid { gap: 14px; }
  .plan-grid article { padding: 24px; }
  .plan-grid .button { width: 100%; }

  .roadmap-heading > p { font-size: 13px; }
  .roadmap-grid article { padding: 22px; }
  .roadmap-grid h3 { font-size: 14px; }
  .roadmap-grid p { font-size: 12px; }

  .steps ol { grid-template-columns: 1fr; gap: 23px; margin-top: 34px; }
  .steps h3 { margin-top: 12px; }
  .faq h2 { margin-bottom: 28px; }
  .faq summary { gap: 18px; font-size: 13px; }
  .cta h2 { font-size: clamp(2.2rem, 10.5vw, 2.75rem); }
  .cta .button { width: 100%; }
  footer { gap: 14px; padding-block: 31px; }
}

@media (max-width: 390px) {
  .wrap { width: min(100% - 24px, 560px); }
  .brand-lockup { width: 96px; }
  .mobile-devices .phone-frame, .telegram-captures figure { width: 270px; }
  .comparison-table, .plan-table { min-width: 590px; }
}
