/* ==========================================================================
   responsive.css — Breakpoints tablet e mobile
   ========================================================================== */

/* ===== TABLET (≤ 1024px) ===== */
@media (max-width: 1024px) {

  /* Navbar */
  .nav__logo { height: 96px; }
  .nav.is-scrolled .nav__logo { height: 64px; }
  .nav__menu { gap: 24px; }
  .nav__menu a { font-size: 12px; }

  /* Hero */
  .hero { padding: 200px 0 100px; }
  .hero__content { max-width: 100%; }
  .hero__sub { margin-bottom: 32px; }

  /* Pilares: 2 colunas */
  .pilares__grid { grid-template-columns: repeat(2, 1fr); }
  .pilar {
    border-right: 1px solid rgba(255,255,255,0.06);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    padding: 44px 28px;
  }
  .pilar:nth-child(2) { border-right: 0; }
  .pilar:nth-child(3), .pilar:nth-child(4) { border-bottom: 0; }
  .pilar:nth-child(4) { border-right: 0; }

  /* Legado: 2 colunas */
  .legado__grid { column-count: 2; column-gap: 20px; }
  .legado__item { margin-bottom: 20px; }

  /* Depoimentos: 1 coluna em tablet */
  .depoimentos__grid { grid-template-columns: 1fr; gap: 20px; }
  .depoimentos { margin-top: 72px; padding-top: 56px; }

  /* Manifesto vídeo */
  .manifesto--video { min-height: 90vh; padding: 120px 0; }
  .manifesto__headline { font-size: clamp(30px, 6vw, 52px); }

  /* Teasers: 1 coluna */
  .teasers__list { grid-template-columns: 1fr; gap: 20px; }
  .teaser { padding: 44px 32px; }

  /* Footer */
  .footer__inner {
    grid-template-columns: 1fr;
    gap: 32px;
    text-align: center;
  }
  .footer__brand { justify-content: center; }
  .footer__meta { text-align: center; }
}

/* ===== MOBILE GRANDE (≤ 768px) ===== */
@media (max-width: 768px) {

  :root {
    --gutter: 20px;
    --section-py: 72px;
  }

  /* Navbar: esconder menu central + lang + CTA; mostrar hamburger */
  .nav { padding: 14px 0; }
  .nav.is-scrolled { padding: 10px 0; }
  .nav__inner {
    grid-template-columns: auto 1fr auto;
    gap: 12px;
  }
  .nav__menu { display: none; }
  .nav__logo { height: 72px; }
  .nav.is-scrolled .nav__logo { height: 52px; }
  .nav__right { display: none; }
  .nav__toggle { display: inline-flex; justify-self: end; }

  /* Hero */
  .hero { padding: 160px 0 80px; min-height: auto; }
  .hero__image { background-position: center 35%; }
  .hero__veil {
    background:
      linear-gradient(
        to bottom,
        rgba(11,11,11,0.85) 0%,
        rgba(11,11,11,0.75) 35%,
        rgba(11,11,11,0.85) 100%
      ),
      radial-gradient(ellipse 80% 40% at 80% 15%, rgba(206,151,15,0.08) 0%, transparent 60%);
  }
  .hero__title { margin: 20px 0; max-width: none; }
  .hero__sub { font-size: 15px; margin-bottom: 18px; line-height: 1.65; }
  .hero__sub:last-of-type { margin-bottom: 32px; }
  .hero__sub--accent { font-size: 17px; }
  .hero__dates {
    font-size: 28px;
    gap: 8px;
    flex-wrap: wrap;
  }
  .hero__date-month { margin: 0 4px; font-size: 11px; }
  .hero__destino { font-size: 11px; margin-bottom: 40px; }
  .hero__ctas { gap: 20px; }

  /* Manifesto */
  .manifesto--video { min-height: auto; padding: 96px 0; }
  .manifesto__headline { font-size: clamp(28px, 7.5vw, 42px); margin-bottom: 32px; }
  .manifesto__body { font-size: 15px; line-height: 1.7; }
  .manifesto__lines { font-size: 19px; margin: 32px auto 16px; }
  .manifesto__closing { font-size: 13px; letter-spacing: 0.14em; }

  /* Depoimentos mobile */
  .depoimentos { margin-top: 56px; padding-top: 40px; }
  .depoimento { padding: 32px 24px; }
  .depoimento__text { font-size: 16px; }

  /* Pilares: 1 coluna */
  .pilares__grid { grid-template-columns: 1fr; }
  .pilar {
    border-right: 0;
    padding: 36px 0;
  }
  .pilar:nth-child(n) {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
  }
  .pilar:last-child { border-bottom: 0; }
  .pilar__num { font-size: 36px; margin-bottom: 16px; }

  /* Legado: 1 coluna */
  .legado__grid { column-count: 1; }
  .legado__title { margin-bottom: 48px; }

  /* Teasers */
  .teaser { padding: 36px 24px; }
  .teaser__title { font-size: 36px; }
  .teaser--destino { padding: 0; }
  .teaser--destino .teaser__content { padding: 32px 24px 40px; }

  /* Exclusividade */
  .exclusividade__title { font-size: clamp(36px, 8vw, 56px); }
  .etapa {
    grid-template-columns: 40px 1fr;
    gap: 20px;
    padding: 22px 0;
  }
  .etapa__status {
    grid-column: 2 / -1;
    justify-self: start;
    margin-top: 10px;
  }
  .etapa__num { font-size: 22px; }

  /* Form: 1 coluna */
  .form__row { grid-template-columns: 1fr; gap: 0; }
  .form__row .form__field + .form__field { margin-top: 24px; }
  .waitlist__card { padding: 32px 24px; }
  .waitlist__title { font-size: 32px; }

  /* FAQ */
  .faq__q { font-size: 18px; padding: 22px 0; }

  /* Footer */
  .footer__links { flex-direction: row; gap: 16px; justify-content: center; }

  /* Lightbox */
  .lightbox__close, .lightbox__prev, .lightbox__next {
    width: 44px; height: 44px; font-size: 28px;
  }
  .lightbox__close { top: 16px; right: 16px; }
  .lightbox__prev { left: 12px; }
  .lightbox__next { right: 12px; }
}

/* ===== MOBILE PEQUENO (≤ 480px) ===== */
@media (max-width: 480px) {
  .hero__title { font-size: 42px; }
  .hero__dates { font-size: 24px; }
  .manifesto__headline { font-size: clamp(26px, 8vw, 36px); }
  .manifesto__body { font-size: 14px; }
  .manifesto__lines { font-size: 17px; }
  .teaser__title { font-size: 30px; }
  .waitlist__card { padding: 28px 20px; }
  .btn { --btn-pad-x: 22px; font-size: 11px; }
}

/* ===== WIDESCREEN (≥ 1600px) ajustes finos ===== */
@media (min-width: 1600px) {
  :root { --max-w: 1440px; }
}
