/* Correções gerais de responsividade */
@media (max-width: 991px) {
  .container {
    padding: 0 20px;
  }

  h1 {
    font-size: 2.2rem;
  }

  h2 {
    font-size: 1.8rem;
  }

  .section {
    padding: 60px 0;
  }
}

@media (max-width: 768px) {
  /* Ajustes para o hero */
  .hero {
    min-height: auto;
    padding-top: 120px;
    padding-bottom: 60px;
  }

  .hero-content {
    flex-direction: column;
    gap: 40px;
  }

  .hero-text-content {
    order: 1;
    text-align: center;
  }

  .hero-img-container {
    order: 2;
    max-width: 100%;
    margin: 0 auto;
  }

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

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

  /* Ajustes para outras seções */
  .steps-container,
  .services-grid,
  .differentials-grid,
  .results-cards {
    grid-template-columns: 1fr;
  }

  .about-content {
    grid-template-columns: 1fr;
  }

  .about-text {
    margin-left: 0;
    padding-left: 0;
  }

  .about-img {
    margin: 0 auto;
    max-width: 80%;
  }

  /* Ajustes para o portfólio */
  .portfolio-gallery {
    height: 400px;
  }

  /* Ajustes para visualização de dados */
  .data-viz-container {
    padding: 20px;
  }

  .data-chart {
    height: 300px;
  }
}

@media (max-width: 576px) {
  h1 {
    font-size: 1.8rem;
  }

  h2 {
    font-size: 1.5rem;
  }

  .hero-stat {
    min-width: 100px;
    padding: 10px;
  }

  .hero-stat-number {
    font-size: 1.5rem;
  }

  .hero-stat-text {
    font-size: 0.75rem;
  }

  .btn-primary,
  .btn-secondary {
    padding: 12px 25px;
    font-size: 0.9rem;
  }

  .portfolio-gallery {
    height: 300px;
  }

  .portfolio-controls {
    flex-direction: column;
    gap: 15px;
  }

  .portfolio-nav-btn {
    width: 40px;
    height: 40px;
  }

  .data-chart {
    height: 250px;
  }
}
