/*
  Regras responsivas iniciais do header.
  Mantem navegacao horizontal em desktop e prepara comportamento mobile.
*/

@media (max-width: 960px) {
  .brand {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: 0.9rem;
  }

  .header-container {
    position: relative;
  }

  .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
    padding: 0;
  }

  .menu-toggle span {
    margin: 0;
  }

  .main-navigation {
    display: none;
  }

  .main-navigation.is-open {
    display: block;
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 0;
    right: 0;
    z-index: 1100;
    padding: 0.55rem;
    border-radius: 14px;
    background: rgba(6, 18, 26, 0.92);
    border: 1px solid rgba(217, 242, 238, 0.18);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 14px 30px rgba(6, 14, 25, 0.35);
  }

  .main-navigation.is-open .nav-list {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 0.15rem;
  }

  .main-navigation.is-open .nav-list a {
    width: 100%;
    padding: 0.72rem 0.8rem;
    border-radius: 9px;
  }

  .site-header .btn-primary {
    display: none;
  }

  .cards-grid {
    grid-template-columns: 1fr;
  }

  .partners-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-grid {
    grid-template-columns: 1fr;
  }

  .about-section,
  .services-section-backup,
  .licensing-section,
  .outsourcing-section,
  .security-section,
  .partners-section,
  .contact-section {
    padding: 3.2rem 0;
  }

  .about-section p,
  .services-section-backup p,
  .licensing-section p,
  .outsourcing-section p,
  .security-section p,
  .partners-section p,
  .contact-section p {
    font-size: 17px;
    line-height: 1.58;
    margin-bottom: 1rem;
  }

  .market-carousel-section {
    height: auto;
    min-height: 720px;
    padding: 2.8rem 0 3.2rem;
  }

  .market-carousel-section__header {
    margin-top: 2.2rem;
  }

  .market-carousel {
    margin-top: 2.3rem;
  }

  .hero-brands-bar__inner {
    width: min(97vw, 100%);
    padding: 0.5rem 0.45rem;
  }

  .hero-brands-bar {
    height: auto;
    min-height: 84px;
  }

  .hero-brands-bar__marquee {
    width: 100%;
  }

  .hero-brands-bar__list {
    justify-content: center;
    gap: 1rem;
  }

  .hero-brands-bar__item {
    min-height: 38px;
    padding: 0.15rem 0.25rem;
  }

  .hero-brands-bar__item img {
    height: clamp(28px, 5.4vw, 38px);
    max-width: 180px;
  }
}

@media (max-width: 1024px) {
  .site-header.is-scrolled .nav-list a {
    color: #ffffff;
    text-shadow: 0 1px 10px rgba(3, 10, 14, 0.46);
  }

  .site-header[aria-label="Cabeçalho da Política de Privacidade"] .nav-list a {
    color: #314a65 !important;
    text-shadow: none !important;
  }

  .site-header[aria-label="Cabeçalho da Política de Privacidade"] .nav-list a:hover,
  .site-header[aria-label="Cabeçalho da Política de Privacidade"] .nav-list a:focus-visible {
    color: #3f5f84 !important;
  }
}

@media (max-width: 760px) {
  .about-section p,
  .services-section-backup p,
  .licensing-section p,
  .outsourcing-section p,
  .security-section p,
  .partners-section p,
  .contact-section p {
    font-size: 16px;
    line-height: 1.52;
  }

  .market-carousel-section {
    min-height: 620px;
    padding: 2.5rem 0 2.8rem;
  }

  .market-carousel-section__header {
    margin-top: 1.7rem;
  }

  .market-carousel-section__kicker {
    font-size: clamp(1.3rem, 6.2vw, 1.9rem);
    letter-spacing: 0.05em;
  }

  .market-carousel {
    margin-top: 1.6rem;
  }

  .hero-brands-bar {
    min-height: 74px;
  }
}
