/* --- Problemas Section --- */
#problemas {
    background-color: var(--gray-color);
}
.problemas-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 25px;
}
.problema-card {
    background: var(--light-color);
    padding: 25px;
    text-align: center;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}
.problema-card .icon {
    font-size: 3rem;
    color: var(--primary-color);
    margin-bottom: 15px;
}
.problema-card h3 {
    font-size: 1.3rem;
    margin-bottom: 10px;
}

/* --- Brand Selector Section --- */
#selector-marca{background-color:var(--light-color)}.marca-selector-wrapper{max-width:500px;margin:0 auto}#marca-redirect-selector{width:100%;padding:15px;font-size:1.1rem;border-radius:5px;border:2px solid var(--primary-color);background-color:var(--light-color);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23005A9C' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;cursor:pointer;color:var(--dark-color)}#marca-redirect-selector:invalid{color:#6c757d}#marca-redirect-selector option{color:var(--dark-color)}#marca-redirect-selector:focus{outline:2px solid var(--secondary-color)}

/* --- Process Section --- */
#proceso{background-color:var(--light-color)}.proceso-grid{display:grid;grid-template-columns:1fr;gap:40px;text-align:center}.proceso-step .step-icon{font-size:3rem;color:var(--primary-color);margin-bottom:15px;display:inline-block;width:60px;height:60px;line-height:60px;border-radius:50%;background:var(--gray-color)}.proceso-step h3{font-size:1.5rem;margin-bottom:10px}

/* --- About Us Section --- */
#nosotros{background:var(--gray-color)}.nosotros-grid{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}.nosotros-image img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 15px rgba(0,0,0,.15)}.nosotros-content h3{font-size:1.8rem;color:var(--primary-color);margin-bottom:15px}.nosotros-content p{margin-bottom:15px}

/* --- Testimonials --- */
#testimonios{background-color:var(--light-color)}.testimonios-grid{display:grid;grid-template-columns:1fr;gap:25px}.testimonio-card{background:var(--gray-color);padding:25px;border-radius:8px;border-left:5px solid var(--primary-color);box-shadow:0 4px 8px rgba(0,0,0,.1)}.testimonio-card p{font-style:italic;margin-bottom:15px}.testimonio-card .author{font-weight:700;color:var(--primary-color)}

/* --- FAQ Section --- */
#faq{background-color:var(--gray-color)}.faq-container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:15px}.faq-item{border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;background:var(--light-color)}.faq-item summary{font-size:1.1rem;font-weight:700;padding:20px;cursor:pointer;list-style:none;position:relative;padding-right:40px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--primary-color);transition:transform .2s}.faq-item[open] summary{color:var(--primary-color)}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-item .faq-content{padding:0 20px 20px;line-height:1.7;text-align:center}.faq-quote-btn{display:none;margin-top:15px;margin-left:auto;margin-right:auto;background:linear-gradient(135deg,var(--success-color) 0%,#1ea850 100%);color:var(--light-color);padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;align-items:center;gap:10px;box-shadow:0 4px 12px rgba(37,211,102,.3);position:relative;overflow:hidden}.faq-quote-btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.faq-quote-btn:hover::before{left:100%}.faq-quote-btn svg{width:20px;height:20px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.faq-item[open] .faq-quote-btn{display:inline-flex;animation:fadeInUp .4s ease-out}.faq-quote-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,211,102,.4);background:linear-gradient(135deg,#1ea850 0%,var(--success-color) 100%)}.faq-quote-btn:active{transform:translateY(0);box-shadow:0 2px 8px rgba(37,211,102,.3)}@keyframes fadeInUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

/* --- Contact Info Section --- */
#contacto-info{background-color:var(--light-color)}.contact-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;text-align:center}.contact-item{background:var(--gray-color);padding:25px;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.05)}.contact-item .icon{font-size:2.5rem;color:var(--primary-color);margin-bottom:10px}.contact-item h3{margin-bottom:10px;font-size:1.2rem}.contact-item a,.contact-item p{font-size:1.1rem;color:var(--dark-color);text-decoration:none;font-weight:500}.contact-item a:hover{color:var(--primary-color);text-decoration:underline}

