/* Responsividade */
@media (max-width: 1024px) {
    .hero h1 {
        font-size: 2.5rem;
    }
    
    .destaque .container {
        gap: 2rem;
    }
}

@media (max-width: 768px) {
    /* Menu Hamburguer */
    .hamburger {
        display: block;
    }
    
    .hamburger.active span:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }
    
    .hamburger.active span:nth-child(2) {
        opacity: 0;
    }
    
    .hamburger.active span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }
    
    .nav {
        position: fixed;
        top: 80px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 80px);
        background-color: var(--white);
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding: 2rem 0;
        transition: all 0.3s ease;
    }
    
    .nav.active {
        left: 0;
    }
    
    .nav-list {
        flex-direction: column;
        margin-right: 0;
        margin-bottom: 2rem;
        width: 100%;
        text-align: center;
    }
    
    .nav-list li {
        margin: 0.5rem 0;
    }
    
    /* Hero Section */
    .hero .container {
        flex-direction: column;
        text-align: center;
    }
    
    .hero-content {
        margin-bottom: 2rem;
    }
    
    .hero-buttons {
        justify-content: center;
    }
    
    /* Destaque Section */
    .destaque .container {
        flex-direction: column;
    }
    
    .destaque-image {
        margin-bottom: 2rem;
    }
    
    /* CTA Section */
    .cta .container {
        flex-direction: column;
        text-align: center;
    }
    
    .cta-content {
        margin-bottom: 2rem;
    }
    
    .cta-form {
        width: 100%;
    }
}

@media (max-width: 576px) {
    /* Ajustes gerais */
    .container {
        padding: 0 1rem;
    }
    
    h1 {
        font-size: 2rem;
    }
    
    h2 {
        font-size: 1.75rem;
    }
    
    /* Hero Section */
    .hero {
        padding: 6rem 0 2rem;
    }
    
    .hero h1 {
        font-size: 2rem;
    }
    
    .hero-buttons {
        flex-direction: column;
        gap: 1rem;
    }
    
    /* Funcionalidades Grid */
    .funcionalidades-grid {
        grid-template-columns: 1fr;
    }
    
    /* Planos Grid */
    .planos-grid {
        grid-template-columns: 1fr;
    }
    
    .plano-card.popular {
        transform: none;
    }
    
    /* Footer */
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    
    .footer-links {
        justify-content: center;
    }
}

@media (max-width: 1024px) {
    /* Página Funcionalidades */
    .modulo-list {
        grid-template-columns: 1fr;
    }
    
    /* Página Contato */
    .contato-grid {
        gap: 2rem;
    }
}

@media (max-width: 768px) {
    /* Página Funcionalidades */
    .modulo-header {
        flex-direction: column;
        text-align: center;
    }
    
    .modulo-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
    
    /* Página Planos */
    .planos-tabs {
        flex-direction: column;
    }
    
    .plano-tab {
        width: 100%;
        text-align: center;
    }
    
    .plano-tab::after {
        bottom: -1px;
    }
    
    /* Página Contato */
    .contato-grid {
        grid-template-columns: 1fr;
    }
    
    .info-card {
        flex-direction: column;
        text-align: center;
    }
    
    .info-icon {
        margin-right: 0;
        margin-bottom: 1rem;
    }
}

@media (max-width: 576px) {
    /* Páginas Internas */
    .page-funcionalidades,
    .page-planos,
    .page-contato {
        padding: 2rem 0;
    }
    
    /* Página Planos */
    .planos-comparativo {
        padding: 1.5rem;
    }
    
    /* Página Contato */
    .contato-form {
        padding: 1.5rem;
    }
    
    .contato-mapa {
        height: 300px;
    }
}