/* Estilos responsivos */
@media (max-width: 768px) {
    .custom-button {
        max-width: 90%;
    }
    
    .tech-icon {
        display: none;
    }
    
    .social-icon {
        width: 50px;
        height: 50px;
        font-size: 20px;
        margin: 0 8px;
    }
}

@media (max-width: 480px) {
    .description h1 {
        font-size: 1.8rem;
    }
    
    .section-title {
        font-size: 1.5rem;
    }
    
    .card {
        padding: 1rem !important;
    }
    
    .testimonial-nav {
        width: 30px;
        height: 30px;
    }
}

/* Estilos para impresión (PDF) */
@media print {
    body {
        width: 100%;
        margin: 0;
        padding: 0;
        background-color: white;
        color: black;
    }
    
    .container-main {
        padding: 20px;
    }
    
    .custom-button, .social-icon, .form-container {
        page-break-inside: avoid;
        break-inside: avoid;
    }
}