/* Tamanhos Universais para Títulos - Mobile */
@media (max-width: 768px) {
    h1 {
        font-size: 2rem !important; /* 32px */
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }
    
    h2 {
        font-size: 1.5rem !important; /* 24px */
        line-height: 1.3 !important;
        font-weight: 600 !important;
    }
    
    h3 {
        font-size: 1.25rem !important; /* 20px */
        line-height: 1.4 !important;
        font-weight: 600 !important;
    }
}

@media (max-width: 480px) {
    h1 {
        font-size: 1.75rem !important; /* 28px */
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }
    
    h2 {
        font-size: 1.375rem !important; /* 22px */
        line-height: 1.3 !important;
        font-weight: 600 !important;
    }
    
    h3 {
        font-size: 1.125rem !important; /* 18px */
        line-height: 1.4 !important;
        font-weight: 600 !important;
    }
}

/* Redimensionamento dos Cards "Our Services" - Mobile */
@media (max-width: 768px) {
    .service-card {
        padding: 28px 20px !important;
        min-height: 260px !important;
    }
    
    .service-icon {
        margin-bottom: 18px !important;
    }
    
    .icon-circle {
        width: 42px !important;
        height: 42px !important;
    }
    
    .icon-circle svg {
        width: 30px !important;
        height: 30px !important;
    }
    
    .service-title {
        font-size: 0.9rem !important;
        margin-bottom: 14px !important;
    }
    
    .service-description {
        font-size: 13px !important;
        margin-bottom: 16px !important;
        line-height: 1.3 !important;
    }
    
    .service-btn {
        font-size: 13px !important;
        padding: 6px 12px !important;
    }
    
    .service-features {
        margin-bottom: 16px !important;
    }
    
    .feature-item {
        font-size: 13px !important;
        margin-bottom: 8px !important;
    }
}

@media (max-width: 480px) {
    .service-card {
        padding: 28px 26px !important;
        min-height: 220px !important;
    }
    
    .service-icon {
        margin-bottom: 16px !important;
    }
    
    .icon-circle {
        width: 38px !important;
        height: 38px !important;
    }
    
    .icon-circle svg {
        width: 26px !important;
        height: 26px !important;
    }
    
    .service-title {
        font-size: 0.9rem !important;
        margin-bottom: 12px !important;
    }
    
    .service-description {
        font-size: 13px !important;
        margin-bottom: 14px !important;
        line-height: 1.2 !important;
    }
    
    .service-btn {
        font-size: 13px !important;
        padding: 5px 10px !important;
    }
    
    .service-features {
        margin-bottom: 14px !important;
    }
    
    .feature-item {
        font-size: 13px !important;
        margin-bottom: 6px !important;
    }
}

/* Redução da Margem entre Hero e Our Services - Mobile */
@media (max-width: 768px) {
    .hero-ui-forge {
        min-height: 80vh !important;
        padding-bottom: 20px !important;
    }
    
    .services-section {
        padding-top: 40px !important;
    }
    
    /* Z-index das Partículas do Hero - Abaixo dos KPIs */
    #heroParticlesCanvas {
        z-index: 0 !important;
        height: 60vh !important; /* Mesma configuração que desktop - partículas na parte superior */
    }
}

@media (max-width: 480px) {
    .hero-ui-forge {
        min-height: 75vh !important;
        padding-bottom: 15px !important;
    }
    
    .services-section {
        padding-top: 30px !important;
    }
    
    /* Z-index das Partículas do Hero - Abaixo dos KPIs */
    #heroParticlesCanvas {
        z-index: 0 !important;
        height: 60vh !important; /* Mesma configuração que desktop - partículas na parte superior */
    }
}

/* Redução da Margem entre "Trusted by Market Leaders" e Formulário - Mobile */
@media (max-width: 768px) {
    .media-section {
        padding-bottom: 40px !important;
    }
    
    .contact-form-section {
        padding-top: 40px !important;
    }
    
    .contact-form-header {
        margin-bottom: 40px !important;
    }
}

@media (max-width: 480px) {
    .media-section {
        padding-bottom: 30px !important;
    }
    
    .contact-form-section {
        padding-top: 30px !important;
    }
    
    .contact-form-header {
        margin-bottom: 30px !important;
    }
}

/* Redução do Tamanho das Boxes do Formulário - Mobile */
@media (max-width: 768px) {
    .form-options {
        gap: 32px !important;
        margin-bottom: 40px !important;
        margin-top: 40px !important;
        padding: 0 28px !important;
    }
    
    .form-option {
        padding: 24px 20px !important;
        min-height: auto !important;
    }
    
    .option-icon {
        width: 48px !important;
        height: 48px !important;
        margin-bottom: 16px !important;
    }
    
    .option-icon svg {
        width: 24px !important;
        height: 24px !important;
    }
    
    .option-title {
        font-size: 16px !important;
        margin-bottom: 8px !important;
    }
    
    .option-description {
        font-size: 13px !important;
        line-height: 1.4 !important;
    }
    
    .form-continue-btn {
        padding: 18px 36px !important;
        font-size: 1rem !important;
        min-width: auto !important;
        width: auto !important;
    }
    
    .btn-back {
        padding: 14px 28px !important;
        font-size: 0.9rem !important;
        width: auto !important;
        justify-content: center !important;
        margin-top: -16px !important;
    }
}

