/* ══ RESPONSIVE MODULE ════════════════ */
@media (max-width: 1024px) {
  .ex-list { grid-template-columns: repeat(2,1fr); }
  .ex-item:nth-child(3n) { border-right: 1px solid rgba(255,255,255,.12); }
  .ex-item:nth-child(2n) { border-right: none; }
  .gal { grid-template-columns: repeat(3,1fr); }
  .ves-layout { grid-template-columns: 1fr; }
  .ves-text { padding: 72px var(--pad); }
  .ves-strips { min-height: 420px; }
}

@media (max-width: 768px) {
  :root { --pad: 24px; }
  #hdr .hdr-ghost { display: none; }

  /* Hero */
  .hero-h1 { font-size: 44px; }
  .hero-sub { font-size: 16px; }
  .hero-data { gap: 20px; flex-wrap: wrap; }

  /* Roteiro pinned — stack vertically on mobile */
  .rot-pin-outer { height: auto; }
  .rot-pin-inner { position: static; height: auto; }
  .rot-track { flex-direction: column; width: 100%; transform: none !important; }
  .rot-panel { width: 100%; height: 90vh; min-height: 500px; }
  .rot-panel-name { font-size: 48px; }
  .rot-content { padding: 0 var(--pad) 52px; }
  .rot-counter { top: 28px; right: var(--pad); }
  .rot-dots { display: none; }

  /* Grupo */
  #s-gp { grid-template-columns: 1fr; }
  .gp-mosaic { grid-template-columns: repeat(3,1fr); grid-template-rows: repeat(3,140px) 140px; }
  .m1 { grid-column: 1/3; grid-row: 1/3; }
  .m2 { grid-column: 3; grid-row: 1; }
  .m3 { grid-column: 3; grid-row: 2; }
  .m4 { grid-column: 1; grid-row: 3; }
  .m5 { grid-column: 2/4; grid-row: 3; }
  .m6, .m7, .m8, .m9 { display: none; }
  .gp-content { padding: 52px var(--pad); }
  .gp-h { font-size: 36px; }

  /* Exclusividades */
  .ex-list { grid-template-columns: 1fr; }
  .ex-item { border-right: none !important; }
  .ex-title { font-size: 36px; }

  /* Social */
  .test-grid { grid-template-columns: 1fr; }
  .gal { grid-template-columns: repeat(2,1fr); }
  .gi:first-child { grid-column: span 2; }

  /* FAQ */
  .faq-layout { grid-template-columns: 1fr; gap: 48px; }
  .faq-bg { background-attachment: scroll; }

  /* Form */
  .form-layout { grid-template-columns: 1fr; gap: 44px; }
  .form-h { font-size: 36px; }

  /* Footer */
  .ftr-top { flex-direction: column; gap: 32px; }
  .ftr-nav { gap: 28px; }
  .ftr-col { min-width: 120px; }
  .ftr-bottom { flex-direction: column; gap: 6px; text-align: center; }

  /* Data */
  .data-d { font-size: 72px; }
  .data-sep, .data-m { font-size: 46px; }
  .data-h { font-size: 26px; }
}

@media (max-width: 480px) {
  .hero-h1 { font-size: 36px; }
  .data-d { font-size: 52px; }
  .data-sep, .data-m { font-size: 34px; }
  .rot-panel-name { font-size: 38px; }
}

/* ── Exclusividades carrossel ───────── */
@media (max-width: 768px) {
  .ex-title { font-size: 32px; }
  .ex-card { flex: 0 0 240px; }
}

/* ── Para Você ──────────────────────── */
@media (max-width: 1024px) {
  .pv-layout { grid-template-columns: 1fr; gap: 48px; }
}
@media (max-width: 768px) {
  .pv-title { font-size: 30px; }
  .pv-bg { background-attachment: scroll; }
}

/* ── Depoimentos ────────────────────── */
@media (max-width: 1024px) {
  .dep-grid { grid-template-columns: 1fr 1fr; }
  .dep-card--feat { grid-column: span 2; min-height: 440px; }
}
@media (max-width: 768px) {
  .dep-h { font-size: 32px; }
  .dep-grid { grid-template-columns: 1fr; }
  .dep-card--feat { grid-column: span 1; min-height: 400px; }
  .dep-card { aspect-ratio: 4/5; }
}

/* ── Investimento ───────────────────── */
@media (max-width: 768px) {
  .inv-headline { font-size: 28px; }
  .inv-parcel-main { font-size: 44px; }
  .inv-includes { grid-template-columns: 1fr; }
  .inv-close-price { font-size: 28px; }
}
