/* Responsive adjustments; preserve the original desktop design. */
html { -webkit-text-size-adjust: 100%; }
main .container > *, main .container-narrow > *, main .quem__grid > *, main .faq__grid > *, main .missoes__grid > * { min-width: 0; }
main .video-destaque__content > [data-reveal] { width: 100%; max-width: 960px; }
main .video-destaque__player, main .depoimentos__player { isolation: isolate; }
main .hero { height: auto; min-height: 100vh; min-height: 100svh; padding-top: 110px; }
main .hero__content { min-width: 0; }
main .hero__title { white-space: normal; overflow-wrap: break-word; }
main .jornada { height: auto; min-height: 100vh; min-height: 100svh; padding-block: 4rem; }
main .faq__pergunta { min-height: 48px; }
main .btn { max-width: 100%; min-height: 48px; text-align: center; white-space: normal; }
main .depoimentos__trilho { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.consent-banner .consent-banner__text { min-width: 0; overflow-wrap: anywhere; }
.whatsapp-fab { margin-right: env(safe-area-inset-right, 0px); margin-bottom: env(safe-area-inset-bottom, 0px); }
.consent-banner { padding-bottom: max(1rem, env(safe-area-inset-bottom, 0px)); max-height: 65svh; overflow-y: auto; }
body:has(.consent-banner:not([hidden])) .whatsapp-fab { visibility: hidden; }
@media (max-width: 1024px) {
  main .stack-card { height: auto; position: relative; top: auto; transform: none; }
  main .stack-card__media { position: static; aspect-ratio: 16 / 9; }
  main .stack-card__texto { position: static; width: 100%; padding: 2rem; text-align: center; align-items: center; }
  main .sinta__card { position: static; width: 100%; padding: 2rem; border-radius: 0; transform: none; background: #faf3e5d9; }
  main .quem__grid, main .faq__grid { gap: 2rem; }
  main .missoes__grid { gap: 1.5rem; }
  main .missoes__overlay { padding: 1.5rem; }
}
@media (max-width: 900px) {
  main .depoimentos__trilho { grid-template-columns: none; grid-auto-columns: min(68vw, 280px); gap: 1rem; overscroll-behavior-x: contain; scroll-padding-inline: .25rem; padding: .25rem .25rem 1rem; }
}
@media (max-width: 768px) {
  :root { --space-xl: 3.5rem; --space-lg: 2.5rem; }
  main .jornada { min-height: 0; padding-top: 0; padding-bottom: 3.5rem; gap: 1.5rem; }
  main .jornada__bg { height: auto; }
  main .quem__grid, main .faq__grid, main .missoes__grid { grid-template-columns: minmax(0, 1fr); }
  main .missoes__card { min-height: 520px; }
  main .missoes__overlay { min-height: 520px; }
  main .hero { padding-bottom: 4rem; }
  main .hero__subtitle { max-width: 40rem; }
}
@media (max-width: 480px) {
  .container, .container-narrow { padding-inline: 1rem; }
  main h2 { font-size: clamp(1.5rem, 7vw, 1.9rem); letter-spacing: .035em; overflow-wrap: break-word; }
  main .hero { padding-top: 100px; padding-bottom: 3.75rem; }
  main .hero__title { font-size: clamp(1.8rem, 8.2vw, 2.4rem); letter-spacing: .025em; margin-bottom: 1rem; }
  main .hero__subtitle { font-size: .9375rem; line-height: 1.65; }
  main .hero__aviso { font-size: .8125rem; }
  main .hero__selo { width: 72px; height: 72px; }
  main .stack-card__texto, main .jornada .jornada__card, main .sinta__card { padding: 1.5rem 1.125rem; }
  main .btn { padding: 1rem 1.5rem; }
  main .btn.btn--glow { padding: 1rem 1.5rem; font-size: 1rem; }
  main .missoes__card, main .missoes__overlay { min-height: 480px; }
  main .missoes__overlay { padding: 1.25rem; }
  main .faq__pergunta { font-size: .9375rem; gap: .75rem; }
  .site-footer { padding-inline: 1rem; }
  .consent-banner .consent-banner__inner { gap: .75rem; }
  .consent-banner .consent-banner__text { flex-basis: 100%; font-size: .8125rem; }
  .consent-banner .consent-banner__actions, .consent-banner .consent-banner__btn { width: 100%; }
  .consent-banner .consent-banner__btn { min-height: 44px; }
  .whatsapp-fab { right: 1rem; bottom: 1rem; width: 52px; height: 52px; }
}
@media (min-width: 1025px) and (max-height: 740px) {
  main .stack-card { position: relative; top: auto; height: auto; min-height: 550px; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  main .depoimentos__trilho { scroll-snap-type: none; }
}