/* --- Footer Styles --- */
footer{background:var(--dark-color);color:#bdc3c7;padding:60px 0 20px;border-top:4px solid var(--primary-color)}.footer-grid{display:grid;grid-template-columns:1fr;gap:40px;margin-bottom:40px;text-align:center}.footer-col h4{color:var(--light-color);margin-bottom:15px;font-size:1.2rem;text-transform:uppercase;letter-spacing:1px;position:relative;padding-bottom:10px}.footer-col h4:after{content:'';position:absolute;left:50%;transform:translateX(-50%);bottom:0;width:40px;height:2px;background-color:var(--primary-color)}.footer-col p{font-size:.95rem;line-height:1.7}.footer-col ul{list-style:none}.footer-col ul li{margin-bottom:10px}.footer-col ul li a{color:#bdc3c7;text-decoration:none;transition:color .3s ease,padding-left .3s ease}.footer-col ul li a:hover{color:var(--secondary-color);padding-left:5px}.contact-list li{display:flex;flex-direction:column;gap:5px;align-items:center}.footer-bottom{text-align:center;padding-top:20px;border-top:1px solid #4a627a;font-size:.9rem}

/* --- Modal Styles --- */
.modal{display:none;position:fixed;z-index:1050;left:0;top:0;width:100%;height:100%;overflow-y:auto;background-color:rgba(0,0,0,.6);align-items:center;justify-content:center}.modal-content{position:relative;background-color:var(--light-color);margin:20px;padding:30px;border-radius:8px;width:90%;max-width:500px;box-shadow:0 5px 15px rgba(0,0,0,.3);animation:slide-in .3s ease-out;max-height:90vh;overflow-y:auto}@keyframes slide-in{from{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}.close-button{position:absolute;top:10px;right:15px;color:#aaa;font-size:28px;font-weight:700;border:none;background:0 0;cursor:pointer}.close-button:focus,.close-button:hover{color:var(--dark-color)}.contact-form{width:100%}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;font-weight:700}.form-group input,.form-group select{width:100%;padding:12px;border-radius:5px;border:1px solid #ddd;font-size:1rem}.form-group input:focus,.form-group select:focus{outline:2px solid var(--secondary-color)}.modal-actions{margin-top:10px}.submit-btn{width:100%;background-color:var(--success-color);color:var(--light-color);padding:15px;font-size:1.1rem;font-weight:700;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.submit-btn:hover{background-color:#20b054}.call-btn-modal{display:block;width:100%;text-align:center;margin-top:15px;padding:12px;background-color:var(--gray-color);color:var(--dark-color);font-weight:700;text-decoration:none;border-radius:5px;border:1px solid #ddd;transition:background-color .2s ease}.call-btn-modal:hover{background-color:#e0e0e0}.form-status{margin-top:15px;padding:10px;border-radius:5px;text-align:center;font-weight:700;display:none}.form-status.success{background-color:var(--primary-color);color:#fff}.form-status.error{background-color:#dc3545;color:#fff}.honeypot{position:absolute;left:-5000px;top:0;width:1px;height:1px;overflow:hidden}

/* Responsive Design: Tablet and Desktop */
@media (min-width: 768px) {
    .problemas-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .proceso-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .nosotros-grid {
        grid-template-columns: 1fr 1fr;
    }
    .testimonios-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .contact-info-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .footer-grid {
        text-align: left;
    }
    .footer-col h4:after{left:0;transform:translateX(0)}
    .contact-list li{flex-direction:row;justify-content:flex-start;gap:10px}
}
@media (min-width: 992px) {
    .problemas-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .contact-info-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    .footer-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 30px;
    }
}