/* Estilos responsivos para a landing page */

/* Tablets e dispositivos médios (≥768px) */
@media (min-width: 768px) {
  /* Tipografia */
  h1 {
    font-size: 3rem;
  }
  
  h2 {
    font-size: 2.5rem;
  }
  
  /* Layout */
  .hero-content {
    flex: 0 0 60%;
    margin-bottom: 0;
  }
  
  .hero-form {
    flex: 0 0 40%;
  }
  
  /* Seção Sobre */
  .about-image {
    flex: 0 0 45%;
    max-width: 45%;
    margin-bottom: 0;
  }
  
  .about-text {
    flex: 0 0 55%;
    max-width: 55%;
    padding-left: 2rem;
  }
  
  /* Benefícios */
  .benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  
  /* Como Funciona */
  .steps-container {
    grid-template-columns: repeat(2, 1fr);
  }
  
  /* Formulário */
  .form-group {
    flex: 0 0 50%;
  }
  
  /* Footer */
  .footer-content {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Desktops e dispositivos grandes (≥992px) */
@media (min-width: 992px) {
  /* Layout */
  .container {
    padding: 0 30px;
  }
  
  /* Benefícios */
  .benefits-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  
  /* Como Funciona */
  .steps-container {
    grid-template-columns: repeat(4, 1fr);
  }
  
  /* Footer */
  .footer-content {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* Mobile e dispositivos pequenos (<768px) */
@media (max-width: 767px) {
  /* Header */
  .mobile-menu-toggle {
    display: block;
  }
  
  .nav-links {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: var(--background-color);
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem;
    box-shadow: var(--shadow);
    transform: translateY(-10px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
  }
  
  .nav-links.active {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  
  .nav-links li {
    margin: 0.5rem 0;
    width: 100%;
  }
  
  .nav-links a {
    display: block;
    padding: 0.5rem 0;
  }
  
  /* Hero */
  .hero {
    padding: 7rem 0 3rem;
  }
  
  .hero-buttons {
    flex-direction: column;
  }
  
  .hero-buttons .btn {
    width: 100%;
    margin-bottom: 1rem;
  }
  
  /* Seções */
  section {
    padding: 3rem 0;
  }
  
  /* Formulários */
  .form-row {
    flex-direction: column;
  }
  
  /* Depoimentos */
  .testimonial-card {
    padding: 1.5rem;
  }
  
  /* FAQ */
  .faq-question h3 {
    font-size: 1rem;
  }
}

/* Ajustes para dispositivos muito pequenos (<480px) */
@media (max-width: 479px) {
  /* Tipografia */
  h1 {
    font-size: 2rem;
  }
  
  h2 {
    font-size: 1.75rem;
  }
  
  /* Stats */
  .stats-container {
    grid-template-columns: 1fr;
  }
  
  /* Modal */
  .modal-dialog {
    width: 95%;
  }
}

/* Ajustes para dispositivos muito grandes (≥1200px) */
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}

/* Ajustes para impressão */
@media print {
  .header, 
  .footer, 
  .hero-form, 
  .contact, 
  .testimonials, 
  .faq {
    display: none;
  }
  
  body {
    font-size: 12pt;
    line-height: 1.5;
    color: #000;
    background-color: #fff;
  }
  
  a {
    text-decoration: underline;
    color: #000;
  }
  
  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
    page-break-inside: avoid;
  }
  
  img {
    max-width: 100% !important;
    page-break-inside: avoid;
  }
  
  .container {
    width: 100%;
    padding: 0;
    margin: 0;
  }
}
