@media (max-width: 980px) {
  .final-cta {
    grid-template-columns: 1fr;
  }

  .final-cta-actions {
    width: 100%;
    min-width: 0;
  }

  .site-footer-content {
    flex-direction: column;
    align-items: flex-start;
  }

  .site-footer-tags {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .final-cta {
    padding: 22px;
    border-radius: 24px;
  }

  .final-points {
    gap: 8px;
  }

  .final-points span,
  .site-footer-tags span {
    font-size: 12px;
  }
}

/* Cabeçalho desktop em uma única linha */
@media (min-width: 981px) {
  .topbar .nav {
    width: min(1320px, calc(100% - 32px));
    flex-wrap: nowrap;
  }

  .brand {
    flex: 0 1 auto;
  }

  .nav-links {
    flex: 0 0 auto;
    flex-wrap: nowrap;
    gap: clamp(4px, 0.7vw, 10px);
  }

  .nav-links a {
    flex: 0 0 auto;
    white-space: nowrap;
    padding-inline: clamp(8px, 0.8vw, 12px);
  }
}

/* Compactação progressiva para notebooks e telas intermediárias */
@media (min-width: 981px) and (max-width: 1240px) {
  .topbar .nav {
    gap: 12px;
  }

  .brand {
    gap: 10px;
  }

  .logo-shell {
    width: 128px;
    height: 44px;
    padding: 7px 12px;
  }

  .brand-copy strong {
    font-size: 12px;
    letter-spacing: 0.035em;
  }

  .brand-copy span {
    display: none;
  }

  .nav-links {
    gap: 3px;
  }

  .nav-links a {
    padding: 9px 8px;
    font-size: 12px;
  }
}
