/* ============================================= */
/* RESPONSIVO - Adaptação para celular e tablet   */
/* ============================================= */
/* Ajustes de layout para telas menores            */
/* Os breakpoints (tamanhos de tela) são:          */
/* 1024px = Tablet grande                          */
/* 900px  = Tablet / Menu mobile                   */
/* 768px  = Tablet pequeno                         */
/* 600px  = Celular grande                         */
/* 480px  = Celular pequeno                        */
/* ============================================= */

/* --- TABLET GRANDE (até 1024px) --- */
@media (max-width: 1024px) {
  /* Serviços: de 4 para 2 colunas */
  .servicos-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Parceiros: de 4 para 2 colunas */
  .parceiros-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Diferenciais: de 4 para 2 colunas */
  .dif-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Atendimento: de 4 para 2 colunas */
  .atend-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* --- TABLET / MENU MOBILE (até 900px) --- */
@media (max-width: 900px) {
  /* Mostra o botão hambúrguer */
  .mobile-toggle {
    display: flex;
  }

  /* Menu de navegação vira tela cheia */
  .navbar-links {
    position: fixed;
    inset: 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 16px;
    background: rgba(17, 17, 17, 0.97);
    backdrop-filter: blur(30px);
    transform: translateX(100%);      /* Escondido à direita */
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Menu aberto */
  .navbar-links.aberto {
    transform: translateX(0);          /* Visível */
  }

  /* Links maiores no menu mobile */
  .nav-link {
    font-size: 1.1rem;
    padding: 12px 24px;
  }

  .nav-cta {
    margin-left: 0;
    margin-top: 10px;
    padding: 14px 36px;
    font-size: 1rem;
  }

  /* Hero: coluna única no tablet */
  .hero-conteudo {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .hero-texto {
    align-items: center;
  }

  .hero-subtitulo {
    max-width: 100%;
  }

  .hero-botoes {
    justify-content: center;
  }

  .hero-estatisticas {
    justify-content: center;
  }

  /* Esconde o visual orbital no tablet */
  .hero-visual {
    display: none;
  }

  /* Sobre: coluna única */
  .sobre-grid {
    grid-template-columns: 1fr;
  }

  /* Programas: coluna única */
  .programas-grid {
    grid-template-columns: 1fr;
  }

  /* Contato: coluna única */
  .contato-grid {
    grid-template-columns: 1fr;
  }

  /* Depoimentos: 2 colunas */
  .depoimentos-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Rodapé: 2 colunas */
  .rodape-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* --- CELULAR GRANDE (até 600px) --- */
@media (max-width: 600px) {
  /* Reduz o padding das seções */
  .secao-padding {
    padding: 70px 0;
  }

  /* Título menor */
  .secao-titulo {
    font-size: 1.8rem;
  }

  /* Hero: título menor */
  .hero-titulo {
    font-size: 2.2rem;
  }

  /* Tudo vira coluna única */
  .servicos-grid,
  .parceiros-grid,
  .dif-grid,
  .atend-grid,
  .galeria-grid,
  .depoimentos-grid {
    grid-template-columns: 1fr;
  }

  /* Estatísticas empilham */
  .hero-estatisticas {
    flex-direction: column;
    gap: 16px;
  }

  .stat-divisor {
    width: 40px;
    height: 1px;
  }

  /* Botões empilham */
  .hero-botoes {
    flex-direction: column;
    width: 100%;
  }

  .hero-botoes a {
    width: 100%;
    justify-content: center;
  }

  /* Campos do formulário empilham */
  .form-linha {
    flex-direction: column;
    gap: 0;
  }

  /* Rodapé: coluna única */
  .rodape-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

/* --- CELULAR PEQUENO (até 480px) --- */
@media (max-width: 480px) {
  .hero-titulo {
    font-size: 1.8rem;
  }

  .container {
    padding: 0 16px;
  }
}
