/* ==========================================================
   RESPONSIVIDADE
========================================================== */

/* ---------------------------------------------------------
   NOTEBOOK — até 1280px
--------------------------------------------------------- */
@media (max-width: 1280px) {
  :root { --space-16: 96px; }
}

/* ---------------------------------------------------------
   TABLET — até 1024px
--------------------------------------------------------- */
@media (max-width: 1024px) {
  .container { padding-inline: var(--space-4); }

  .hero { min-height: auto; padding-block: 100px var(--space-8); }
  .hero__inner { grid-template-columns: 1fr; gap: var(--space-8); }
  .hero__visual { max-width: 280px; justify-self: center; order: -1; }
  .hero__content { max-width: 100%; text-align: left; }
  .hero__float { display: none; }
  .hero__photo-shape { transform: translate(12px, 12px); }

  .problema { padding-block: var(--space-8); }
  .problema__grid { grid-template-columns: 1fr; gap: var(--space-6); }
  .problema__card { max-width: 480px; }

  .mudanca__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .mudanca__visual { max-width: 300px; margin-inline: auto; order: -1; }
  .mudanca__content { max-width: 100%; order: 0; }

  .carol__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .carol__visual { max-width: 280px; margin-inline: auto; }
  .carol__content { max-width: 100%; }

  .resultado__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .resultado__visual { max-width: 300px; margin-inline: auto; }
  .resultado__content { max-width: 100%; }

  .funciona__cards { grid-template-columns: 1fr; gap: var(--space-4); }

  .testimonial-card { flex-basis: 300px; }

  .journey-card { flex-basis: 88%; }
  .rotina__flow { flex-direction: column; }
  .flow-arrow { display: none; }
  .acompanha__grid { grid-template-columns: repeat(2, 1fr); }

  .mockup__grid { grid-template-columns: 1fr; gap: var(--space-6); }
  .mockup__journey { border-right: none; border-bottom: 1px solid var(--gray-border); padding-right: 0; padding-bottom: var(--space-5); }
  .mockup__perks { grid-template-columns: 1fr; gap: var(--space-6); }

  .aulas__benefits { grid-template-columns: 1fr; gap: var(--space-5); }
  .aulas__plans { grid-template-columns: 1fr; }

  .cta-final__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .cta-final__visual { max-width: 280px; margin-inline: auto; }
}

/* ---------------------------------------------------------
   MOBILE — até 768px
--------------------------------------------------------- */
@media (max-width: 768px) {
  section { scroll-margin-top: 64px; }
  .navbar__cta { font-size: 0.75rem; padding: 6px 14px; }

  .hero { padding-block: 88px var(--space-8); }
  .hero__visual { max-width: 220px; }
  .hero__headline { font-size: clamp(1.75rem, 7vw, 2.25rem); }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { justify-content: center; }

  .conceito { padding-block: var(--space-10); }
  .problema { padding-block: var(--space-6); }
  .problema__card { padding: var(--space-4); max-width: 100%; }
  .problema__headline { font-size: 1.625rem; }

  .journeys { grid-template-columns: 1fr; gap: var(--space-10); }

  .mudanca { padding-block: var(--space-10); }
  .mudanca__visual { max-width: 240px; }
  .mudanca__headline { font-size: 1.625rem; }

  .resultado { padding-block: var(--space-10); }

  .funciona, .prova { padding-block: var(--space-10); }
  .testimonial-card { flex-basis: 280px; }
  .prova__arrow { display: none; }

  .estrutura, .rotina, .acompanha { padding-block: var(--space-10); }
  .journey-card { flex-basis: 92%; padding: var(--space-5); }
  .journey-nav__arrow { display: none; }
  .acompanha__grid { grid-template-columns: 1fr; }

  .mockup { padding-block: var(--space-10); }
  .mockup__card { padding: var(--space-5); }

  .oferta-final { padding-block: var(--space-10); }
  .oferta-final__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .oferta-final__inner-card { padding: var(--space-6); }

  .faq, .aulas { padding-block: var(--space-10); }
  .aulas__cta-wrap { justify-content: center; }

  .cta-final { padding-block: var(--space-10); }
  .cta-final__visual { max-width: 220px; }

}

/* ---------------------------------------------------------
   MOBILE PEQUENO — até 480px
--------------------------------------------------------- */
@media (max-width: 480px) {
  .btn { width: 100%; justify-content: center; }
  .aulas__cta-wrap .btn { width: auto; }
}

/* ---------------------------------------------------------
   DESKTOP-ONLY OVERRIDES
--------------------------------------------------------- */
@media (min-width: 1025px) {
  .aulas__label,
  .aulas__headline,
  .aulas__subheadline {
    text-align: left;
    margin-inline: 0;
  }
  .aulas__headline { max-width: 950px; }
  .aulas__benefits { margin-inline: 0; text-align: left; }
  .aulas__note { text-align: left; }
}

/* ---------------------------------------------------------
   FOOTER — MOBILE
--------------------------------------------------------- */
@media (max-width: 768px) {
  .footer { padding-block: var(--space-10); }
  .footer-bar__inner { flex-direction: column; gap: 6px; text-align: center; padding-block: var(--space-2); }
  .footer-bar { min-height: auto; padding-block: var(--space-3); }
  .legal-hero { padding-block: 100px var(--space-8); }
  .legal-content { padding-block: var(--space-8) var(--space-10); }
  .legal-section { padding-block: var(--space-6); }
}