@media (max-width: 480px) {
    .form-options {
        gap: 28px !important;
        margin-bottom: 30px !important;
        margin-top: 30px !important;
        padding: 0 24px !important;
    }
    
    .form-option {
        padding: 20px 16px !important;
        min-height: auto !important;
    }
    
    .option-icon {
        width: 40px !important;
        height: 40px !important;
        margin-bottom: 12px !important;
    }
    
    .option-icon svg {
        width: 20px !important;
        height: 20px !important;
    }
    
    .option-title {
        font-size: 14px !important;
        margin-bottom: 6px !important;
    }
    
    .option-description {
        font-size: 12px !important;
        line-height: 1.3 !important;
    }
    
    .form-continue-btn {
        padding: 16px 32px !important;
        font-size: 0.95rem !important;
        min-width: auto !important;
        width: auto !important;
    }
    
    .btn-back {
        padding: 12px 24px !important;
        font-size: 0.85rem !important;
        width: auto !important;
        justify-content: center !important;
        margin-top: -12px !important;
    }
}

/* Redução Significativa dos Cards do Step 2 - Mobile */
@media (max-width: 768px) {
    .form-step-2 {
        margin-top: 20px !important;
    }
    
    .form-step-2 .services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
        margin-bottom: 16px !important;
        padding: 0 16px !important;
    }
    
    .form-step-2 .service-card {
        padding: 8px 6px !important;
        min-height: 80px !important;
    }
    
    .form-step-2 .icon-circle {
        width: 28px !important;
        height: 28px !important;
        border-radius: 6px !important;
        margin-bottom: 6px !important;
    }
    
    .form-step-2 .icon-circle svg {
        width: 12px !important;
        height: 12px !important;
    }
    
    .form-step-2 .service-title {
        font-size: 0.7rem !important;
        line-height: 1.1 !important;
    }
}

@media (max-width: 480px) {
    .form-step-2 {
        margin-top: 15px !important;
    }
    
    .form-step-2 .services-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
        margin-bottom: 12px !important;
        padding: 0 12px !important;
    }
    
    .form-step-2 .service-card {
        padding: 6px 4px !important;
        min-height: 60px !important;
    }
    
    .form-step-2 .icon-circle {
        width: 24px !important;
        height: 24px !important;
        border-radius: 4px !important;
        margin-bottom: 4px !important;
    }
    
    .form-step-2 .icon-circle svg {
        width: 10px !important;
        height: 10px !important;
    }
    
    .form-step-2 .service-title {
        font-size: 0.65rem !important;
        line-height: 1.0 !important;
    }
}

/* Adaptação dos Testemunhos para Mobile */
@media (max-width: 768px) {
    .testimonials-section {
        padding: 40px 0 !important;
    }
    
    .testimonials-container {
        padding: 0 12px !important;
    }
    
    .testimonials-header {
        margin-bottom: 30px !important;
    }
    
    .testimonials-title {
        font-size: var(--font-h2) !important;
        line-height: 1.2 !important;
    }
    
    .testimonials-subtitle {
        font-size: var(--font-p) !important;
        line-height: 1.4 !important;
    }
    
    .testimonials-row {
        height: 140px !important;
    }
    
    .testimonials-row .testimonial-card {
        flex: 0 0 280px !important;
        padding: 12px !important;
        min-height: 120px !important;
    }
    
    .testimonial-content {
        font-size: 0.75rem !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
    }
    
    .author-name {
        font-size: 0.8rem !important;
    }
    
    .author-title {
        font-size: 0.7rem !important;
    }
    
    .author-profile {
        width: 28px !important;
        height: 28px !important;
    }
}

@media (max-width: 480px) {
    .testimonials-section {
        padding: 30px 0 !important;
    }
    
    .testimonials-container {
        padding: 0 8px !important;
    }
    
    .testimonials-header {
        margin-bottom: 20px !important;
    }
    
    .testimonials-title {
        font-size: var(--font-h2) !important;
        line-height: 1.2 !important;
    }
    
    .testimonials-subtitle {
        font-size: var(--font-p) !important;
        line-height: 1.3 !important;
    }
    
    .testimonials-row {
        height: 120px !important;
    }
    
    .testimonials-row .testimonial-card {
        flex: 0 0 240px !important;
        padding: 8px !important;
        min-height: 100px !important;
    }
    
    .testimonial-content {
        font-size: 0.65rem !important;
        line-height: 1.2 !important;
        margin-bottom: 6px !important;
    }
    
    .author-name {
        font-size: 0.7rem !important;
    }
    
    .author-title {
        font-size: 0.6rem !important;
    }
    
    .author-profile {
        width: 24px !important;
        height: 24px !important;
    }
}

/* Redução do Tamanho das Partículas do Footer - Mobile */
@media (max-width: 768px) {
    .main-footer canvas {
        transform: scale(0.7) !important;
        transform-origin: center !important;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
        image-rendering: pixelated;
        filter: none !important;
    }
}

@media (max-width: 480px) {
    .main-footer canvas {
        transform: scale(0.5) !important;
        transform-origin: center !important;
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
        image-rendering: pixelated;
        filter: none !important;
    }
}

/* Correção das Partículas Desfocadas - Mobile */
@media (max-width: 768px) {
    #servicesParticlesCanvas {
        image-rendering: -webkit-optimize-contrast !important;
        image-rendering: crisp-edges !important;
        image-rendering: pixelated !important;
        transform: translateZ(0) !important;
        backface-visibility: hidden !important;
        -webkit-backface-visibility: hidden !important;
        will-change: transform !important;
    }
}

@media (max-width: 480px) {
    #servicesParticlesCanvas {
        image-rendering: -webkit-optimize-contrast !important;
        image-rendering: crisp-edges !important;
        image-rendering: pixelated !important;
        transform: translateZ(0) !important;
        backface-visibility: hidden !important;
        -webkit-backface-visibility: hidden !important;
        will-change: transform !important;
    }
}
