/**
 * Estilos responsivos para todos os dispositivos
 * Espaco Holos Cursos e Terapias LTDA
 */

/* ===== Tablets e dispositivos médios (768px até 991px) ===== */
@media (max-width: 991px) {
    html {
        font-size: 15px;
    }
    
    /* Ajustes de Header e Menu */
    .mobile-toggle {
        display: flex;
    }
    
    .main-menu {
        position: fixed;
        top: 70px;
        left: -100%;
        width: 100%;
        height: calc(100vh - 70px);
        background-color: var(--cor-fundo-clara);
        transition: left var(--transicao-media);
        z-index: 100;
        padding: 1rem;
        overflow-y: auto;
    }
    
    .main-menu.active {
        left: 0;
    }
    
    .main-menu ul {
        flex-direction: column;
        width: 100%;
    }
    
    .main-menu li {
        margin: 0;
        padding: 0.5rem 0;
        border-bottom: 1px solid var(--cor-fundo-escura);
    }
    
    .main-menu a {
        display: block;
        padding: 0.75rem 0;
    }
    
    .header-contact {
        display: none;
    }
    
    /* Ajustes de Seções */
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-features {
        flex-direction: column;
    }
    
    .feature-item {
        margin-right: 0;
        margin-bottom: var(--espacamento-pequeno);
    }
    
    .home-info {
        margin-top: -2rem;
    }
    
    .sobre-content {
        flex-direction: column;
    }
    
    .sobre-image, .sobre-text {
        width: 100%;
    }
    
    .servicos-cta {
        flex-direction: column;
        text-align: center;
    }
    
    .servicos-cta .btn {
        margin-top: var(--espacamento-medio);
    }
    
    /* Ajustes de Footer */
    .footer-content {
        gap: var(--espacamento-grande);
    }
    
    .footer-info, .footer-links, .footer-services, .footer-social {
        flex: 1 1 calc(50% - var(--espacamento-grande));
    }
}

/* ===== Dispositivos móveis em landscape (576px até 767px) ===== */
@media (max-width: 767px) {
    html {
        font-size: 14px;
    }
    
    /* Ajustes de Seções */
    .section {
        padding: var(--espacamento-grande) 0;
    }
    
    .section-header {
        margin-bottom: var(--espacamento-grande);
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .hero-banner {
        padding: 4rem 0;
    }
    
    .hero-title {
        font-size: 2rem;
    }
    
    .hero-cta {
        flex-direction: column;
    }
    
    .hero-cta a {
        width: 100%;
        margin-bottom: var(--espacamento-pequeno);
    }
    
    .info-boxes {
        flex-direction: column;
    }
    
    .info-box {
        width: 100%;
    }
    
    .sobre-info {
        flex-direction: column;
    }
    
    .info-item {
        width: 100%;
    }
    
    .depoimento-autor {
        flex-direction: column;
        text-align: center;
    }
    
    .autor-foto {
        margin: 0 auto var(--espacamento-medio);
    }
    
    .contato-wrapper {
        flex-direction: column;
    }
    
    /* Ajustes de Footer */
    .footer-info, .footer-links, .footer-services, .footer-social {
        flex: 1 1 100%;
    }
}

/* ===== Dispositivos móveis em portrait (até 575px) ===== */
@media (max-width: 575px) {
    html {
        font-size: 14px;
    }
    
    /* Ajustes de Cabeçalho */
    .logo-text {
        font-size: 1.2rem;
    }
    
    /* Ajustes de Seções */
    .hero-title {
        font-size: 1.8rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    .section-title {
        font-size: 1.8rem;
    }
    
    .section-subtitle {
        font-size: 0.9rem;
    }
    
    .servico-icon {
        height: 80px;
    }
    
    .servico-icon i {
        font-size: 2.5rem;
    }
    
    .servico-content h3 {
        font-size: 1.3rem;
    }
    
    .servico-lista li {
        font-size: 0.9rem;
    }
    
    .form-row {
        flex-direction: column;
    }
    
    .form-row .form-group {
        width: 100%;
    }
    
    /* Ajustes de Cookie Notice */
    .cookie-notice .container {
        flex-direction: column;
    }
    
    .cookie-notice p {
        margin-right: 0;
        margin-bottom: var(--espacamento-pequeno);
    }
    
    .cookie-notice .btn {
        width: 100%;
    }
    
    /* Ajustes de Botões */
    .whatsapp-float {
        width: 50px;
        height: 50px;
        font-size: 1.5rem;
        bottom: 20px;
        right: 20px;
    }
}